BLAKE3 es kriptográfiai hash függvény hogy sokkal gyorsabb, mint az MD5, SHA-1, SHA-2, SHA-3 és BLAKE2, ráadásul biztonságosabb, ellentétben az MD5 és az SHA-1. Az SHA-2-vel ellentétben biztonságban van a hosszabbítás ellen.
Nagyon párhuzamosítható bármilyen számú szálon és SIMD sávon, mert ez egy Merkle fa belülről, és változatmentes algoritmussal rendelkezik, amely gyors az x86-64 és a kisebb architektúrák esetén is.
BLAKE3 a létrehozott BLAKE2 hash függvény optimalizált példányára támaszkodik és az eredeti Bao fa módban. A specifikációk és a tervezés indoklása elérhető a BLAKE3 papíron. Az alapértelmezett kimeneti méret 256 bit.
A 16 KB-os fájl, a BLAKE3 256 bites kulccsal végzett kivonatgenerálási tesztjében az SHA3-256-ot 17-szer, az SHA-256-ot 14-szer múlja felül, SHA-512 9-szer, SHA-1 6-szor és BLAKE2b 5-ször.
Ez egy jelentős hiányosság, amely még akkor is fennáll, ha nagy mennyiségű adatot dolgozunk fel, például a BLAKE3 8-szor gyorsabbnak bizonyult, mint az SHA-256, amikor 1 GB véletlenszerű adat kivonatát számítja ki.
A teljesítmény javulását úgy érték el, hogy a körök számát 10 -ről 7 -re csökkentették, és a blokkokat külön -külön 1 KB -os darabokra hasholták. Az alkotók szerint lenyűgöző matematikai bizonyítékot találtak arra, hogy 7 helyett 10 körrel lehet megbirkózni, miközben a megbízhatóság megmarad.
Ugyanakkor egyes kutatók kételyeiket fejezik ki, és úgy vélik, hogy még ha jelenleg 7 forduló is elegendő az összes ismert hash elleni támadás elleni küzdelemhez, akkor további 3 forduló hasznos lehet, ha a jövőben új támadásokat észlelnek.
A BLAKE3 -ról
A hash függvény olyan alkalmazásokhoz készült, mint a fájl integritásának ellenőrzése, üzenet hitelesítés és adatgenerálás a kriptográfiai digitális aláírásokhoz. A BLAKE3 -at nem jelszavak kivonására tervezték, mivel célja, hogy a lehető leggyorsabban kiszámítsa a kivonatokat (jelszavak esetén ajánlott a lassú kivonatolás és az escrypt, a bcrypt, a scrypt vagy az Argon2 funkciók használata).
A szóban forgó kivonatolási függvény nem érzékeny a feldolgozott adatok méretére, és védve van az ütközéskereséssel és a preimage támadásokkal szemben.
Az algoritmus az volt neves kriptográfusok fejlesztették ki, és folytatják a BLAKE2 algoritmus fejlesztését és a Bao mechanizmust használja a blokklánc fa kódolására. A BLAKE2 -vel (BLAKE2b, BLAKE2s) ellentétben a BLAKE3 egyetlen algoritmust kínál minden platformra amely nincs bitszélességhez és kivonatmérethez kötve.
Mivel a blokk felosztása, a BLAKE3 -ban az adatfolyam 1 KB -os darabokra van felosztva és minden hash töredéket függetlenül. A Merkle bináris fán alapuló darabok hash-ei alapján nagy hash jön létre.
Ez az elkülönítés lehetővé teszi az adatfeldolgozás párhuzamosításának problémájának megoldását hash számításakor; például használhatja a 4 vezetékes SIMD utasításokat egyidejűleg a 4 blokkú kivonatok kiszámításához. A hagyományos SHA- * hash függvények sorban feldolgozzák az adatokat.
Egyéb A BLAKE3 jellemzői:
- Alkalmazás PRF, MAC, KDF, XOF módokban és normál kivonatként;
- Egy algoritmus minden architektúrához, gyors az x86-64 rendszereken és a 32 bites ARM processzorokon.
Ami a BLAKE3 és BLAKE2 közötti főbb különbségeket illeti:
- Bináris faszerkezet használata korlátlan párhuzamosság eléréséhez a hash számításban.
- A körök számának csökkentése 10 -ről 7 -re.
- Három üzemmód: Hash, Keyed Hash (HMAC) és Key Generation (KDF).
- A kulcs kivonatolásakor nincs többletköltség a kulcs paraméterblokk által korábban elfoglalt terület használata miatt.
- Beépített mechanizmus az Extensible Output Function (XOF) formájában, amely lehetővé teszi
- párhuzamosítás és pozicionálás (keresés).
Végül ha érdekel, hogy többet tudjon meg róla, ellenőrizheti a részleteket A következő linken.