È disponibile la funzione hash crittografica BLAKE3, che è 10 volte più veloce di SHA-2

È stata pubblicata la realizzazione finale dell'algoritmo BLAKE3, che offre una funzione di hashing crittografica predisposta per applicazioni come la verifica dell'integrità dei file, l'autenticazione dei messaggi e la generazione di dati per firme digitali. BLAKE3 non è progettata per l'hashing delle password (per le password è meglio utilizzare yescrypt, bcrypt, scrypt o Argon2), in quanto è focalizzata sulla massima velocità di calcolo degli hash garantendo l'assenza di collisioni, protezione da preimage e non è sensibile alla dimensione dei dati da hashare. L'implementazione di riferimento di BLAKE3 pubblicata è sotto doppia licenza — pubblico dominio (CC0) e Apache 2.0.

Una caratteristica distintiva della nuova funzione di hash è l'eccezionale performance di calcolo dell'hash mantenendo l'affidabilità a livello di SHA-3. Per impostazione predefinita, la dimensione dell'hash risultante in BLAKE3 è di 32 byte (256 bit), ma può essere estesa a valori arbitrari. Nel test di generazione dell'hash per un file di 16 KB, BLAKE3 supera SHA3-256 di 15 volte, SHA-256 di 12 volte, SHA-512 di 8 volte, SHA-1 di 6 volte, e BLAKE2b di 4 volte. Un notevole vantaggio si mantiene anche nell'elaborazione di grandi volumi di dati; ad esempio, BLAKE3 si è dimostrata più veloce 8 volte più veloce di SHA-256 nel calcolo dell'hash per 1 GB di dati casuali.

È disponibile la funzione hash crittografica BLAKE3, che è 10 volte più veloce di SHA-2

L'algoritmo è stato sviluppato da noti esperti di crittografia (Jack O’Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O’Hearn) e continua lo sviluppo dell'algoritmo BLAKE2 e applica un meccanismo per la codifica degli alberi delle catene di blocchi chiamato Bao. A differenza di BLAKE2 (BLAKE2b, BLAKE2s), in BLAKE3 viene proposto un algoritmo unico per tutte le piattaforme, non legato alla larghezza di banda e alla dimensione dell'hash.

L'incremento delle prestazioni è stato ottenuto riducendo il numero di round da 10 a 7 e hashando i blocchi in pezzi da 1 KB. Secondo i creatori, hanno trovato una convincente dimostrazione, che 7 round siano sufficienti per mantenere lo stesso livello di affidabilità (per rendere l'idea, si può immaginare di mescolare la frutta in un frullatore: dopo 7 secondi la frutta è già completamente mescolata e ulteriori 3 secondi non influiranno sulla consistenza del mix). Tuttavia, alcuni ricercatori esprimono scetticismo, ritenendo che, anche se attualmente 7 round sono sufficienti per resistere a conoscitivi attacchi agli hash, 3 round aggiuntivi potrebbero risultare utili qualora si rivelassero nuovi attacchi in futuro.

Per quanto concerne la divisione in blocchi, BLAKE3 suddivide il flusso in pezzi da 1 KB e ogni pezzo viene hashato in modo indipendente. Sulla base degli hash dei pezzi viene creato un grande hash utilizzando un albero binario di Merkle . Questa divisione permette di risolvere il problema della parallelizzazione dell'elaborazione dei dati durante il calcolo dell'hash — ad esempio, è possibile utilizzare istruzioni SIMD a 4 thread per calcolare simultaneamente gli hash di 4 blocchi. Le tradizionali funzioni di hashing SHA-* elaborano i dati in modo sequenziale.

Caratteristiche di BLAKE3:

  • Elevate prestazioni;
  • Sicurezza, inclusa la resistenza all' attacco di estensione del messaggio, a cui è soggetto SHA-2;
  • Possibilità di parallelizzare i calcoli su un numero qualsiasi di thread e canali SIMD;
  • Possibilità di aggiornamenti incrementali e di elaborazione dei flussi verificata;
  • Utilizzo in modalità PRF, MAC, KDF, XOF e come normale hash;
  • Unico algoritmo per tutte le architetture, veloce sia su sistemi x86-64 che su processori ARM a 32 bit.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster