BLAKE3 kryptografesch Hash Funktioun verfügbar, wat 10 Mol méi séier ass wéi SHA-2

Déi lescht Ëmsetzung vum Algorithmus gouf publizéiert BLECH 3, déi eng kryptographesch Hashfunktioun ubitt fir Uwendungen wéi Dateiintegritéitskontroll, Message Authentifikatioun a Generéiere vun Daten fir digital Ënnerschrëften. BLAKE3 ass net geduecht fir Passwierder ze hashen (fir Passwierder musst Dir yescrypt, bcrypt, scrypt oder Argon2 benotzen), well et zielt fir Hashes sou séier wéi méiglech ze berechnen mat enger Garantie vu keng Kollisiounen, Schutz géint de Prototyp ze fannen an net sensibel op d'Gréisst vun den hashed Daten. Referenz Ëmsetzung vun BLAKE3 publizéiert Dual lizenzéiert ënner Public Domain (CC0) an Apache 2.0.

De Schlësselunterscheed vun der neier Hash-Funktioun ass déi ganz héich Leeschtung vun Hash-Berechnungen wärend Zouverlässegkeet um SHA-3 Niveau behalen. Par défaut ass déi resultéierend Hashgréisst am BLAKE3 32 Bytes (256 Bits), awer et kann op arbiträr Wäerter erweidert ginn. An engem Hash Generatioun Test fir eng 16 KB Fichier, BLAKE3 besser SHA3-256 vun 15 Mol, SHA-256 vun 12 Mol, SHA-512 vun 8 Mol, SHA-1 vun 6 Mol, an BLAKE2b vun 4 Mol. Eng bedeitend Lück bleift bei der Veraarbechtung vu ganz grousse Quantitéiten un Daten, zum Beispill, BLAKE3 huet sech erausgestallt méi séier SHA-256 ëm 8 Mol beim Berechnung vun Hash fir 1GB zoufälleg Daten.

BLAKE3 kryptografesch Hash Funktioun verfügbar, wat 10 Mol méi séier ass wéi SHA-2

Den Algorithmus gouf vu berühmten Kryptografieexperten entwéckelt (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) a weider den Algorithmus z'entwéckelen BLECH 2 a benotzt e Mechanismus fir de Block Kette Bam ze codéieren Bao. Am Géigesaz zu BLAKE2 (BLAKE2b, BLAKE2s), bitt BLAKE3 een eenzegen Algorithmus fir all Plattformen, net un d'Bitdéift an d'Hashgréisst gebonnen.

Erhéije Leeschtung gouf erreecht andeems d'Zuel vun de Ronnen vun 10 op 7 reduzéiert gouf a getrennt Blocken an 1 KB Stécker hashing. No de Créateuren hunn se eng iwwerzeegend fonnt Beweiser, datt Dir mat 7 Ronnen amplaz vun 10 duerchgoe kënnt, wärend Dir de selwechte Niveau vun Zouverlässegkeet behalen (fir Kloerheet kënnt Dir e Beispill ginn mat Uebstvermëschung an engem Mixer - no 7 Sekonnen sinn d'Fruucht scho komplett gemëscht an eng zousätzlech 3 Sekonnen net d'Konsistenz vun der Mëschung beaflossen). Wéi och ëmmer, e puer Fuerscher ausdrécken Zweifel, gleewen datt och wann aktuell 7 Ronnen genuch sinn fir all bekannt Attacken op Hashes ze widderstoen, da kënnen zousätzlech 3 Ronnen nëtzlech sinn wann nei Attacken an Zukunft identifizéiert ginn.

Wat d'Divisioun a Blocken ugeet, am BLAKE3 ass de Stroum an 1 KB Stécker opgedeelt an all Stéck gëtt onofhängeg gehat. Baséiert op hashes vun de Stécker op der Basis binär merkle Bam ee groussen Hash gëtt geformt. Dës Divisioun erlaabt eis de Problem vun der Paralleliséierungsdatenveraarbechtung beim Berechnung vun engem Hash ze léisen - zum Beispill kënnt Dir 4-threaded SIMD-Instruktioune benotzen fir gläichzäiteg d'Hashes vu 4 Blocken ze berechnen. Traditionell SHA-* Hash Funktiounen veraarbecht Daten sequenziell.

Spezifikatioune vun BLAKE3

  • Staark Leeschtung;
  • Sécherheet, dorënner Resistenz zu Message elongation Attack, op déi SHA-2 ufälleg ass;
  • Assuréieren Paralleliséierung vun Berechnungen op all Zuel vun thread an SIMD Channels;
  • Méiglechkeet fir inkrementell Aktualiséierung a verifizéiert Veraarbechtung vu Streamen;
  • Benotzt an PRF, MAC, KDF, XOF Modi an als normale Hash;
  • Een eenzegen Algorithmus fir all Architekturen, séier op béid x86-64 Systemer an 32-Bit ARM Prozessoren.

Source: opennet.ru

Setzt e Commentaire