Kuburitswa kwereferensi yekuitwa kweiyo cryptographic hash basa BLAKE3 1.0

Kuitwa kwereferenzi kweiyo cryptographic hash basa BLAKE3 1.0 yakaburitswa, inozivikanwa nepamusoro-soro yekuverenga hashi kuita uku ichisimbisa kuvimbika padanho reSHA-3. Muyedzo yerudzi rwehashi yefaira re16 KB, BLAKE3 ine 256-bit kiyi inokunda SHA3-256 ka17, SHA-256 neka14, SHA-512 ka9, SHA-1 ka6, uye BLAKE2b - 5 nguva. Mukaha wakakosha unoramba uchigadzirisa huwandu hwakakura kwazvo hwe data, semuenzaniso, BLAKE3 yakave nekukurumidza kasere pane SHA-256 pakuverenga hashi ye8GB yedata isina kujairika. Iyo BLAKE1 referensi yekumisikidza kodhi inowanikwa muC uye Rust shanduro pasi pehuviri veruzhinji domain (CC3) uye Apache 0 rezinesi.

Kuburitswa kwereferensi yekuitwa kweiyo cryptographic hash basa BLAKE3 1.0

Iyo hashi basa rakagadzirirwa zvikumbiro senge faira kutendeseka kutarisa, meseji yechokwadi, uye kugadzira data yecryptographic digital siginecha. BLAKE3 haina kuitirwa hashing mapassword, sezvo ine chinangwa chekuverenga hashes nekukurumidza sezvinobvira (pamapassword, inokurudzirwa kushandisa inononoka hashi mabasa yescrypt, bcrypt, scrypt kana Argon2). Iyo hashi basa iri pasi pekutariswa harina hanya nehukuru hwe data rehashi uye inodzivirirwa kubva pakurwiswa pakusarudza kwekudhumhana uye preimage kutsvaga.

Iyo algorithm yakagadziridzwa neanozivikanwa cryptography nyanzvi (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) uye inoenderera mberi nekuvandudzwa kweBLAKE2 algorithm uye inoshandisa iyo Bao nzira kuvharidzira muti we block chain. . Kusiyana neBLAKE2 (BLAKE2b, BLAKE2s), BLAKE3 inopa imwechete algorithm yemapuratifomu ese, asina kusungirirwa pakadzika zvishoma uye saizi yehashi.

Kuwedzera kuita kwakawanikwa nekudzikisa huwandu hwekutenderera kubva pa10 kusvika 7 uye hashing blocks zvakasiyana mu1 KB zvidimbu. Sekureva kwevagadziri, vakawana humbowo hwemasvomhu hunogutsa hwekuti zvinokwanisika kupfuudza ne7 kutenderera pachinzvimbo chegumi uku uchichengeta mwero wakafanana wekuvimbika (kujekesa, tinogona kupa muenzaniso nekusanganisa michero mumusanganisi - mushure memasekondi manomwe. muchero wacho watove wakasanganiswa zvachose, uye imwezve 10 seconds haizokanganisa kusanganiswa kwemusanganiswa). Zvisinei, vamwe vatsvakurudzi vanotaura kusava nechokwadi, vachifunga kuti kunyange kana 7 kutenderera ikozvino yakakwana kupikisa kurwiswa kwese kunozivikanwa pamusoro pehashi, ipapo mamwe mapeji matatu anogona kubatsira kana kurwiswa kutsva kuchionekwa mune ramangwana.

Kana iri yekukamura kuita mabhuroko, muBLAKE3 rukova rwakakamurwa kuita 1 KB zvidimbu uye chidimbu chimwe nechimwe chinomhanyiswa chakazvimirira. Zvichienderana neheshi yezvimedu, imwe hombe hombe inoumbwa yakavakirwa pabhinari Merkle muti. Ichi chikamu chinotibvumira kugadzirisa dambudziko rekufananidza kugadzirisa kwedata paunenge uchiverenga hashes - semuenzaniso, unogona kushandisa 4-shinda yeSIMD mirairo kuti uverenge ma hashes e4 zvidhinha. Yechinyakare SHA-* hash mabasa anogadzirisa data zvakateerana.

Zvinoumba BLAKE3:

  • Kuita kwepamusoro, BLAKE3 inokurumidza kupfuura MD5, SHA-1, SHA-2, SHA-3 uye BLAKE2.
  • Chengetedzo, kusanganisira kuramba meseji elongation kurwiswa uko SHA-2 inotapukirwa;
  • Inowanikwa muRust, yakagadziridzwa SSE2, SSE4.1, AVX2, AVX-512, uye NEON mirayiridzo.
  • Kuve nechokwadi chekufananidza kwekuverenga pane chero nhamba yeshinda uye SIMD chiteshi.
  • Kugona kwekuwedzera kwekuvandudza uye yakasimbiswa kugadzirisa hova;
  • Shandisa muPRF, MAC, KDF, XOF modes uye senguva dzose hashi;
  • Imwe algorithm yezvese zvivakwa, inokurumidza pane ese x86-64 masisitimu uye 32-bit ARM processors.

Misiyano mikuru pakati peBLAKE3 neBLAKE2:

  • Kushandiswa kwebhinari muti chimiro chinobvumira kusingagumi parallelism mune hashi kuverenga.
  • Kuderedza huwandu hwemarounds kubva pa10 kusvika ku7.
  • Matatu maitiro ekushanda: hashing, hashing ine kiyi (HMAC) uye kiyi chizvarwa (KDF).
  • Hapana chekuwedzera chepamusoro kana hashing nekiyi nekuda kwekushandiswa kwenzvimbo yaimbogarwa neakakosha paramita block.
  • Yakavakirwa-mukati mechanisheni yekushandisa muchimiro chebasa rine mhedzisiro yakawedzerwa (XOF, Extendable Output Function), ichibvumira kufanana uye kumira (tsvaga).

Source: opennet.ru

Voeg