BLAKE3 ir droša, ātra un paralēlizējama kriptogrāfiskā jaukšanas funkcija

BLAKE3 es kriptogrāfiskā jaukšanas funkcija ka to raksturo daudz ātrāk nekā MD5, SHA-1, SHA-2, SHA-3 un BLAKE2, turklāt tas ir drošāks, atšķirībā no MD5 un SHA-1. Un droši pret garuma pagarināšanu, atšķirībā no SHA-2.

Tas ir ļoti paralēli salīdzināms ar vairākiem pavedieniem un SIMD joslām, jo ​​tas ir Merkeles koks iekšpusē un tam ir bez variantiem algoritms, kas ir ātrs x86-64 un arī mazākās arhitektūrās.

BLAKE3 paļaujas uz izveidotās jaucējfunkcijas BLAKE2 optimizētu gadījumu un sākotnējā Bao koka režīmā. Specifikācijas un dizaina pamatojums ir pieejams uz BLAKE3 papīra. Noklusējuma izvades lielums ir 256 biti.

Jaukšanas ģenerēšanas testā 16 KB failam BLAKE3 ar 256 bitu atslēgu pārspēj SHA3-256 par 17 reizēm, SHA-256 par 14 reizēm, SHA-512 9 reizes, SHA-1 6 reizes un BLAKE2b 5 reizes.

Šī ir būtiska plaisa, kas saglabājas pat tad, ja tiek apstrādāts liels datu apjoms, piemēram, aprēķinot 3 GB nejaušu datu jaukšanu, BLAKE8 izrādījās 256 reizes ātrāks nekā SHA-1.

Veiktspējas uzlabojums tika panākts, samazinot kārtu skaitu no 10 līdz 7 un sajaucot blokus atsevišķi 1 KB gabalos. Pēc veidotāju domām, viņi atrada pārliecinošu matemātisku pierādījumu, ka jūs varat iztikt ar 7 kārtām, nevis 10, vienlaikus saglabājot tādu pašu uzticamības līmeni.

Tajā pašā laikā daži pētnieki izsaka šaubas, uzskatot, ka pat tad, ja pašlaik 7 kārtas ir pietiekamas, lai novērstu visus zināmos uzbrukumus jaucējus, tad, ja nākotnē tiks atklāti jauni uzbrukumi, var būt noderīgas 3 papildu kārtas.

Par BLAKE3

Hash funkcija ir paredzēts tādām lietojumprogrammām kā failu integritātes pārbaude, ziņojumu autentifikācija un datu ģenerēšana kriptogrāfiskiem digitālajiem parakstiem. BLAKE3 nav paredzēts paroļu jaukšanai, jo tā mērķis ir pēc iespējas ātrāk aprēķināt jaucējkrānus (parolēm ieteicams izmantot lēnās jaukšanas un šifrēšanas, bcrypt, scrypt vai Argon2 funkcijas).

Attiecīgā jaukšanas funkcija ir nejutīga pret apstrādājamo datu lielumu un ir aizsargāta pret sadursmju meklēšanu un pirmsattēlu uzbrukumiem.

Algoritms bija ko izstrādājuši slaveni kriptogrāfi un turpina attīstīt BLAKE2 algoritmu un izmanto Bao mehānismu, lai kodētu blokķēdes koku. Atšķirībā no BLAKE2 (BLAKE2b, BLAKE2s), BLAKE3 piedāvā vienu algoritmu visām platformām kas nav piesaistīts bitu platumam un jaukšanas lielumam.

Bloka sadalīšana, BLAKE3 plūsma ir sadalīta 1 KB gabalos un katrs hash fragments neatkarīgi. Liels hash tiek veidots, pamatojoties uz gabalu jaukumiem, pamatojoties uz Merkles bināro koku.

Šī atdalīšana ļauj atrisināt datu apstrādes paralēles veidošanas problēmu aprēķinot hash; piemēram, varat izmantot 4 vadu SIMD instrukcijas, lai vienlaicīgi aprēķinātu 4 bloku jaucējus. Tradicionālās SHA- * jaucējfunkcijas apstrādā datus secīgi.

Citi no BLAKE3 funkcijas ir šādas:

  • Lietošana PRF, MAC, KDF, XOF režīmos un kā parasta jaukšana;
  • Ātrs algoritms visām arhitektūrām gan x86-64 sistēmās, gan 32 bitu ARM procesoros.

Attiecībā uz galvenajām atšķirībām starp BLAKE3 un BLAKE2:

  • Izmantojot bināro koku struktūru, lai hash aprēķinā panāktu neierobežotu paralēlismu.
  • Kārtu skaita samazināšana no 10 līdz 7.
  • Trīs darbības režīmi: Hash, Keyed Hash (HMAC) un Key Generation (KDF).
  • Jaucot atslēgu, nav jāmaksā papildu izmaksas, jo tiek izmantota platība, kuru iepriekš aizņēma atslēgas parametru bloks.
  • Iebūvēts mehānisms darbam paplašināmas izvades funkcijas (XOF) veidā, kas to ļauj
  • paralēlēšana un pozicionēšana (meklēšana).

Beidzot ja jūs interesē uzzināt vairāk par to, varat pārbaudīt informāciju Šajā saitē.


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.