Megjelent a BLAKE3 1.0 kriptográfiai hash-funkció referencia-implementációja

Megjelent a BLAKE3 1.0 referenciakivitele, amely kiemelkedő, rendkívül magas hash-elési teljesítménnyel büszkélkedhet, miközben a SHA-3 szintjének megbízhatóságát biztosítja. Egy 16 KB méretű fájl hash-generálási tesztjében a BLAKE3 256 bites kulccsal 17-szer gyorsabb, mint a SHA3-256, 14-szer a SHA-256-hoz, 9-szer a SHA-512-hez, 6-szor a SHA-1-hez, és 5-ször a BLAKE2b-hez képest. Jelentős előny megmarad a nagyon nagy adathalmazok feldolgozásakor is, például a BLAKE3 8-szor gyorsabb a SHA-256-nál 1GB véletlen adat hash-elésekor. A BLAKE3 referenciakivitele C és Rust nyelveken érhető el, dupla licenc alatt — közszolgálati (CC0) és Apache 2.0.

Megjelent a BLAKE3 1.0 kriptográfiai hash-funkció referencia-implementációja

A hash-függvény olyan alkalmazásokra készült, mint a fájlok integritásának ellenőrzése, üzenetek hitelesítése és adatok generálása kriptográfiai digitális aláírások számára. A BLAKE3 nem alkalmas jelszavak hash-elésére, mivel a gyors hash-generálásra összpontosít (jelszavakhoz ajánlott lassú hash-függvényeket használni, mint a yescrypt, bcrypt, scrypt vagy Argon2). A vizsgált hash-függvény nem érzékeny a hash-elt adatok méretére és védett a kollíziós támadások és az előkép megtalálásával szemben.

Az algoritmust neves kriptográfusok (Jack O’Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O’Hearn) fejlesztették ki, és a BLAKE2 algoritmus továbbfejlesztéseként szolgál, a láncolt blokkok fájlfeldolgozásához a Bao mechanizmust alkalmazva. A BLAKE2-tól (BLAKE2b, BLAKE2s) eltérően a BLAKE3 egy egységes algoritmust javasol minden platform számára, amely nem kötődik a bitmélységhez és a hash méretéhez.

A teljesítményjavulást a kerekek számának 10-ről 7-re csökkentésével és a blokkok 1 KB-os darabokra történő külön hash-elésével érték el. A készítők állítása szerint meggyőző matematikai bizonyítékot találtak arra, hogy 7 kerekével is meg lehet oldani a helyzetet, miközben megmarad a megbízhatóság ugyanaz a szintje (a gyümölcsök mixálóban való összekeverésének példáját tekintve — 7 másodperc elteltével a gyümölcsök már teljesen összekeveredtek, és a további 3 másodperc nem befolyásolja a keverék konzisztenciáját). Ezzel szemben egyes kutatók kételkednek, mivel úgy vélik, hogy bár jelenleg a 7 kör elegendő az ismert hash-támadásokkal szemben, a további 3 kör hasznos lehet, ha új támadások derülnek ki a jövőben.

A blokkokra bontás tekintetében a BLAKE3 folyamata 1 KB-os darabokra van felosztva, és minden darabot függetlenül hash-elnek. A darabok hash-eiből egy bináris Merkle-fán alapuló nagy hash-t képeznek. Ez a felosztás lehetővé teszi az adatok párhuzamos feldolgozásának problémájának megoldását a hash kiszámítása során — például 4-szálas SIMD utasítások használatával négy blokk hash-ét lehet egyidejűleg kiszámítani. A hagyományos SHA-* hash-funkciók sorban dolgozzák fel az adatokat.

A BLAKE3 jellemzői:

  • Magas teljesítmény, a BLAKE3 jelentősen gyorsabb, mint az MD5, SHA-1, SHA-2, SHA-3 és BLAKE2.
  • Biztonság, beleértve az üzenet hosszabbításának ellenállását, amelynek a SHA-2 ki van téve;
  • Elérhetők Rust nyelvű változatok, amelyek optimalizáltak az SSE2, SSE4.1, AVX2, AVX-512 és NEON utasítások használatára.
  • A számítások párhuzamosítása bármilyen számú szál és SIMD-csatorna számára.
  • Lehetőség inkrementális frissítésre és érvényesített adatfolyamok feldolgozására;
  • Használat PRF, MAC, KDF, XOF és hagyományos hash módban;
  • Egységes algoritmus minden architektúrához, gyorsan működik x86-64 rendszereken és 32 bites ARM processzorokon is.

A BLAKE3 főbb különbségei a BLAKE2-höz képest:

  • Binaris fastruktúra használata, amely lehetővé teszi a hash számításának korlátlan párhuzamosságát.
  • A körök számának csökkentése 10-ről 7-re.
  • Három működési mód: hash-elés, kulccsal történő hash-elés (HMAC) és kulcs létrehozása (KDF).
  • A kiegészítő költségek hiánya a kulcsos hashelnél, a kulcsparaméter-ablak által korábban elfoglalt terület kihasználásával.
  • A beépített mechanizmus funkció formájában, kiterjeszthető eredménnyel (XOF, Extendable Output Function), amely lehetővé teszi a párhuzamos feldolgozást és a pozicionálást (seek).

Forrás: opennet.ru

Megbízható hosting vásárlása weboldalak számára, DDoS védelemmel, VPS VDS szerverek. 🔥 Megbízható webtárhely vásárlása DDoS védelemmel, VPS VDS szerverek | ProHoster