Ukuphunyezwa kwereferensi yomsebenzi we-cryptographic hash i-BLAKE3 1.0 yakhululwa, ephawulekayo ngenxa yokusebenza kwayo okuphezulu kakhulu kwe-hash ngelixa iqinisekisa ukuthembeka kwinqanaba le-SHA-3. Kuvavanyo lokuvelisa i-hash yefayile eyi-16 KB, iBLAKE3 eneqhosha le-256-bit igqwesa i-SHA3-256 ngo-17 amaxesha, SHA-256 ngamaxesha ali-14, SHA-512 ngo-9, SHA-1 ngo-6, kunye ne-BLAKE2b - 5 amaxesha. I-gap ebalulekileyo isala xa kusetyenzwa inani elikhulu kakhulu ledatha, umzekelo, i-BLAKE3 yajika ibe ngamaxesha angama-256 ngokukhawuleza kune-SHA-8 xa ibala i-hash ye-1GB yedatha engahleliwe. Ikhowudi yokusetyenziswa kwereferensi ye-BLAKE3 ifumaneka kwiinguqulelo ze-C kunye neRust phantsi kwe-domain yoluntu emibini (CC0) kunye nelayisensi ye-Apache 2.0.
Umsebenzi we-hash uyilelwe usetyenziso olunjengokukhangela ingqibelelo yefayile, uqinisekiso lomyalezo, kunye nokuvelisa idatha yotyikityo lwedijithali. I-BLAKE3 ayijoliswanga kwi-hashing passwords, njengoko ijolise ekubaleni i-hashes ngokukhawuleza (kwi-passwords, kuyacetyiswa ukuba kusetyenziswe imisebenzi ye-hash ecothayo yescrypt, bcrypt, scrypt okanye Argon2). Umsebenzi we-hash ophantsi koqwalaselo awunaluvelwano kubungakanani bedatha yehashi kwaye ukhuselwe ekuhlaselweni kokhetho lokungqubana kunye nokufunyanwa kwangaphambili.
I-algorithm yaphuhliswa ziingcali ezaziwayo ze-cryptography (uJack O'Connor, uJean-Philippe Aumasson, uSamuel Neves, uZooko Wilcox-O'Hearn) kwaye uqhubeleka nophuhliso lwe-algorithm ye-BLAKE2 kwaye isebenzisa indlela ye-Bao ukufaka ikhowudi kwi-block chain tree. . Ngokungafaniyo ne-BLAKE2 (BLAKE2b, BLAKE2s), i-BLAKE3 inikezela nge-algorithm eyodwa kuzo zonke iiplatifomu, ezingabotshwanga kubunzulu obuncinci kunye nobukhulu be-hash.
Ukusebenza okwandisiweyo kuye kwaphunyezwa ngokunciphisa inani lemijikelo ukusuka kwi-10 ukuya kwi-7 kunye neebhloko ze-hashing ngokwahlukeneyo kwi-1 KB. Ngokutsho kwabadali, baye bafumanisa ubungqina bemathematika obuqinisekisayo ukuba kunokwenzeka ukuba uphumelele nge-7 ngeenxa zonke endaweni ye-10 ngelixa ugcina inqanaba elifanayo lokuthembeka (ukucacisa, sinokunika umzekelo ngokuxuba iziqhamo kwi-mixer - emva kwemizuzwana eyi-7. isiqhamo sele sixutywe ngokupheleleyo, kwaye imizuzwana emi-3 eyongezelelweyo ayiyi kuchaphazela ukuhambelana komxube). Nangona kunjalo, abanye abaphandi bavakalisa amathandabuzo, bekholelwa ukuba nangona ii-7 ezijikelezayo okwangoku zanele ukulwa nazo zonke izihlaselo ezaziwayo kwi-hashes, ke imijikelo eyongezelelweyo ye-3 ingaba luncedo ukuba uhlaselo olutsha luchongiwe kwixesha elizayo.
Ngokuphathelele ukwahlula kwiibhloko, kwi-BLAKE3 umlambo wahlulwe ube ngamaqhekeza e-1 KB kwaye iqhekeza ngalinye likhawuleza ngokuzimeleyo. Ngokusekwe kwiihashi zamaqhekeza, ihashi enye enkulu yenziwa ngokusekwe kumthi webinary Merkle. Olu lwahlulo luvumela ukuba sisombulule ingxaki yokulinganisa idatha xa ubala i-hashes - umzekelo, ungasebenzisa imiyalelo ye-SIMD enemisonto emi-4 ukubala ngaxeshanye i-hashes yeebhloko ezi-4. Imisebenzi ye-SHA-* ye-hash yesiqhelo yenza idatha ngokulandelelanayo.
Iimpawu ze-BLAKE3:
- Ukusebenza okuphezulu, i-BLAKE3 ikhawuleza kakhulu kune-MD5, SHA-1, SHA-2, SHA-3 kunye ne-BLAKE2.
- Ukhuseleko, kubandakanya ukuchasana nohlaselo lolwandiso lomyalezo apho i-SHA-2 ichaphazeleka khona;
- Ifumaneka kwi-Rust, ilungiselelwe i-SSE2, i-SSE4.1, i-AVX2, i-AVX-512, kunye ne-NEON imiyalelo.
- Ukuqinisekisa ukuhambelana kwezibalo kulo naliphi na inani leentambo kunye neziteshi ze-SIMD.
- Ukubakho kohlaziyo olongezelelekileyo kunye nokuqinisekiswa kokusetyenzwa kwemijelo;
- Sebenzisa kwiindlela zePRF, MAC, KDF, XOF kwaye njengehashi eqhelekileyo;
- I-algorithm enye yazo zonke izakhiwo, ngokukhawuleza kuzo zombini iinkqubo ze-x86-64 kunye ne-32-bit ARM processors.
Owona mahluko mkhulu phakathi kwe-BLAKE3 kunye ne-BLAKE2:
- Ukusetyenziswa kwesakhiwo somthi wokubini esivumela ukuhambelana okungenamkhawulo kwizibalo ze-hash.
- Ukunciphisa inani lemijikelo ukusuka kwi-10 ukuya kwisi-7.
- Iindlela ezintathu zokusebenza: i-hashing, i-hashing ngesitshixo (HMAC) kunye nokuveliswa kwesitshixo (KDF).
- Akukho ntloko eyongezelelweyo xa i-hashing ngesitshixo ngenxa yokusetyenziswa kwendawo eyayihlala ngaphambili ibhloko yeeparameters eziphambili.
- Indlela yokusebenza eyakhelwe-ngaphakathi ngendlela yomsebenzi kunye nesiphumo esandisiweyo (i-XOF, i-Extendable Output Function), evumela ukuhambelana nokubeka (ukufuna).
umthombo: opennet.ru