የክሪፕቶግራፊክ ሃሽ ተግባር የማጣቀሻ ትግበራ መለቀቅ BLAKE3 1.0

በSHA-3 ደረጃ አስተማማኝነትን እያረጋገጠ ባለበት ከፍተኛ የሃሽ ስሌት አፈጻጸሙ የሚታወቀው የBLAKE1.0 3 ምስጠራ ሃሽ ተግባር ዋቢ ትግበራ ተለቋል። በሃሽ ማመንጨት ሙከራ ለ16 ኪባ ፋይል፣ BLAKE3 ባለ 256-ቢት ቁልፍ ከSHA3-256 በ17 ጊዜ፣ SHA-256 በ14 ጊዜ፣ SHA-512 በ9 ጊዜ፣ SHA-1 በ6 ጊዜ እና BLAKE2b - 5 ጊዜ. በጣም ብዙ መጠን ያለው መረጃን ሲያካሂድ ትልቅ ክፍተት ይቀራል፣ ለምሳሌ፣ BLAKE3 ለ256GB የዘፈቀደ ውሂብ ሃሽ ሲሰላ ከSHA-8 በ1 እጥፍ ፈጠነ። የBLAKE3 ማጣቀሻ ትግበራ ኮድ በC እና Rust ስሪቶች በሁለት የህዝብ ጎራ (CC0) እና Apache 2.0 ፍቃድ ይገኛል።

የክሪፕቶግራፊክ ሃሽ ተግባር የማጣቀሻ ትግበራ መለቀቅ BLAKE3 1.0

የሃሽ ተግባር እንደ የፋይል ትክክለኛነት መፈተሽ፣ የመልዕክት ማረጋገጥ እና ለምስጠራ ግራፊክ ዲጂታል ፊርማ መረጃ ማመንጨት ላሉ መተግበሪያዎች የተነደፈ ነው። BLAKE3 በተቻለ ፍጥነት ሃሽ ለማስላት ስለሚፈልግ የይለፍ ቃሎችን ለመጥለፍ የታሰበ አይደለም (ለይለፍ ቃል ቀርፋፋ የሃሽ ተግባራት yescrypt፣ bcrypt፣ scrypt ወይም Argon2 መጠቀም ይመከራል)። እየተገመገመ ያለው የሃሽ ተግባር ለሃሼድ መረጃ መጠን ደንታ የሌለው እና ከግጭት ምርጫ እና ቅድመ እይታ ፍለጋ ከሚደረጉ ጥቃቶች የተጠበቀ ነው።

አልጎሪዝም የተዘጋጀው በታዋቂዎቹ የክሪፕቶግራፊ ባለሙያዎች (ጃክ ኦኮንሰር፣ ዣን-ፊሊፕ አውማሰን፣ ሳሙኤል ኔቭስ፣ ዞኮ ዊልኮክስ-ኦሄርን) ሲሆን የBLAKE2 ስልተ-ቀመር እድገትን የቀጠለ እና የ Bao ዘዴን በመጠቀም የማገጃ ሰንሰለት ዛፍን ለመደበቅ ይጠቀማል። . ከ BLAKE2 (BLAKE2b፣ BLAKE2s) በተለየ፣ BLAKE3 ለሁሉም መድረኮች አንድ ነጠላ ስልተ ቀመር ያቀርባል፣ ከቢት ​​ጥልቀት እና ከሃሽ መጠን ጋር የተሳሰረ አይደለም።

የዙር ብዛትን ከ10 ወደ 7 በመቀነስ እና ሃሺንግ ብሎኮችን በ1 ኪሎቢቢ ቁራጭ በመቀነስ አፈፃፀሙን ማሳደግ ተችሏል። እንደ ፈጣሪዎቹ ገለጻ፣ ተመሳሳይ የአስተማማኝነት ደረጃን እየጠበቁ በ7 ሳይሆን በ10 ዙሮች ማግኘት እንደሚቻል አሳማኝ የሂሳብ ማረጋገጫ አግኝተዋል (ለግልጽነት ፍሬን በቀላቃይ ውስጥ በማደባለቅ ምሳሌ ልንሰጥ እንችላለን - ከ 7 ሰከንድ በኋላ። ፍሬው ቀድሞውኑ ሙሉ በሙሉ የተቀላቀለ ነው, እና ተጨማሪ 3 ሰከንድ ድብልቅ ጥንካሬን አይጎዳውም). ይሁን እንጂ አንዳንድ ተመራማሪዎች ጥርጣሬዎችን ይገልጻሉ, ምንም እንኳን በአሁኑ ጊዜ 7 ዙሮች በሃሽ ላይ የሚታወቁትን ሁሉንም ጥቃቶች ለመቋቋም በቂ ቢሆኑም, ለወደፊቱ አዳዲስ ጥቃቶች ከታወቁ ተጨማሪ 3 ዙሮች ጠቃሚ ሊሆኑ ይችላሉ.

በብሎኮች መከፋፈልን በተመለከተ፣ በ BLAKE3 ዥረቱ በ1 ኪባ ቁርጥራጮች የተከፈለ እና እያንዳንዱ ቁራጭ ራሱን የቻለ ነው። በቁራጭ ሀሽ ላይ በመመስረት አንድ ትልቅ ሃሽ በሁለትዮሽ መርክል ዛፍ ላይ ተመስርቷል። ይህ ክፍፍል ሃሽ በማስላት ጊዜ የውሂብ ሂደትን ትይዩ የማድረግ ችግርን እንድንፈታ ያስችለናል - ለምሳሌ 4-threaded SIMD መመሪያዎችን በአንድ ጊዜ የ 4 ብሎኮችን ሃሽ ለማስላት መጠቀም ይችላሉ። ባህላዊ SHA-* hash ተግባራት ውሂብን በቅደም ተከተል ያካሂዳሉ።

የBLAKE3 ባህሪዎች

  • ከፍተኛ አፈጻጸም፣ BLAKE3 ከMD5፣ SHA-1፣ SHA-2፣ SHA-3 እና BLAKE2 በጣም ፈጣን ነው።
  • ደህንነት፣ SHA-2 ለሚደርስባቸው የመልእክት ማራዘሚያ ጥቃቶች መቋቋምን ጨምሮ፣
  • በዝገት የሚገኝ፣ ለSSE2፣ SSE4.1፣ AVX2፣ AVX-512 እና NEON መመሪያዎች የተመቻቸ።
  • በማንኛውም የክሮች እና የሲምዲ ቻናሎች ላይ ስሌቶችን ትይዩ ማድረግን ማረጋገጥ።
  • የጅረቶችን የመጨመር እና የተረጋገጠ ሂደት የመጨመር ዕድል;
  • በPRF፣ MAC፣ KDF፣ XOF ሁነታዎች እና እንደ መደበኛ ሃሽ ይጠቀሙ።
  • ለሁሉም አርክቴክቸር አንድ ነጠላ ስልተ-ቀመር፣ በሁለቱም x86-64 ስርዓቶች እና ባለ 32-ቢት ARM ፕሮሰሰር ላይ ፈጣን።

በ BLAKE3 እና BLAKE2 መካከል ያሉ ዋና ዋና ልዩነቶች፡-

  • በሃሽ ስሌቶች ውስጥ ያልተገደበ ትይዩነትን የሚፈቅድ የሁለትዮሽ ዛፍ መዋቅር አጠቃቀም።
  • ዙሮችን ከ10 ወደ 7 በመቀነስ።
  • ሶስት የአሠራር ዘዴዎች፡- hashing፣ hashing በቁልፍ (HMAC) እና በቁልፍ ማመንጨት (KDF)።
  • ከዚህ ቀደም በቁልፍ መመዘኛዎች የተያዘውን ቦታ በመጠቀማቸው በቁልፍ ሲጠጉ ምንም ተጨማሪ ትርፍ የለም።
  • አብሮገነብ የአሠራር ዘዴ በተግባራዊ መልክ ከተራዘመ ውጤት (XOF ፣ ሊራዘም የሚችል የውጤት ተግባር) ፣ ትይዩ እና አቀማመጥን በመፍቀድ (መፈለግ)።

ምንጭ: opennet.ru

አስተያየት ያክሉ