Te tukunga o te whakatinanatanga tohutoro o te mahi hash cryptographic BLAKE3 1.0

Ko te whakatinanatanga tohutoro mo te mahi hash cryptographic BLAKE3 1.0 i tukuna, he mea rongonui mo tana mahi tatauranga hash tino teitei me te whakarite i te pono i te taumata SHA-3. I roto i te whakamatautau hanga hash mo te konae 16 KB, ko BLAKE3 me te matua moka-256 ka nui ake i te SHA3-256 ma te 17 nga wa, SHA-256 ma te 14 nga wa, SHA-512 ma te 9 nga wa, SHA-1 ma te 6 nga wa, me BLAKE2b - 5 wa. Ka noho tonu te waahi nui i te wa e tukatuka ana i te nui rawa o nga raraunga, hei tauira, ko BLAKE3 he 256 nga wa tere atu i te SHA-8 i te wa e tatau ana i te hash mo te 1GB o nga raraunga matapōkere. Kei te waatea te waehere whakatinanatanga tohutoro BLAKE3 i roto i nga putanga C me Rust i raro i te rohe whanui rua (CC0) me te raihana Apache 2.0.

Te tukunga o te whakatinanatanga tohutoro o te mahi hash cryptographic BLAKE3 1.0

Ko te mahi hash i hangaia mo nga tono penei i te tirotiro i te pono o te konae, te whakamotuhēhēnga karere, me te whakaputa raraunga mo nga hainatanga mamati cryptographic. Ko te BLAKE3 ehara i te mea mo te hashing kupuhipa, na te mea ko te whai kia tere tonu te tatau i nga hashes (mo nga kupuhipa, e taunaki ana kia whakamahia nga mahi hash puhoi yescrypt, bcrypt, scrypt, Argon2 ranei). Ko te mahi hash e whakaarohia ana kaore e aro ki te rahi o nga raraunga kua hashed, ka tiakina mai i nga whakaeke i te kowhiringa tukinga me te rapu whakaahua.

I whakawhanakehia te algorithm e nga tohunga rongonui rongonui (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) me te haere tonu i te whanaketanga o te BLAKE2 algorithm me te whakamahi i te tikanga Bao ki te whakawaehere i te rakau mekameka poraka. . Kaore i rite ki a BLAKE2 (BLAKE2b, BLAKE2s), ka tukuna e BLAKE3 tetahi algorithm mo nga papaaho katoa, kaore i herea ki te hohonutanga moka me te rahi o te hash.

Kua piki ake te mahinga ma te whakaiti i te maha o nga rauna mai i te 10 ki te 7 me nga poraka hashing motuhake ki nga waahanga 1 KB. E ai ki nga kaihanga, kua kitea e ratou he tohu pangarau pono ka taea te eke ma te 7 rauna hei utu mo te 10 i te wa e mau tonu ana te taumata o te pono (mo te maramatanga, ka taea e taatau te whakaatu he tauira me te whakaranu i nga hua i roto i te whakaranu - i muri i te 7 hēkona. kua oti te whakauru o nga hua, me etahi atu 3 hēkona e kore e pa ki te rite o te ranunga). Heoi ano, ka kii etahi o nga kairangahau i nga feaa, e whakapono ana ahakoa e 7 nga rauna e ranea ana i tenei wa ki te aukati i nga whakaeke katoa e mohiotia ana i runga i nga hashes, katahi ka whai hua etahi atu rauna 3 mena ka kitea he whakaeke hou a muri ake nei.

Mo te wehewehenga ki nga poraka, i BLAKE3 ka wehea te awa ki nga wahanga 1 KB, a, ko ia waahanga ka werohia takitahi. I runga i nga hashes o nga pihi, ka hangaia he hash nui i runga i te rakau rua Merkle. Ma tenei wehenga ka taea e matou te whakaoti i te raru o te whakarara i te tukatuka raraunga i te wa e tatau ana i nga hashes - hei tauira, ka taea e koe te whakamahi i nga tohutohu SIMD 4-miro ki te tatau i te wa kotahi nga haki o te 4 poraka. Ko nga mahi a SHA-* tuku iho ka tukatuka i nga raraunga.

Nga waahanga o BLAKE3:

  • Ko te mahi teitei, ko BLAKE3 he tere ake i te MD5, SHA-1, SHA-2, SHA-3 me BLAKE2.
  • Haumarutanga, tae atu ki te aukati i nga whakaeke whakaroa i nga karere e whakaraerae ana a SHA-2;
  • Kei te waatea i roto i te Rust, kua arotauhia mo nga tohutohu SSE2, SSE4.1, AVX2, AVX-512, me NEON.
  • Te whakarite whakarara o nga tatauranga i runga i te maha o nga miro me nga hongere SIMD.
  • Ka taea te whakahou ake me te tukatuka manatoko o nga awa;
  • Whakamahia i roto i te PRF, MAC, KDF, XOF aratau me te rite te hash auau;
  • He algorithm kotahi mo nga hoahoanga katoa, tere i runga i nga punaha x86-64 me nga tukatuka ARM 32-bit.

Ko nga rereketanga nui i waenga i te BLAKE3 me te BLAKE2:

  • Te whakamahi i te hanganga rakau-rua e taea ai te whakarara mutunga kore i roto i nga tatauranga aa.
  • Te whakaheke i te maha o nga rauna mai i te 10 ki te 7.
  • E toru nga momo mahi: hashing, hashing with a key (HMAC) and key derivation (KDF).
  • Karekau he taapiri atu i te wa e hashing ana me te ki na te whakamahi i te waahi i nohoia e te poraka tawhā matua.
  • Ko te tikanga whakahaere i roto i roto i te ahua o te mahi me te hua roa (XOF, Mahi Putanga Whakaroa), ka taea te whakarara me te tuunga (rapu).

Source: opennet.ru

Tāpiri i te kōrero