RIPEMD-160
L’algoritmo di hashing RIPEMD-160 è uno dei risultati del progetto RIPE (RACE Integrity Primitives Evaluation), promosso da un gruppo di ricercatori europei come alternativa agli algoritmi di digest proposti dalla RSA (MD4, MD5) o dal NIST.
Oggi esistono varianti di tale algoritmo in grado di produrre output di 256 o 320 bit, ideate per ridurre la probabilità di incappare in collisioni casuali.
RIPEMD-160 opera su blocchi in ingresso di 512 bit. Le fasi preliminari seguite per MD5 valgono anche per RIPEMD-160.
L’algoritmo prevede l’inizializzazione di cinque registri a 32 bit.
I valori iniziali, in notazione esadecimale, dei registri utilizzati dall’algoritmo sono gli stessi utilizzati per l’algoritmo SHA-1.
La modalità per processare i singoli blocchi è formalmente identica a quella adottata dall’algoritmo MD5.
Entrando nel dettaglio del funzionamento, l’algoritmo RIPEMD-160 prevede 80 operazioni in cascata, utilizzando 16 diverse funzioni non lineari.
Dopo che tutti i blocchi in ingresso sono stati processati, il contenuto finale dei registri rappresenta il risultato dell’operazione di digest secondo l’algoritmo RIPEMD-160.