BLAKE3 рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рд╣реЕрд╢ рдлрдВрдХреНрд╢рди рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ, рдЬреЗ SHA-10 рдкреЗрдХреНрд╖рд╛ 2 рдкрдЯ рд╡реЗрдЧрд╡рд╛рди рдЖрд╣реЗ

рдЕрд▓реНрдЧреЛрд░рд┐рджрдордЪреА рдЕрдВрддрд┐рдо рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдкреНрд░рдХрд╛рд╢рд┐рдд рдЭрд╛рд▓реА рдЖрд╣реЗ рдмреНрд▓реЕрдХ 3, рдЬреЗ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рд╣реЕрд╢ рдлрдВрдХреНрд╢рди рдСрдлрд░ рдХрд░рддреЗ рдЬрд╕реЗ рдХреА рдлрд╛рдЗрд▓ рдЗрдВрдЯрд┐рдЧреНрд░рд┐рдЯреА рдЪреЗрдХрд┐рдВрдЧ, рдореЗрд╕реЗрдЬ рдСрдереЗрдВрдЯрд┐рдХреЗрд╢рди рдЖрдгрд┐ рдбрд┐рдЬрд┐рдЯрд▓ рд╕реНрд╡рд╛рдХреНрд╖рд░реАрд╕рд╛рдареА рдбреЗрдЯрд╛ рддрдпрд╛рд░ рдХрд░рдгреЗ рдпрд╛рд╕рд╛рд░рдЦреНрдпрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдВрд╕рд╛рдареА рдбрд┐рдЭрд╛рдЗрди рдХреЗрд▓реЗрд▓реЗ. BLAKE3 рд╣реЗ рдкрд╛рд╕рд╡рд░реНрдб рд╣реЕрд╢ рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рд╣реЗрддреВрдиреЗ рдирд╛рд╣реА (рдкрд╛рд╕рд╡рд░реНрдбрд╕рд╛рдареА рддреБрдореНрд╣рд╛рд▓рд╛ yescrypt, bcrypt, scrypt рдХрд┐рдВрд╡рд╛ Argon2 рд╡рд╛рдкрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ), рдХрд╛рд░рдг рдЯрдХреНрдХрд░ рди рд╣реЛрдгреНрдпрд╛рдЪреНрдпрд╛ рд╣рдореАрд╕рд╣ рд╢рдХреНрдп рддрд┐рддрдХреНрдпрд╛ рд▓рд╡рдХрд░ рд╣реЕрд╢рдЪреА рдЧрдгрдирд╛ рдХрд░рдгреЗ рд╣реЗ рддреНрдпрд╛рдЪреЗ рдЙрджреНрджрд┐рд╖реНрдЯ рдЖрд╣реЗ. рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╢реЛрдзрдд рдЖрд╣реЗ рдЖрдгрд┐ рд╣реЕрд╢ рдХреЗрд▓реЗрд▓реНрдпрд╛ рдбреЗрдЯрд╛рдЪреНрдпрд╛ рдЖрдХрд╛рд░рд╛рд╕ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдирд╛рд╣реА. BLAKE3 рдЪреА рд╕рдВрджрд░реНрдн рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдкреНрд░рдХрд╛рд╢рд┐рдд рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди (CC0) рдЖрдгрд┐ Apache 2.0 рдЕрдВрддрд░реНрдЧрдд рджреБрд╣реЗрд░реА рдкрд░рд╡рд╛рдирд╛.

рдирд╡реАрди рд╣реЕрд╢ рдлрдВрдХреНрд╢рдирдЪрд╛ рдорд╣рддреНрддреНрд╡рд╛рдЪрд╛ рдлрд░рдХ рдореНрд╣рдгрдЬреЗ SHA-3 рд╕реНрддрд░рд╛рд╡рд░ рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддрд╛ рд░рд╛рдЦреВрди рд╣реЕрд╢ рдХреЕрд▓рдХреНрдпреБрд▓реЗрд╢рдирдЪреА рдЙрдЪреНрдЪ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛. рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░, BLAKE3 рдордзреНрдпреЗ рдкрд░рд┐рдгрд╛рдореА рд╣реЕрд╢ рдЖрдХрд╛рд░ 32 рдмрд╛рдЗрдЯреНрд╕ (256 рдмрд┐рдЯреНрд╕) рдЖрд╣реЗ, рдкрд░рдВрддреБ рддреЛ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдореВрд▓реНрдпрд╛рдВрдордзреНрдпреЗ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХреЗрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ. 16 KB рдлрд╛рдЗрд▓рд╕рд╛рдареА рд╣реЕрд╢ рдЬрдирд░реЗрд╢рди рдЪрд╛рдЪрдгреАрдордзреНрдпреЗ, BLAKE3 SHA3-256 рдкреЗрдХреНрд╖рд╛ 15 рдкрдЯ, SHA-256 12 рдкрдЯ, SHA-512 8 рдкрдЯ, SHA-1 6 рдкрдЯ рдЖрдгрд┐ BLAKE2b 4 рдкрдЯреАрдиреЗ рдорд╛рдЧреЗ рдЖрд╣реЗ. рдЦреВрдк рдореЛрдареНрдпрд╛ рдкреНрд░рдорд╛рдгрд╛рдд рдбреЗрдЯрд╛рд╡рд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛рдирд╛ рдПрдХ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рдЕрдВрддрд░ рд░рд╛рд╣рддреЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, BLAKE3 рдирд┐рдШрд╛рд▓реЗ рд╡реЗрдЧрд╡рд╛рди 256GB рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдбреЗрдЯрд╛рд╕рд╛рдареА рд╣реЕрд╢рдЪреА рдЧрдгрдирд╛ рдХрд░рддрд╛рдирд╛ SHA-8 рдмрд╛рдп 1 рд╡реЗрд│рд╛.

BLAKE3 рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рд╣реЕрд╢ рдлрдВрдХреНрд╢рди рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗ, рдЬреЗ SHA-10 рдкреЗрдХреНрд╖рд╛ 2 рдкрдЯ рд╡реЗрдЧрд╡рд╛рди рдЖрд╣реЗ

рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рд╕рд┐рджреНрдз рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рддрдЬреНрдЮрд╛рдВрдиреА рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗ рд╣реЛрддреЗ (рдЬреЕрдХ рдУ'рдХреЙрдирд░, рдЬреАрди-рдлрд┐рд▓рд┐рдк рдСрдорд╛рд╕рди, рд╕реЕрдореНрдпреБрдЕрд▓ рдиреЗрд╡реНрд╣рд╕, рдЭреВрдХреЛ рд╡рд┐рд▓реНрдХреЙрдХреНрд╕-рдУ'рд╣рд░реНрди) рдЖрдгрд┐ рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреЗ рд╕реБрд░реВ рдареЗрд╡рддреЗ рдмреНрд▓реЕрдХ 2 рдЖрдгрд┐ рдмреНрд▓реЙрдХ рдЪреЗрди рдЯреНрд░реА рдПрдиреНрдХреЛрдб рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ рдпрдВрддреНрд░рдгрд╛ рд╡рд╛рдкрд░рддреЗ рдмрд╛рдУ. BLAKE2 (BLAKE2b, BLAKE2s) рдЪреНрдпрд╛ рд╡рд┐рдкрд░реАрдд, BLAKE3 рд╕рд░реНрд╡ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╕рд╛рдареА рдПрдХрдЪ рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рдСрдлрд░ рдХрд░рддреЗ, рдмрд┐рдЯ рдбреЗрдкреНрде рдЖрдгрд┐ рд╣реЕрд╢ рдЖрдХрд╛рд░рд╛рд╢реА рдЬреЛрдбрд▓реЗрд▓реЗ рдирд╛рд╣реА.

рд░рд╛рдЙрдВрдбреНрд╕рдЪреА рд╕рдВрдЦреНрдпрд╛ 10 рд╡рд░реВрди 7 рдкрд░реНрдпрдВрдд рдХрдореА рдХрд░реВрди рдЖрдгрд┐ 1 KB рддреБрдХрдбреНрдпрд╛рдВрдордзреНрдпреЗ рдмреНрд▓реЙрдХреНрд╕ рд╕реНрд╡рддрдВрддреНрд░рдкрдгреЗ рд╣реЕрд╢ рдХрд░реВрди рд╡рд╛рдвреАрд╡ рдХрд╛рдордЧрд┐рд░реА рдкреНрд░рд╛рдкреНрдд рдЭрд╛рд▓реА. рдирд┐рд░реНрдорд╛рддреНрдпрд╛рдВрдЪреНрдпрд╛ рдорддреЗ, рддреНрдпрд╛рдВрдирд╛ рдЦрд╛рддреНрд░реА рдкрдЯрд▓реА рдкреБрд░рд╛рд╡рд╛, рдЬреЗ рддреБрдореНрд╣реА рд╡рд┐рд╢реНрд╡рд╛рд╕рд╛рд░реНрд╣рддреЗрдЪреА рд╕рдорд╛рди рдкрд╛рддрд│реА рд░рд╛рдЦреВрди 7 рдРрд╡рдЬреА 10 рдлреЗрд▒реНрдпрд╛рдВрд╕рд╣ рдорд┐рд│рд╡реВ рд╢рдХрддрд╛ (рд╕реНрдкрд╖реНрдЯрддреЗрд╕рд╛рдареА, рддреБрдореНрд╣реА рдорд┐рдХреНрд╕рд░рдордзреНрдпреЗ рдлрд│реЗ рдорд┐рд╕рд│рдгреНрдпрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдК рд╢рдХрддрд╛ - 7 рд╕реЗрдХрдВрджрд╛рдВрдирдВрддрд░ рдлрд│реЗ рдЖрдзреАрдЪ рдкреВрд░реНрдгрдкрдгреЗ рдорд┐рд╕рд│рд▓реА рдЬрд╛рддрд╛рдд рдЖрдгрд┐ рдЕрддрд┐рд░рд┐рдХреНрдд 3 рд╕реЗрдХрдВрдж рд╣реЛрддреАрд▓. рдорд┐рд╢реНрд░рдгрд╛рдЪреНрдпрд╛ рд╕реБрд╕рдВрдЧрддрддреЗрд╡рд░ рдкрд░рд┐рдгрд╛рдо рд╣реЛрдд рдирд╛рд╣реА). рддрдерд╛рдкрд┐, рдХрд╛рд╣реА рд╕рдВрд╢реЛрдзрдХ рд╢рдВрдХрд╛ рд╡реНрдпрдХреНрдд рдХрд░рддрд╛рдд, рдЕрд╕рд╛ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдЖрд╣реЗ рдХреА рд╣реЕрд╢рд╡рд░реАрд▓ рд╕рд░реНрд╡ рдЬреНрдЮрд╛рдд рд╣рд▓реНрд▓реНрдпрд╛рдВрдирд╛ рддреЛрдВрдб рджреЗрдгреНрдпрд╛рд╕рд╛рдареА рдЬрд░реА рд╕рдзреНрдпрд╛ 7 рд░рд╛рдЙрдВрдб рдкреБрд░реЗрд╕реЗ рдЖрд╣реЗрдд, рддрд░ рднрд╡рд┐рд╖реНрдпрд╛рдд рдирд╡реАрди рд╣рд▓реНрд▓реЗ рдУрд│рдЦрд▓реЗ рдЧреЗрд▓реНрдпрд╛рд╕ рдЕрддрд┐рд░рд┐рдХреНрдд 3 рд░рд╛рдЙрдВрдб рдЙрдкрдпреБрдХреНрдд рдард░реВ рд╢рдХрддрд╛рдд.

рдмреНрд▓реЙрдХреНрд╕рдордзреНрдпреЗ рд╡рд┐рднрд╛рдЧрдгреНрдпрд╛рдмрджреНрджрд▓, BLAKE3 рдордзреНрдпреЗ рдкреНрд░рд╡рд╛рд╣ 1 KB рддреБрдХрдбреНрдпрд╛рдВрдордзреНрдпреЗ рд╡рд┐рднрд╛рдЧрд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рдкреНрд░рддреНрдпреЗрдХ рддреБрдХрдбрд╛ рд╕реНрд╡рддрдВрддреНрд░рдкрдгреЗ рд╣реЕрд╢ рдХреЗрд▓рд╛ рдЖрд╣реЗ. рдмреЗрд╕рд╡рд░реАрд▓ рддреБрдХрдбреНрдпрд╛рдВрдЪреНрдпрд╛ рд╣реЕрд╢рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдмрд╛рдпрдирд░реА рдорд░реНрдХрд▓ рдЭрд╛рдб рдПрдХ рдореЛрдард╛ рд╣реЕрд╢ рддрдпрд╛рд░ рд╣реЛрддреЛ. рд╣реЗ рд╡рд┐рднрд╛рдЬрди рдЖрдореНрд╣рд╛рд▓рд╛ рд╣реЕрд╢рдЪреА рдЧрдгрдирд╛ рдХрд░рддрд╛рдирд╛ рд╕рдорд╛рдВрддрд░ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧрдЪреА рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рд┐рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЗ - рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рддреБрдореНрд╣реА рдПрдХрд╛рдЪ рд╡реЗрд│реА 4 рдмреНрд▓реЙрдХреНрд╕рдЪреНрдпрд╛ рд╣реЕрд╢рдЪреА рдЧрдгрдирд╛ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА 4-рдереНрд░реЗрдбреЗрдб SIMD рд╕реВрдЪрдирд╛ рд╡рд╛рдкрд░реВ рд╢рдХрддрд╛. рдкрд╛рд░рдВрдкрд╛рд░рд┐рдХ SHA-* рд╣реЕрд╢ рдлрдВрдХреНрд╢рдиреНрд╕ рдбреЗрдЯрд╛рд╡рд░ рдЕрдиреБрдХреНрд░рдореЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛рдд.

BLAKE3 рдЪреА рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ:

  • рдЙрдЪреНрдЪ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛;
  • рдкреНрд░рддрд┐рдХрд╛рд░рд╛рд╕рд╣ рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛ рд╕рдВрджреЗрд╢ рд╡рд╛рдврд╡рдгреЗ рд╣рд▓реНрд▓рд╛, рдЬреНрдпрд╛рд╕рд╛рдареА SHA-2 рд╕рдВрд╡реЗрджрдирд╛рдХреНрд╖рдо рдЖрд╣реЗ;
  • рдХрд┐рддреАрд╣реА рдереНрд░реЗрдбреНрд╕ рдЖрдгрд┐ SIMD рдЪреЕрдиреЗрд▓рд╡рд░ рдЧрдгрдирд╛рдВрдЪреЗ рд╕рдорд╛рдВрддрд░реАрдХрд░рдг рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдгреЗ;
  • рдкреНрд░рд╡рд╛рд╣рд╛рдВрдЪреЗ рд╡рд╛рдвреАрд╡ рдЕрджреНрдпрддрди рдЖрдгрд┐ рд╕рддреНрдпрд╛рдкрд┐рдд рдкреНрд░рдХреНрд░рд┐рдпреЗрдЪреА рд╢рдХреНрдпрддрд╛;
  • PRF, MAC, KDF, XOF рдореЛрдбрдордзреНрдпреЗ рдЖрдгрд┐ рдирд┐рдпрдорд┐рдд рд╣реЕрд╢ рдореНрд╣рдгреВрди рд╡рд╛рдкрд░рд╛;
  • рд╕рд░реНрд╡ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд╕рд╛рдареА рдПрдХрдЪ рдЕрд▓реНрдЧреЛрд░рд┐рджрдо, рджреЛрдиреНрд╣реА x86-64 рд╕рд┐рд╕реНрдЯрдо рдЖрдгрд┐ 32-рдмрд┐рдЯ рдПрдЖрд░рдПрдо рдкреНрд░реЛрд╕реЗрд╕рд░рд╡рд░ рдЬрд▓рдж.

рд╕реНрддреНрд░реЛрдд: opennet.ru

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛