Swyddogaeth hash cryptograffig BLAKE3 ar gael, sydd 10 gwaith yn gyflymach na SHA-2

Mae gweithrediad terfynol yr algorithm wedi'i gyhoeddi BLAKE3, sy'n cynnig swyddogaeth hash cryptograffig a gynlluniwyd ar gyfer cymwysiadau megis gwirio cywirdeb ffeil, dilysu negeseuon, a chynhyrchu data ar gyfer llofnodion digidol. Nid yw BLAKE3 wedi'i fwriadu ar gyfer stwnsio cyfrineiriau (ar gyfer cyfrineiriau mae angen i chi ddefnyddio yescrypt, bcrypt, scrypt neu Argon2), gan ei fod wedi'i anelu at gyfrifo hashes cyn gynted â phosibl gyda gwarant o ddim gwrthdrawiadau, amddiffyniad rhag dod o hyd i'r prototeip ac nid yw'n sensitif i faint y data stwnsh. Cyfeirnod gweithredu BLAKE3 cyhoeddwyd Trwyddedig ddeuol o dan Gyhoeddus Parth (CC0) ac Apache 2.0.

Gwahaniaeth allweddol y swyddogaeth hash newydd yw perfformiad uchel iawn cyfrifiadau hash tra'n cynnal dibynadwyedd ar lefel SHA-3. Yn ddiofyn, maint yr hash canlyniadol yn BLAKE3 yw 32 bytes (256 did), ond gellir ei ehangu i werthoedd mympwyol. Mewn prawf cenhedlaeth hash ar gyfer ffeil 16 KB, mae BLAKE3 yn perfformio'n well na SHA3-256 15 gwaith, SHA-256 12 gwaith, SHA-512 8 gwaith, SHA-1 6 gwaith, a BLAKE2b 4 gwaith. Erys bwlch sylweddol wrth brosesu symiau mawr iawn o ddata, er enghraifft, trodd BLAKE3 i fod yn gyflymach SHA-256 erbyn 8 gwaith wrth gyfrifo hash ar gyfer 1GB o ddata ar hap.

Swyddogaeth hash cryptograffig BLAKE3 ar gael, sydd 10 gwaith yn gyflymach na SHA-2

Datblygwyd yr algorithm gan arbenigwyr cryptograffeg enwog (Jac O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) ac yn parhau i ddatblygu'r algorithm BLAKE2 ac yn defnyddio mecanwaith i amgodio'r goeden cadwyn bloc Bao. 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 yn dod o hyd i argyhoeddiadol prawf, y gallwch chi fynd heibio gyda 7 rownd yn lle 10 tra'n cynnal yr un lefel o ddibynadwyedd (er eglurder, gallwch chi roi enghraifft gyda chymysgu ffrwythau mewn cymysgydd - ar ôl 7 eiliad mae'r ffrwythau eisoes wedi'u cymysgu'n llwyr a bydd 3 eiliad ychwanegol yn ddim yn effeithio ar gysondeb y cymysgedd). Fodd bynnag, mae rhai ymchwilwyr yn mynegi amheuon, gan gredu, hyd yn oed os yw rowndiau 7 ar hyn o bryd yn ddigon 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 o'r darnau ar y gwaelod coeden merkle deuaidd un hash mawr yn cael ei ffurfio. Mae'r rhaniad hwn yn ein galluogi i ddatrys y broblem o gyfochrog â phrosesu data wrth gyfrifo hash - 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;
  • Diogelwch, gan gynnwys ymwrthedd i ymosodiad elongation neges, y mae SHA-2 yn agored iddo;
  • 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.

Ffynhonnell: opennet.ru

Ychwanegu sylw