Na voljo je kriptografska hash funkcija BLAKE3, ki je 10-krat hitrejša od SHA-2

Končna implementacija algoritma je bila objavljena. BLAKE3, ki ponuja kriptografsko zgoščevalno funkcijo, zasnovano za aplikacije, kot so preverjanje integritete datotek, preverjanje pristnosti sporočil in ustvarjanje podatkov za digitalne podpise. BLAKE3 ni zasnovan za zgoščevanje gesel (za gesla uporabite yescrypt, bcrypt, scrypt ali Argon2), saj je zasnovan tako, da čim hitreje izračuna zgoščene vrednosti, hkrati pa zagotavlja odsotnost trkov in zaščito pred iskanje prototipa in neobčutljivost na velikost podatkov, ki se zgoščajo. Referenčna implementacija je BLAKE3 objavljeno Dvojna licenca - javna domena (CC0) in Apache 2.0.

Ključna značilnost nove zgoščevalne funkcije je zelo visoka zmogljivost izračuna zgoščene vrednosti, hkrati pa ohranja zanesljivost na ravni SHA-3. Privzeto je nastala velikost zgoščene vrednosti v BLAKE3 32 bajtov (256 bitov), ​​vendar jo je mogoče razširiti na poljubne vrednosti. V testu generiranja zgoščene vrednosti za datoteko velikosti 16 KB je BLAKE3 15-krat prekašal SHA3-256, 12-krat SHA-256, 8-krat SHA-512, 6-krat SHA-1 in 4-krat BLAKE2b. Ta pomembna prednost se ohranja tudi pri obdelavi zelo velikih količin podatkov; na primer, BLAKE3 se je izkazal za ... hitrosti SHA-256 8-krat hitrejši pri izračunu zgoščene vrednosti 1 GB naključnih podatkov.

 Na voljo je kriptografska hash funkcija BLAKE3, ki je 10-krat hitrejša od SHA-2

Algoritem so razvili priznani strokovnjaki za kriptografijo (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) in še naprej razvija algoritem BLAKE2 in uporablja mehanizem za kodiranje drevesa blokovnih verig SackZa razliko od BLAKE2 (BLAKE2b, BLAKE2s) BLAKE3 ponuja en sam algoritem za vse platforme, ki ni povezan z bitno globino in velikostjo zgoščene vrednosti.

Izboljšave zmogljivosti so bile dosežene z zmanjšanjem števila krogov z 10 na 7 in ločenim zgoščevanjem blokov v kosih po 1 KB. Po besedah ​​ustvarjalcev so našli prepričljivo dokaz, da bi se namesto 10 krogov lahko uporabilo 7, hkrati pa ohranilo enako raven zanesljivosti (za jasnost si oglejmo primer mešanja sadja v mešalniku: po 7 sekundah je sadje že popolnoma zmešano in dodatne 3 sekunde ne bodo vplivale na konsistenco mešanice). Vendar pa nekateri raziskovalci izražajo dvom, saj menijo, da bi se lahko dodatni 3 krogi, če bi se v prihodnosti odkrili novi napadi, izkazali za koristne, če bi se v prihodnosti odkrili novi napadi.

Kar zadeva delitev blokov, je v BLAKE3 tok razdeljen na 1 KB bloke in vsak blok je neodvisno zgoščen. Na podlagi zgoščevalnih vrednosti blokov, binarno Merklejevo drevo Oblikuje se ena sama velika zgoščena vrednost. Ta delitev nam omogoča, da rešimo problem vzporedne obdelave podatkov pri izračunu zgoščene vrednosti – na primer, lahko uporabimo 4-nitne SIMD ukaze za hkratni izračun zgoščenih vrednosti 4 blokov. Tradicionalne SHA-* zgoščevalne funkcije obdelujejo podatke zaporedno.

Lastnosti BLAKE3:

  • Visoka zmogljivost;
  • Varnost, vključno z odpornostjo na napad na razširitev sporočila, na katerega je SHA-2 dovzeten;
  • Zagotavljanje paralelizacije izračunov v poljubnem številu niti in SIMD kanalov;
  • Možnost postopnega posodabljanja in verificirane obdelave tokov;
  • Uporablja se lahko v načinih PRF, MAC, KDF, XOF in kot navadna zgoščena vrednost;
  • En sam algoritem za vse arhitekture, hiter v sistemih x86-64 in 32-bitnih procesorjih ARM.

Vir: opennet.ru

Dodaj komentar