RIPEMD

Difficoltà: avanzato

Argomento: tecnologia


DEFINIZIONE

RIPEMD (RACE Integrity Primitives Evaluation Message Digest) è un algoritmo di hash utilizzata da Bitcoin.

In particolare viene utilizzata la versione RIPEMD-160 che genera in output un hash di 160 bit.

Il RIPEMD originale, così come RIPEMD-128, non è considerato sicuro perché il risultato a 128 bit è troppo piccolo e anche (per il RIPEMD originale) a causa di punti deboli di progettazione.
Le versioni a 256 e 320 bit di RIPEMD forniscono rispettivamente lo stesso livello di sicurezza di RIPEMD-128 e RIPEMD-160; sono progettati per applicazioni in cui il livello di sicurezza è sufficiente ma è necessario un risultato hash più lungo.

In Bitcoin, RIPEMD-160 viene utilizzato per due scopi principali:

  • Per creare indirizzi Bitcoin. L'indirizzo Bitcoin è una stringa alfanumerica di 34 caratteri che identifica un portafoglio Bitcoin. Viene generato hashando il pubkey del portafoglio con RIPEMD-160.
  • Per verificare le firme digitali Bitcoin. Le firme digitali Bitcoin vengono utilizzate per verificare le transazioni. Vengono generate hashando il messaggio da firmare con SHA-256 e quindi hashando l'output con RIPEMD-160.

La scelta di utilizzare due funzioni di hash è dovuta al fatto che SHA-256 è una funzione di hash più robusta, ma produce un output di 256 bit, che è troppo lungo per essere utilizzato come indirizzo Bitcoin. RIPEMD-160, invece, produce un output più breve, ma comunque sufficientemente unico per identificare un portafoglio Bitcoin.


aggiornato il 2023-12-05