Go Down

Topic: [da testare] Libreria per autenticazione sicura (Read 3869 times) previous topic - next topic

pablos71

#15
Feb 01, 2014, 07:59 pm Last Edit: Feb 02, 2014, 12:24 am by pablos Reason: 1
ciao ... io usavo la richiesta su http 401 Digest Access Authentication che applica già l'MD5 la stringa a 32 char contiene l'username la passwor criptata in base ai paramentri impostati nella richiesta

i parametri sono
Digest realm="*********************",
qop="*********************",
nonce="************************************",
opaque="***********************************",
come evidenziato anche qui http://en.wikipedia.org/wiki/Digest_access_authentication

nessuna libreria è necessaria in questo caso, senza incrementare il lavoro del micro, la sicurezza è sicuramente superiore del Base64, decriptare qulla sringa MD5 non penso sia così immediato però ... che ne dite ?



ciao
L'esperienza è il tipo di insegnante più difficile ....
Prima ti fa l'esame e poi ti spiega la lezione.

lestofante

decriptare un MD5 è praticamente impossibile, dato che essendo un numero di byte fisso, perdi informazione. Quello che però è facile da fare è generare una collisione, ovvero valore che genera lo stesso MD5 di un altro. Quindi se usi il DAA solo con user+pass dovrebbe essere molto facile. Infatti poi è stato uaggiungo il "nouce", che non è altro che quello che io chiamo "code", ed anche un cnounce. Però vedo che il protocollo nonprevedere di registrare A CHI viene assegnato il "nounce", ne prevede una sua scadenza ma nemmeno una sua memorizzazione lato server, quindi un client malevolo in teoria potrebbe riutilizzare un "nouce" noto, se l'implementazione lato server è carente

Sicuramente l'uso di una libreria per il calcolo md5, e di una che faccia mantenga i nounce assegnati e ne verifichi la correttezza della risposta è necessaria, certo puoi farne a meno come puoi fare a meno di questa.


@leo72 + PaoloP: anche usando un timer esterno ABBASSI la probabilità ma non la escludi, a questo punto potrei semplicemente usare un unsigned int/long che contiene il numero di Token, ogni token generato aumenta di 1 il valore. Su un arduino oltre due miliardi di valori unici più la millis() danno un alta improbabilità di riuso e a costo quasi zero
Guida per principianti http://playground.arduino.cc/Italiano/newbie
Unoffical Telegram group https://t.me/genuino

Go Up