ααΆαα’αα»ααααα―αααΆαααααααα»αααΆαααααΈαααααΈα BLAKE3 1.0 ααααΌαααΆαα ααααααΆα ααααα½αα±ααααααααααΆαααααααΆααααΆαα’αα»ααααααΆαααααΆααααααααΆαααααααααααααΆ αααααααααααΆααΆααΌαααΆαααΏααΆαααα ααααα·α SHA-3 α αα αααα»αααΆαααΆααααααααααΎα hash αααααΆααα―αααΆα 16 KB BLAKE3 ααΆαα½α 256-bit key ααααΎαααΆα SHA3-256 ααα 17 αα SHA-256 ααα 14 αα SHA-512 αα»αααΉα 9 αα SHA-1 αα»αααΉα 6 αα αα·α BLAKE2b - 5 ααα αααααΆαααααααΆαααα ααααΆααα αααααααΎαααΆααα·αααααααααα»αααα·ααΆαα αααΎα α§ααΆα ααα BLAKE3 αααααα ααΆααΏαααΆα SHA-256 ααααα 8 αα αα αααααααΆ hash αααααΆαααα·ααααααα ααααα 1GB α ααΌαααΆαα’αα»ααααααα ααααΈααα BLAKE3 ααΆααα αααα»ααααα C αα·α Rust αααααα’αΆααααΆαααααααΆααΆαααααΈα (CC0) αα·α Apache 2.0 α
αα»αααΆα hash ααααΌαααΆααα ααΆα‘αΎααααααΆαααααααα·ααΈααΌα ααΆ ααΆααααα½ααα·αα·αααααΆαααααΉαααααΌαααα―αααΆα ααΆααααααααααΆααααΆα αα·αααΆααααααΎααα·αααααααααααΆααα αααααααΆααΈααΈααααααΈαα BLAKE3 αα·αβααΆαβααααβαααααΆααβααΆαβαααααβαααβαααααΆααβαα αααααβααΆβααΆαβαααβααααβααααΆβαααβαααααΆααβα±ααβααΆαβααΏαβααΆαβαααβα’αΆα βααααΎβαα βααΆα (αααααΆααβααΆαααβαααααΆαα ααΆβααααΌαβααΆαβααααΆαβα±ααβααααΎβαα»αααΆα hash ααΊα yescrypt, bcrypt, scrypt α¬ Argon2)α αα»αααΆα hash ααααααα·ααααααααΆααα·α αΆαααΆααΊαα·αααΆαααααα·ααααα ααααααα ααααα·αααααααααααΆα hash α αΎαααααΌαααΆαααΆαααΆαααΈααΆαααΆααααα αΆαααΎααΆαααααΎαααΎαααΆααααααααα·α αα·αααΆααααααααααΆαα»αα
αααα½ααααααααΆααααααααΌαααΆααααααΎαα‘αΎααααα’αααααααΆαααΆαααααΈαααααααΈααααΆα (Jack O'Connor, Jean-Philippe Aumasson, Samuel Neves, Zooko Wilcox-O'Hearn) αα·αααααααΆαα’αα·αααααααααααα½ααααααααΆα BLAKE2 αα·αααααΎααααΆααααααααΆα Bao ααΎααααΈα’αα·αααΌααααααΆααααα»α . αα·αααΌα BLAKE2 (BLAKE2b, BLAKE2s) BLAKE3 αααααααΌααααα½ααααααααΆααααα½ααααααΆααααααααααα·ααΆααΆααα’αα ααααα·αααΆααααΉαααααα αααΈα αα·αααα ααααααΆα
ααΆααααααΎαααααα·αααααΆαααααΌαααΆααααααα αααααΆαααααααα ααα½ααα»αααΈ 10 αα 7 αα·ααααα»αααααααααα‘αααααα»α 1 ααΈα‘αΌααα αααααΆαα’ααααααααΎα αα½αααααΆαααααΎαααααα»ααΆαααα·ααα·ααααΆαααα½αα±ααααΏααΆαααααααΆααΆα’αΆα αα αα½α ααΆαα½αααΉα 7 αα»ααααα½αα±αα 10 ααααααααααααααΆααΆαααΌαααααα·αααααΆαααΏααΆααααΌα ααααΆ (αααααΆααααΆαα αααΆααααΆααααΎαα’αΆα αααααα§ααΆα αααααΆαα½αααΆαααΆαααααααΎαα αααα»ααααΆαααΈαααΆα - αααααΆααααΈ 7 αα·ααΆααΈα ααααααΎααααΌαααΆαααΆααααα αΌαααααΆααΆαααααα»αα αΎα 3 αα·ααΆααΈααααααααΉααα·ααααααΆαααααααΆααααα·ααααααααααααΆααα) α αααααΆαααΆαααΆααααα α’αααααααΆαααααΆααααααααα αΆαααΆαααΏαααααα αααααΏααΆ αααααΈααΆ 7 αα»ααα αα α»αααααααααααααααΆααααΎααααΈααααααααΉαααΆαααΆααααα αΆααααααααααΆααααΆααα’ααααΎαααααΆ 3 αα»αααααααα’αΆα ααΆαααααααααααααα·αααΎααΆαααΆααααα αΆαααααΈααααΌαααΆαααααααα αααα’ααΆααα
αααααΆααααΆααααα ααααΆαααα»α αα αααα»α BLAKE3 ααααααΈαααααΌαααΆααααα αααα ααΆααααα 1 KB α αΎααααααααΈαα½ααααααΌαααΆαααααααααα―αααΆαααα αααααα’ααααΎαααααΆααααααα αααααΆαααα½αααααΌαααΆααααααΎαα‘αΎααααααα’ααααΎααΎα Merkle αααααΈαα ααααααααα’αα»ααααΆαα±ααααΎααααααααΆααααα αΆααααααΎαααΆααα·ααααααααααααααΆαα αααααααΆαααααΆ - α§ααΆα ααα α’αααα’αΆα ααααΎααΆαααααΆαα’αααΈαααα 4-threaded SIMD ααΎααααΈααααΆ hashes αα 4 blocks αααα»ααααααααΆαααααΆα αα»αααΆα hash αααααααΈ SHA-* ααααΎαααΆααα·ααααααααΆαααααΆαααααααα
αααααααα·ααααααα BLAKE3
- ααααΎαααΆαααααα BLAKE3 ααΊααΏαααΆα MD5, SHA-1, SHA-2, SHA-3 αα·α BLAKE2 αα½αα±ααααααααααΆααα
- αα»ααααα·ααΆα αα½αααΆααααΆαααααααααΉαααΆαααΆααααα αΆαααΆααααααΌαααΆαααα SHA-2 ααΆααααααααα
- ααΆααα αααα»α Rust ααααΎα±αααααααΎααααααΆααααΆαααααΆα SSE2, SSE4.1, AVX2, AVX-512 αα·α NEON α
- ααΆααΆααΆαααααααααΆααααΆαααααΆααΎα ααα½ααααααααα‘αΆα αα·αααα»αααα·α SIMD α
- ααααααΆαααααΆααααααΎαααΆαα’αΆααααα αα·αααααΎαααΆααααααααααΆααααααααααΈα;
- ααααΎαααα»α PRF, MAC, KDF, XOF modes αα·αααΆ hash ααααααΆ;
- αααα½ααααααααΆααααα½ααααααΆααααααΆααααααααααΆααα’αα ααΏαααΆαααααααααα x86-64 αα·αααααααααααααΎαααΆα ARM 32-bitα
ααΆααα»αααααΆααααΆαααααΆα BLAKE3 αα·α BLAKE2α
- ααΆαααααΎααααΆαααα ααΆαααααααααααααΆααααααΈααααα’αα»ααααΆαα±ααααΆαααΆααααΆαααΆα‘ααααααΆααααααααααααα»αααΆαααααΆαααααΆα
- ααΆαααααααα ααα½ααα»αααΈ 10 αα 7 α
- ααααααααα·ααααα·ααΆαααΈαααΆαα α αΆα α αΆαααΆαα½ααα (HMAC) αα·αααΆααααααΎαααΌααα (KDF) α
- αα·αααΆαααΆαααααααααΈααΎααααΆααααα ααα hashing ααΆαα½α key αααααΆαααααΆαααααΎααααΆααααααααααααΆαααΆααααΆααααΈαα»αααααααα»ααααΆαααΆααααααααααΆααα
- ααααααΆαααααα·ααααα·ααΆααααααααΆααααααΆαα½ααααα»ααααααααααα»αααΆαααΆαα½αααΉααααααααααααα (XOF, Extendable Output Function) α’αα»ααααΆαα±ααααΆαααΆαααααααααΆ αα·αααΈααΆαα (ααααααα)α
ααααα: opennet.ru