рд╕реЛрдбрд┐рдпрдо рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдп 1.0.18 рдХреЛ рд░рд┐рд▓реАрдЬ

рдЙрдкрд▓рдмреНрдз рдЫ рдирд┐:рд╢реБрд▓реНрдХ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпрдХреЛ рд╡рд┐рдореЛрдЪрди рд╕реЛрдбрд┐рдпрдо 1.0.18, рдЬреБрди рдкреБрд╕реНрддрдХрд╛рд▓рдпрд╕рдБрдЧ рдорд┐рд▓реНрджреЛ API рд╣реЛ NaCl (рдиреЗрдЯрд╡рд░реНрдХрд┐рдЩ рд░ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рд▓рд╛рдЗрдмреНрд░реЗрд░реА) рд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдЮреНрдЬрд╛рд▓ рд╕рдВрдЪрд╛рд░, рд╣реНрдпрд╛рд╕рд┐рдЩ, рд╕реНрдпреВрдбреЛ-рдЕрдирд┐рдпрдорд┐рдд рдирдореНрдмрд░рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ, рдбрд┐рдЬрд┐рдЯрд▓ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд╣рд░реВрд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрдиреЗ, рд░ рдкреНрд░рдорд╛рдгреАрдХреГрдд рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░ рд╕рд┐рдореЗрдЯреНрд░рд┐рдХ (рд╕рд╛рдЭрд╛-рдХреБрдЮреНрдЬреА) рдХреБрдЮреНрдЬреАрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдЗрдиреНрдХреНрд░рд┐рдкреНрд╢рдирдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рд╕реЛрдбрд┐рдпрдо API рд╕рд░рд▓ рдЫ рд░ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рд╕рдмреИрднрдиреНрджрд╛ рд╕реБрд░рдХреНрд╖рд┐рдд рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ, рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рд░ рд╣реНрдпрд╛рд╕рд┐рдЩ рд╡рд┐рдзрд┐рд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛрдб рджреНрд╡рд╛рд░рд╛ рд╡рд┐рддрд░рд┐рдд рдирд┐: рд╢реБрд▓реНрдХ ISC рд▓рд╛рдЗрд╕реЗрдиреНрд╕ рдЕрдиреНрддрд░реНрдЧрддред

рдореБрдЦреНрдп рдЖрд╡рд┐рд╖реНрдХрд╛рд░рд╣рд░реВ:

  • рдирдпрд╛рдБ WebAssembly/WASI рд▓рдХреНрд╖реНрдп рдкреНрд▓реЗрдЯрдлрд░реНрдо рдердкрд┐рдпреЛ (рдЗрдиреНрдЯрд░рдлреЗрд╕ рд╡рд╛рд╕реА рдмреНрд░рд╛рдЙрдЬрд░ рдмрд╛рд╣рд┐рд░ WebAssembly рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдХреЛ рд▓рд╛рдЧреА);
  • AVX2 рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рднрдПрдХрд╛ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛, рдЖрдзрд╛рд░рднреВрдд рд╣реНрдпрд╛рд╕рд┐рдЩ рд╕рдЮреНрдЪрд╛рд▓рдирд╣рд░реВрдХреЛ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рд▓рдЧрднрдЧ 10% рд▓реЗ рдмрдвреЗрдХреЛ рдЫред
  • рднрд┐рдЬреБрдЕрд▓ рд╕реНрдЯреБрдбрд┐рдпреЛ 2019 рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдирд┐рд░реНрдорд╛рдгрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ;
  • рдирдпрд╛рдБ рдкреНрд░рдХрд╛рд░реНрдпрд╣рд░реВ core_ed25519_from_hash() рд░ core_ed25519_random() edwards25519 рдмрд┐рдиреНрджреБрдорд╛ рд╣реНрдпрд╛рд╕ рдкреНрд░рддрд┐рдмрд┐рдореНрдмрд┐рдд рдЧрд░реНрди рд╡рд╛ рдЕрдирд┐рдпрдорд┐рдд edwards25519 рдмрд┐рдиреНрджреБ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди;
  • рд╕реНрдХреЗрд▓рд░*рд╕реНрдХреЗрд▓рд░ рдЧреБрдгрди (рдореЛрдб L) рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдХрд╛рд░реНрдп crypto_core_ed25519_scalar_mul() рдердкрд┐рдпреЛ;
  • рдкреНрд░рд╛рдЗрдо рдирдореНрдмрд░рд╣рд░реВрдХреЛ рдЕрд░реНрдбрд░ рдЧрд░рд┐рдПрдХреЛ рд╕рдореВрд╣рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдердкрд┐рдпреЛ Ristretto, wasm-crypto рд╕рдВрдЧ рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЛ рд▓рд╛рдЧреА рдЖрд╡рд╢реНрдпрдХ;
  • рдкреНрд░рдгрд╛рд▓реА рдХрд▓рдХреЛ рд╕рдХреНрд╖рдо рдкреНрд░рдпреЛрдЧ getentropy() рдпрд╕рд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрдиреЗ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдорд╛;
  • NativeClient рдкреНрд░рд╡рд┐рдзрд┐рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдерди рдмрдиреНрдж рдЧрд░рд┐рдПрдХреЛ рдЫ, рдЬрд╕рдХреЛ рд╡рд┐рдХрд╛рд╕ рдмрдиреНрдж рдЧрд░рд┐рдпреЛ WebAssembly рдХреЛ рдкрдХреНрд╖рдорд╛;
  • рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджрд╛, рдХрдореНрдкрд╛рдЗрд▓рд░ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ "-ftree-vectorize" рд░ "-ftree-slp-vectorize" рд╕рдХреНрд╖рдо рд╣реБрдиреНрдЫрдиреНред

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди