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

Končna izvedba algoritma je bila objavljena BLAKE3, ki ponuja kriptografsko zgoščevalno funkcijo, zasnovano za aplikacije, kot so preverjanje celovitosti datotek, preverjanje pristnosti sporočil in ustvarjanje podatkov za digitalne podpise. BLAKE3 ni namenjen zgoščevanju gesel (za gesla morate uporabiti yescrypt, bcrypt, scrypt ali Argon2), saj je namenjen čim hitrejšemu izračunu zgoščenih vrednosti z jamstvom brez kolizij, zaščito pred iskanje prototipa in ni občutljiv na velikost zgoščenih podatkov. Referenčna izvedba BLAKE3 objavljeno Dvojna licenca pod javno domeno (CC0) in Apache 2.0.

Ključna razlika nove zgoščevalne funkcije je zelo visoka zmogljivost zgoščevalnih izračunov ob ohranjanju zanesljivosti 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ščevanja za 16 KB datoteko BLAKE3 prekaša SHA3-256 za 15-krat, SHA-256 za 12-krat, SHA-512 za 8-krat, SHA-1 za 6-krat in BLAKE2b za 4-krat. Pri obdelavi zelo velikih količin podatkov ostaja pomembna vrzel, kot se je na primer izkazal BLAKE3 hitrosti SHA-256 za 8-krat pri izračunu zgoščevanja za 1 GB naključnih podatkov.

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

Algoritem so razvili znani strokovnjaki za kriptografijo (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) in nadaljuje z razvojem algoritma BLAKE2 in uporablja mehanizem za kodiranje drevesa verige blokov Sack. Za razliko od BLAKE2 (BLAKE2b, BLAKE2s), BLAKE3 ponuja en sam algoritem za vse platforme, ki ni vezan na bitno globino in velikost zgoščene vrednosti.

Povečana zmogljivost je bila dosežena z zmanjšanjem števila krogov z 10 na 7 in ločenim zgoščevanjem blokov v kosih po 1 KB. Po besedah ​​ustvarjalcev se jim je zdel prepričljiv dokaz, ki ga lahko opravite s 7 krogi namesto z 10 ob ohranjanju enake stopnje zanesljivosti (za jasnost lahko navedete primer z mešanjem sadja v mešalniku - po 7 sekundah je sadje že popolnoma zmešano, dodatne 3 sekunde pa bodo ne vpliva na konsistenco mešanice). Vendar pa nekateri raziskovalci izražajo dvome, saj verjamejo, da četudi je trenutno 7 krogov dovolj, da prenesejo vse znane napade na hashe, so lahko dodatni 3 krogi koristni, če bodo v prihodnosti identificirani novi napadi.

Kar zadeva delitev na bloke, je v BLAKE3 tok razdeljen na 1 KB dele in vsak kos je zgoščen neodvisno. Na podlagi zgoščenih kosov na podlagi binarno merklovo drevo nastane en velik hash. Ta delitev nam omogoča, da rešimo problem vzporedne obdelave podatkov pri izračunu zgoščene vrednosti - na primer, lahko uporabite 4-nitna navodila SIMD za hkratni izračun zgoščenih vrednosti 4 blokov. Tradicionalne zgoščevalne funkcije SHA-* obdelujejo podatke zaporedno.

Lastnosti BLAKE3:

  • Visokozmogljivo;
  • Varnost, vključno z odpornostjo na napad podaljšanja sporočila, za katere je dovzeten SHA-2;
  • Zagotavljanje paralelizacije izračunov na poljubnem številu niti in kanalov SIMD;
  • Možnost postopnega posodabljanja in verificirane obdelave tokov;
  • Uporabite v načinih PRF, MAC, KDF, XOF in kot navadno zgoščevanje;
  • En sam algoritem za vse arhitekture, hiter v sistemih x86-64 in 32-bitnih procesorjih ARM.

Vir: opennet.ru

Dodaj komentar