Доступна криптографичСская Ρ…Π΅Ρˆ-функция BLAKE3, которая Π² 10 Ρ€Π°Π· быстрСС SHA-2

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Π°Ρ рСализация Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° BLAKE3, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Ρ€Π°ΡΡΡ‡ΠΈΡ‚Π°Π½Π½ΡƒΡŽ Π½Π° Ρ‚Π°ΠΊΠΈΠ΅ примСнСния, ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° цСлостности Ρ„Π°ΠΉΠ»ΠΎΠ², аутСнтификация сообщСний ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… для Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… подписСй. BLAKE3 Π½Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ…ΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ (для ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ yescrypt, bcrypt, scrypt ΠΈΠ»ΠΈ Argon2), Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π½Π°Ρ†Π΅Π»Π΅Π½Π° Π½Π° максимально быстроС вычислСниС Ρ…ΡΡˆΠ΅ΠΉ с Π³Π°Ρ€Π°Π½Ρ‚ΠΈΠ΅ΠΉ отсутствия ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΉ, Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ ΠΎΡ‚ нахоТдСния ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·Π° ΠΈ Π½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΊ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ Ρ…ΡΡˆΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Эталонная рСализация BLAKE3 ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π° ΠΏΠΎΠ΄ Π΄Π²ΠΎΠΉΠ½ΠΎΠΉ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ β€” общСствСнноС достояниС (CC0) ΠΈ Apache 2.0.

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠΉ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ являСтся ΠΎΡ‡Π΅Π½ΡŒ высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ вычислСния Ρ…ΡΡˆΠ° ΠΏΡ€ΠΈ сохранСнии надёТности Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ SHA-3. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π·ΠΌΠ΅Ρ€ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ…ΡΡˆΠ° Π² BLAKE3 составляСт 32 Π±Π°ΠΉΡ‚Π° (256 Π±ΠΈΡ‚), Π½ΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ Π΄ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ. Π’ тСстС Π½Π° Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΡŽ Ρ…ΡΡˆΠ° для Ρ„Π°ΠΉΠ»Π°, Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 16 ΠšΠ‘, BLAKE3 ΠΎΠΏΠ΅Ρ€Π΅ΠΆΠ°Π΅Ρ‚ SHA3-256 Π² 15 Ρ€Π°Π·, SHA-256 β€” Π² 12 Ρ€Π°Π·, SHA-512 β€” Π² 8 Ρ€Π°Π·, SHA-1 β€” Π² 6 Ρ€Π°Π·, Π° BLAKE2b β€” Π² 4 Ρ€Π°Π·Π°. Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Ρ€Ρ‹Π² сохраняСтся ΠΈ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΎΡ‡Π΅Π½ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΎΠ±ΡŠΡ‘ΠΌΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, BLAKE3 оказался быстрСС SHA-256 Π² 8 Ρ€Π°Π· ΠΏΡ€ΠΈ вычислСнии Ρ…Π΅ΡˆΠ° для 1Π“Π‘ случайных Π΄Π°Π½Π½Ρ‹Ρ….

 Доступна криптографичСская Ρ…Π΅Ρˆ-функция BLAKE3, которая Π² 10 Ρ€Π°Π· быстрСС SHA-2

Алгоритм Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ извСстными спСциалистами ΠΏΠΎ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ (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 Кб ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ кусочСк Ρ…ΡΡˆΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ нСзависимо. На основС Ρ…ΡΡˆΠ΅ΠΉ кусочков Π½Π° Π±Π°Π·Π΅ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π° ΠœΠ΅Ρ€ΠΊΠ»Π° формируСтся ΠΎΠ΄ΠΈΠ½ большой Ρ…ΡΡˆ. Π£ΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ позволяСт Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ с распараллСливаниСм ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈ вычислСнии Ρ…ΡΡˆΠ° β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ 4-ΠΏΠΎΡ‚ΠΎΡ‡Π½Ρ‹Π΅ SIMD-инструкции для ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ вычислСния Ρ…ΡΡˆΠ΅ΠΉ 4 Π±Π»ΠΎΠΊΠΎΠ². Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ SHA-* ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ BLAKE3:

  • Высокая ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ;
  • Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ, Π² Ρ‚ΠΎΠΌ числС ΡΡ‚ΠΎΠΉΠΊΠΎΡΡ‚ΡŒ ΠΊ Π°Ρ‚Π°ΠΊΠ΅ ΡƒΠ΄Π»ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ сообщСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½ SHA-2;
  • ΠžΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΠ΅ распараллСливания вычислСний Π½Π° любоС число ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² ΠΈ SIMD-ΠΊΠ°Π½Π°Π»ΠΎΠ²;
  • Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ обновлСния ΠΈ Π²Π΅Ρ€ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²;
  • ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² Ρ€Π΅ΠΆΠΈΠΌΠ°Ρ… PRF, MAC, KDF, XOF ΠΈ ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Ρ…ΡΡˆ;
  • Π•Π΄ΠΈΠ½Ρ‹ΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ для всСх Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€, быстрый ΠΊΠ°ΠΊ Π½Π° систСмах x86-64, Ρ‚Π°ΠΊ ΠΈ Π½Π° 32-разрядных процСссорах ARM.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

Π°Π²Π°Ρ‚Π°Ρ€ Π°Π²Ρ‚ΠΎΡ€Π°
ProHoster ΠšΠΎΠ½ΡΡƒΠ»ΡŒΡ‚Π°Π½Ρ‚, ВСхничСский спСциалист
A technical specialist at ProHoster with over six years of experience in server administration, VPN solutions, and network security. I manage infrastructure setup and support, monitor service stability, and implement solutions to protect client data. I also contribute to performance optimization and compliance with modern security and privacy requirements.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ