Rhyddhau gweithrediad cyfeirnod y swyddogaeth hash cryptograffig BLAKE3 1.0

Rhyddhawyd cyfeiriad gweithredu'r swyddogaeth hash cryptograffig BLAKE3 1.0, sy'n nodedig am ei berfformiad cyfrifo hash uchel iawn tra'n sicrhau dibynadwyedd ar lefel SHA-3. Yn y prawf cenhedlaeth hash ar gyfer ffeil 16 KB, mae BLAKE3 gydag allwedd 256-did yn perfformio'n well na SHA3-256 17 gwaith, SHA-256 14 gwaith, SHA-512 9 gwaith, SHA-1 6 gwaith, a BLAKE2b - 5 gwaith. Erys bwlch sylweddol wrth brosesu symiau mawr iawn o ddata, er enghraifft, roedd BLAKE3 256 gwaith yn gyflymach na SHA-8 wrth gyfrifo hash ar gyfer 1GB o ddata ar hap. Mae cod gweithredu cyfeirnod BLAKE3 ar gael mewn fersiynau C a Rust o dan drwydded parth cyhoeddus deuol (CC0) ac Apache 2.0.

Rhyddhau gweithrediad cyfeirnod y swyddogaeth hash cryptograffig BLAKE3 1.0

Mae'r swyddogaeth hash wedi'i chynllunio ar gyfer cymwysiadau fel gwirio cywirdeb ffeil, dilysu negeseuon, a chynhyrchu data ar gyfer llofnodion digidol cryptograffig. Nid yw BLAKE3 wedi'i fwriadu ar gyfer stwnsio cyfrineiriau, gan ei fod yn anelu at gyfrifo hashes cyn gynted Γ’ phosibl (ar gyfer cyfrineiriau, argymhellir defnyddio'r swyddogaethau hash araf yescrypt, bcrypt, scrypt neu Argon2). Mae'r swyddogaeth hash dan sylw yn ansensitif i faint y data stwnsh ac yn cael ei ddiogelu rhag ymosodiadau ar ddewis gwrthdrawiadau a chanfod rhagddelwedd.

Datblygwyd yr algorithm gan arbenigwyr cryptograffeg adnabyddus (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) ac mae'n parhau Γ’ datblygiad yr algorithm BLAKE2 ac yn defnyddio mecanwaith Bao i amgodio'r goeden cadwyn bloc. . Yn wahanol i BLAKE2 (BLAKE2b, BLAKE2s), mae BLAKE3 yn cynnig un algorithm ar gyfer pob platfform, heb ei glymu i ddyfnder did a maint stwnsh.

Cyflawnwyd perfformiad uwch trwy leihau nifer y rowndiau o 10 i 7 a stwnsio blociau ar wahΓ’n mewn darnau 1 KB. Yn Γ΄l y crewyr, maent wedi dod o hyd i brawf mathemategol argyhoeddiadol ei bod yn bosibl symud ymlaen gyda 7 rownd yn lle 10 tra'n cynnal yr un lefel o ddibynadwyedd (er eglurder, gallwn roi enghraifft gyda chymysgu ffrwythau mewn cymysgydd - ar Γ΄l 7 eiliad mae'r ffrwythau eisoes wedi'u cymysgu'n llwyr, ac ni fydd 3 eiliad ychwanegol yn effeithio ar gysondeb cymysgedd). Fodd bynnag, mae rhai ymchwilwyr yn mynegi amheuon, gan gredu, hyd yn oed os yw 7 rownd yn ddigonol ar hyn o bryd i wrthsefyll pob ymosodiad hysbys ar hashes, yna gallai rowndiau 3 ychwanegol fod yn ddefnyddiol os nodir ymosodiadau newydd yn y dyfodol.

O ran rhannu'n flociau, yn BLAKE3 mae'r ffrwd wedi'i rhannu'n ddarnau 1 KB ac mae pob darn yn cael ei stwnsio'n annibynnol. Yn seiliedig ar hashes y darnau, mae un hash mawr yn cael ei ffurfio yn seiliedig ar y goeden Merkle ddeuaidd. Mae'r rhaniad hwn yn ein galluogi i ddatrys y broblem o gyfochrog Γ’ phrosesu data wrth gyfrifo hashes - er enghraifft, gallwch ddefnyddio cyfarwyddiadau SIMD 4-threaded i gyfrifo hashes o 4 bloc ar yr un pryd. Mae swyddogaethau stwnsh SHA-* traddodiadol yn prosesu data yn ddilyniannol.

Nodweddion BLAKE3:

  • Perfformiad uchel, mae BLAKE3 yn sylweddol gyflymach na MD5, SHA-1, SHA-2, SHA-3 a BLAKE2.
  • Diogelwch, gan gynnwys ymwrthedd i ymosodiadau ymestyn neges y mae SHA-2 yn agored iddynt;
  • Ar gael yn Rust, wedi'i optimeiddio ar gyfer cyfarwyddiadau SSE2, SSE4.1, AVX2, AVX-512, a NEON.
  • Sicrhau paraleleiddio cyfrifiadau ar unrhyw nifer o edafedd a sianeli SIMD.
  • Posibilrwydd diweddaru cynyddrannol a phrosesu ffrydiau wedi'u dilysu;
  • Defnyddiwch mewn moddau PRF, MAC, KDF, XOF ac fel stwnsh rheolaidd;
  • Algorithm sengl ar gyfer pob pensaernΓ―aeth, yn gyflym ar systemau x86-64 a phroseswyr ARM 32-did.

Y prif wahaniaethau rhwng BLAKE3 a BLAKE2:

  • Defnyddio strwythur deuaidd coeden sy'n caniatΓ‘u ar gyfer paraleliaeth ddiderfyn mewn cyfrifiadau hash.
  • Lleihau nifer y rowndiau o 10 i 7.
  • Tri dull gweithredu: stwnsio, stwnsio ag allwedd (HMAC) a chynhyrchu allwedd (KDF).
  • Dim gorbenion ychwanegol wrth stwnsio ag allwedd oherwydd y defnydd o'r ardal a ddefnyddiwyd yn flaenorol gan y bloc paramedrau allweddol.
  • Mecanwaith gweithredu adeiledig ar ffurf swyddogaeth gyda chanlyniad estynedig (XOF, Swyddogaeth Allbwn Estynadwy), sy'n caniatΓ‘u paraleleiddio a lleoli (ceisio).

Ffynhonnell: opennet.ru

Ychwanegu sylw