BLAKE3 kriptografik xesh funksiyasi mavjud, bu SHA-10 dan 2 baravar tezroq

Algoritmning yakuniy bajarilishi e'lon qilindi Bleyk3, bu fayl yaxlitligini tekshirish, xabar autentifikatsiyasi va raqamli imzolar uchun maʼlumotlarni yaratish kabi ilovalar uchun moʻljallangan kriptografik xesh funksiyasini taklif etadi. BLAKE3 parollarni xeshlash uchun mo'ljallanmagan (parollar uchun yescrypt, bcrypt, scrypt yoki Argon2 dan foydalanish kerak), chunki u hech qanday to'qnashuvlar, himoyalanish kafolati bilan xeshlarni iloji boricha tezroq hisoblashga qaratilgan. prototipini topish va xeshlangan ma'lumotlar hajmiga sezgir emas. BLAKE3 ning mos yozuvlar bajarilishi e'lon qilindi Dual Public Domain (CC0) va Apache 2.0 ostida litsenziyalangan.

Yangi xesh funktsiyasining asosiy farqi SHA-3 darajasida ishonchlilikni saqlab, hash hisob-kitoblarining juda yuqori ishlashidir. Odatiy bo'lib, BLAKE3 da hosil bo'lgan xesh hajmi 32 bayt (256 bit) ni tashkil qiladi, lekin uni ixtiyoriy qiymatlarga kengaytirish mumkin. 16 KB fayl uchun xeshni yaratish testida BLAKE3 SHA3-256 dan 15 marta, SHA-256 dan 12 marta, SHA-512 dan 8 marta, SHA-1 dan 6 marta va BLAKE2b dan 4 baravar ustundir. Juda katta hajmdagi ma'lumotlarni qayta ishlashda sezilarli bo'shliq qoladi, masalan, BLAKE3 bo'lib chiqdi tezroq 256 GB tasodifiy ma'lumotlar uchun xeshni hisoblashda SHA-8 1 marta.

BLAKE3 kriptografik xesh funksiyasi mavjud, bu SHA-10 dan 2 baravar tezroq

Algoritm mashhur kriptografiya mutaxassislari tomonidan ishlab chiqilgan (Jek O'Konnor, Jan-Filip Omasson, Samuel Neves, Zooko Uilkoks-O'Hirn) va algoritmni ishlab chiqishda davom etmoqda Bleyk2 va blok zanjiri daraxtini kodlash mexanizmidan foydalanadi Bao. BLAKE2 (BLAKE2b, BLAKE2s) dan farqli o'laroq, BLAKE3 barcha platformalar uchun bit chuqurligi va xesh hajmiga bog'liq bo'lmagan yagona algoritmni taklif qiladi.

Ko'tarilgan samaradorlikka turlar sonini 10 dan 7 gacha kamaytirish va 1 KB bo'laklardagi bloklarni alohida xeshlash orqali erishildi. Yaratuvchilarning so'zlariga ko'ra, ular ishonchli topdilar dalillar, bir xil ishonchlilik darajasini saqlagan holda 7 ta o'rniga 10 tur bilan erishishingiz mumkin (aniqlik uchun siz mikserda mevalarni aralashtirishga misol keltirishingiz mumkin - 7 soniyadan keyin mevalar allaqachon to'liq aralashadi va qo'shimcha 3 soniya davom etadi. aralashmaning mustahkamligiga ta'sir qilmaydi). Biroq, ba'zi tadqiqotchilar, agar hozirda xeshlarga ma'lum bo'lgan barcha hujumlarga qarshi turish uchun 7 raund etarli bo'lsa ham, kelajakda yangi hujumlar aniqlansa, qo'shimcha 3 raund foydali bo'lishi mumkinligiga ishonishadi.

Bloklarga bo'linishga kelsak, BLAKE3 da oqim 1 KB bo'laklarga bo'linadi va har bir qism mustaqil ravishda xeshlanadi. Bazadagi bo'laklarning xeshlari asosida ikkilik merkle daraxti bitta katta xesh hosil bo'ladi. Ushbu bo'linish bizga xeshni hisoblashda ma'lumotlarni qayta ishlashni parallellashtirish muammosini hal qilish imkonini beradi - masalan, siz 4 ta blokning xeshlarini bir vaqtning o'zida hisoblash uchun 4 tishli SIMD ko'rsatmalaridan foydalanishingiz mumkin. An'anaviy SHA-* xesh funksiyalari ma'lumotlarni ketma-ket qayta ishlaydi.

BLAKE3 xususiyatlari:

  • Yuqori samaradorlik;
  • Xavfsizlik, shu jumladan qarshilik xabarni uzaytirish hujumi, SHA-2 sezgir bo'lgan;
  • Har qanday miqdordagi iplar va SIMD kanallari bo'yicha hisob-kitoblarni parallellashtirishni ta'minlash;
  • Oqimlarni bosqichma-bosqich yangilash va tasdiqlangan qayta ishlash imkoniyati;
  • PRF, MAC, KDF, XOF rejimlarida va oddiy xesh sifatida foydalaning;
  • X86-64 tizimlarida ham, 32-bitli ARM protsessorlarida ham tezkor barcha arxitekturalar uchun yagona algoritm.

Manba: opennet.ru

a Izoh qo'shish