BLAKE3 isang ligtas, mabilis at parallelizable na cryptographic hash function

BLAKE3 es isang pagpapaandar na cryptographic hash ito ito ay nailalarawan sa pamamagitan ng pagiging mas mabilis kaysa sa MD5, SHA-1, SHA-2, SHA-3 at BLAKE2, plus mas ligtas ito, hindi tulad ng MD5 at SHA-1. At ligtas laban sa haba ng haba, hindi katulad ng SHA-2.

Ito ay lubos na nahahalintulad sa anumang bilang ng mga thread at mga linya ng SIMD, dahil ito ay isang puno ng Merkle sa loob at may isang variant-free na algorithm, na mabilis sa x86-64 at din sa mas maliit na mga arkitektura.

BLAKE3 umaasa sa isang na-optimize na halimbawa ng itinatag na pag-andar ng hash BLAKE2 at sa orihinal na mode ng puno ng Bao. Ang mga pagtutukoy at katuwiran sa disenyo ay magagamit sa papel na BLAKE3. Ang laki ng default na output ay 256 bit.

Sa pagsubok ng henerasyon ng hash para sa isang 16 KB file, BLAKE3 na may 256-bit key lumalagpas sa SHA3-256 ng 17 beses, SHA-256 ng 14 na beses, SHA-512 9 beses, SHA-1 6 beses at BLAKE2b 5 beses.

Ito ay isang makabuluhang puwang na nananatili kahit na ang pagproseso ng maraming data, halimbawa BLAKE3 ay naging 8 beses na mas mabilis kaysa sa SHA-256 kapag nagkakalkula ng isang hash para sa 1GB ng random na data.

Ang pagpapabuti ng pagganap ay nakamit sa pamamagitan ng pagbawas ng bilang ng mga pag-ikot mula 10 hanggang 7 at paghihiwalay ng mga bloke ng hiwalay sa 1 KB chunks. Ayon sa mga tagalikha, natagpuan nila ang nakakahimok na patunay sa matematika na maaari kang makakuha ng 7 mga pag-ikot sa halip na 10 habang pinapanatili ang parehong antas ng pagiging maaasahan.

Sa parehong oras, ang ilang mga mananaliksik ay nagpapahayag ng mga pagdududa, naniniwala na kahit na sa kasalukuyan ay 7 na pag-ikot ay sapat upang kontrahin ang lahat ng mga kilalang pag-atake sa mga hash, kung gayon ang 3 karagdagang mga pag-ikot ay maaaring maging kapaki-pakinabang kung ang mga bagong pag-atake ay napansin sa hinaharap.

Tungkol sa BLAKE3

Ang hash function ay idinisenyo para sa mga application tulad ng pagpapatunay ng integridad ng file, pagpapatotoo ng mensahe at pagbuo ng data para sa cryptographic digital na lagda. Ang BLAKE3 ay hindi idinisenyo para sa pag-hash ng mga password, dahil layunin nitong makalkula ang mga hash nang mas mabilis hangga't maaari (para sa mga password, inirerekumenda na gamitin ang mabagal na hash at escrypt, bcrypt, scrypt, o mga function ng Argon2).

Ang pinag-uusapan na pag-andar na hash ay hindi sensitibo sa laki ng data na napoproseso at protektado laban sa paghahanap ng banggaan at pag-atake ng preimage.

Ang algorithm ay binuo ng mga kilalang cryptographer at patuloy na pag-unlad ng BLAKE2 algorithm at ginagamit ang mekanismo ng Bao upang ma-encode ang puno ng blockchain. Hindi tulad ng BLAKE2 (BLAKE2b, BLAKE2s), BLAKE3 nag-aalok ng isang solong algorithm para sa lahat ng mga platform na hindi nakatali sa lapad ng bit at laki ng hash.

Bilang ang block split, sa BLAKE3 ang stream ay nahahati sa 1 KB chunks at ang bawat hash fragment ay nakapag-iisa. Ang isang malaking hash ay nabuo batay sa mga hash ng mga piraso batay sa Merkle binary tree.

Pinapayagan ng paghihiwalay na ito ang paglutas ng problema sa pag-parallelize ng pagproseso ng data kapag nagkakalkula ng isang hash; halimbawa, maaari mong gamitin ang mga tagubilin sa 4-wire SIMD upang sabay na kalkulahin ang 4-block na mga hash. Ang tradisyonal na SHA- * hash ay nagpoproseso ng data ng sunud-sunod.

Iba pa sa Ang mga tampok ng BLAKE3 ay:

  • Application sa mga mode na PRF, MAC, KDF, XOF at bilang normal na hash;
  • Isang algorithm para sa lahat ng mga arkitektura, mabilis sa parehong mga x86-64 system at mga 32-bit na prosesor ng ARM.

Tungkol sa mga pangunahing pagkakaiba sa pagitan ng BLAKE3 at BLAKE2:

  • Ang paggamit ng isang istraktura ng binary na puno upang makamit ang walang limitasyong parallelism sa pagkalkula ng hash.
  • Pagbawas ng bilang ng mga pag-ikot mula 10 hanggang 7.
  • Tatlong mga mode ng pagpapatakbo: Hash, Keyed Hash (HMAC) at Key Generation (KDF).
  • Walang karagdagang overhead kapag nag-hash ng isang susi dahil sa paggamit ng lugar na dating sinakop ng parameter block ng key.
  • Ang built-in na mekanismo upang gumana sa anyo ng Extensible Output Function (XOF) na nagpapahintulot dito
  • parallelization at pagpoposisyon (paghahanap).

Sa wakas kung interesado kang malaman ang tungkol dito, maaari mong suriin ang mga detalye Sa sumusunod na link.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: AB Internet Networks 2008 SL
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.