Ua paʻi ʻia ka hoʻokō hope loa o ka algorithm , e hāʻawi ana i kahi hana cryptographic hash i hoʻolālā ʻia no nā noi e like me ka hōʻoia pono o ka faila, hōʻoia memo, a me ka hana ʻana i ka ʻikepili no nā pūlima kikohoʻe. ʻAʻole i hoʻolālā ʻia ʻo BLAKE3 no ka hashing password (no nā ʻōlelo huna, e hoʻohana i ka yescrypt, bcrypt, scrypt, a i ʻole Argon2), no ka mea, ua hoʻolālā ʻia e helu i nā hashes me ka hikiwawe me ka hōʻoiaʻiʻo ʻana i ka nele o nā hui ʻana a me ka pale a me ka ʻike ʻole i ka nui o ka ʻikepili i hashed. ʻO BLAKE3 ka hoʻokō kuhikuhi ʻElua laikini - kāhuna lehulehu (CC0) a me Apache 2.0.
ʻO ka hiʻohiʻona koʻikoʻi o ka hana hash hou, ʻo ia kāna hana helu hash kiʻekiʻe loa me ka mālama ʻana i ka hilinaʻi SHA-3-level. Ma ka maʻamau, ʻo ka nui o ka hash ma BLAKE3 he 32 bytes (256 bits), akā hiki ke hoʻonui ʻia i nā waiwai kūʻokoʻa. I ka ho'āʻo ʻana o ka hana ʻana i ka hash no kahi faila 16 KB, ʻoi aku ka maikaʻi o BLAKE3 i ka SHA3-256 i 15 manawa, SHA-256 i 12 manawa, SHA-512 i 8 manawa, SHA-1 i 6 manawa, a me BLAKE2b i 4 manawa. Mālama ʻia kēia alakaʻi koʻikoʻi ʻoiai ke hoʻoili ʻana i ka nui o ka ʻikepili; no ka laʻana, ua lilo ʻo BLAKE3 SHA-256 8 mau manawa ʻoi aku ka wikiwiki i ka helu ʻana i ka hash o 1GB o ka ʻikepili maʻamau.
Ua hoʻomohala ʻia ka algorithm e nā loea cryptography kaulana (, , , ) a hoʻomau i ka hoʻomohala ʻana i ka algorithm a hoʻohana i ka mīkini e hoʻopili i ka lāʻau o nā kaulahao poloka ʻAʻole like me BLAKE2 (BLAKE2b, BLAKE2s), hāʻawi ʻo BLAKE3 i hoʻokahi algorithm no nā paepae āpau, pili ʻole i ka hohonu a me ka nui o ka hash.
Loaʻa ka hoʻomaikaʻi ʻana i ka hana ma ka hōʻemi ʻana i ka helu o nā pōʻai mai ka 10 a i ka 7 a me nā poloka hashing i kahi kaʻawale i nā ʻāpana 1 KB. Wahi a nā mea hana, ua loaʻa iā lākou kahi mea hoʻoikaika , hiki ke hoʻohana ʻia nā pōʻai 7 ma kahi o 10 me ka mālama ʻana i ka pae like o ka hilinaʻi (no ka maopopo ʻana, e noʻonoʻo i ka laʻana o ka hui ʻana i nā hua i loko o kahi blender: ma hope o 7 kekona, ua hui pū ʻia ka hua, a ʻaʻole e pili ka 3 kekona hou i ke kūlike o ka hui ʻana). Eia nō naʻe, ke kānalua nei kekahi poʻe noiʻi, me ka manaʻoʻiʻo inā lawa nā pōʻai 7 i kēia manawa e pale aku i nā hōʻeha hash i ʻike ʻia, hiki i kahi 3 pōʻai hou ke hōʻoia pono inā loaʻa nā hōʻeha hou i ka wā e hiki mai ana.
E pili ana i ka mahele ʻāpana, ma BLAKE3 ua māhele ʻia ke kahawai i nā ʻāpana 1 KB, a ua hoʻokaʻawale ʻia kēlā me kēia ʻāpana. Ma muli o nā ʻāpana hashes, Hoʻokumu ʻia kahi hash nui hoʻokahi. ʻAe kēia māhele iā mākou e hoʻoponopono i ka pilikia o ka hoʻoponopono ʻana i ka ʻikepili i ka helu ʻana i ka hash-no ka laʻana, hiki iā mākou ke hoʻohana i nā ʻōlelo aʻoaʻo SIMD 4-threaded e helu like i nā hashes o 4 poloka. Hana nā hana hash kuʻuna SHA-* i ka ʻikepili ma ke ʻano.
Nā hiʻohiʻona o BLAKE3:
- Hana kiʻekiʻe;
- Palekana, me ke kū'ē , kahi SHA-2 hiki ke loaʻa;
- Hāʻawi i ka hoʻohālikelike ʻana o nā helu helu ma nā helu o nā kaula a me nā kahawai SIMD;
- Hiki i ka hoʻonui hou ʻana a me ka hana hōʻoia o nā kahawai;
- Hiki ke hoʻohana ʻia i nā ʻano PRF, MAC, KDF, XOF a ma ke ʻano he hash maʻamau;
- ʻO kahi algorithm hoʻokahi no nā hale hoʻolālā āpau, wikiwiki ma nā ʻōnaehana x86-64 a me nā kaʻina hana 32-bit ARM.
Source: opennet.ru
