algoritmo di crittografia unidirezionale non brevettato [chiuso]
-
09-06-2019 - |
Domanda
Sto cercando un semplice algoritmo di crittografia unidirezionale non brevettato, preferibilmente in c.Vorrei usarlo per convalidare le password.
Soluzione
SHA-1 e il resto della sua famiglia sono stati brevettati dal governo statunitense che “ha rilasciato il brevetto sotto licenza royalty free”.Molte implementazioni di dominio pubblico possono essere trovati tramite Google. :-)
Altri suggerimenti
Il nome corretto per "algoritmo di crittografia unidirezionale" è "algoritmo di hashing" (intendi un modo per "codificare" una password in modo che non possa mai essere recuperata, giusto?)
Non utilizzare md5 nelle applicazioni moderne, gli attacchi riusciti contro di esso si sono verificati dal 2004 (vedi http://www.doxpara.com/md5_someday.pdf per riferimenti).Utilizza la famiglia SHA.
basta usare la funzione crypt(3).
ecco il sfondo
SHA-1 sembra un buon suggerimento o, se ritieni che SHA-1 sia prossimo al cracking, uno della famiglia SHA-2.
Potresti ritenere che MD5 non sia abbastanza "sicuro".
MD5 mi è andato bene finora.
MD5 e SHA512 (o un'altra variante SHA-2) hanno entrambi delle vulnerabilità teoriche identificate.Non penso che SHA sia stato ancora dimostrato come rotto, ma la possibilità esiste.Whirlpool è un algoritmo di hash royalty free che (finora) non ha mostrato alcun punto debole.Questa pagina ha un collegamento all'implementazione di riferimento C.
Perché MD5 o SHA1 non funzionano per te?
/Allan