క్రిప్టోగ్రాఫిక్ హాష్ ఫంక్షన్ BLAKE3 1.0 యొక్క సూచన అమలు విడుదల

క్రిప్టోగ్రాఫిక్ హాష్ ఫంక్షన్ BLAKE3 1.0 యొక్క రిఫరెన్స్ ఇంప్లిమెంటేషన్ విడుదల చేయబడింది, SHA-3 స్థాయిలో విశ్వసనీయతను నిర్ధారించేటప్పుడు దాని అధిక హాష్ గణన పనితీరుకు ప్రసిద్ది చెందింది. 16 KB ఫైల్ కోసం హాష్ జనరేషన్ పరీక్షలో, 3-బిట్ కీతో BLAKE256 SHA3-256ని 17 సార్లు, SHA-256ని 14 సార్లు, SHA-512ని 9 సార్లు, SHA-1ని 6 సార్లు, మరియు BLAKE2b - 5 సార్లు. చాలా పెద్ద మొత్తంలో డేటాను ప్రాసెస్ చేస్తున్నప్పుడు గణనీయమైన గ్యాప్ మిగిలి ఉంది, ఉదాహరణకు, 3GB యాదృచ్ఛిక డేటా కోసం హాష్‌ను లెక్కించేటప్పుడు BLAKE256 SHA-8 కంటే 1 రెట్లు వేగంగా ఉంటుంది. BLAKE3 రిఫరెన్స్ ఇంప్లిమెంటేషన్ కోడ్ డ్యూయల్ పబ్లిక్ డొమైన్ (CC0) మరియు Apache 2.0 లైసెన్స్ క్రింద C మరియు రస్ట్ వెర్షన్‌లలో అందుబాటులో ఉంది.

క్రిప్టోగ్రాఫిక్ హాష్ ఫంక్షన్ BLAKE3 1.0 యొక్క సూచన అమలు విడుదల

హాష్ ఫంక్షన్ ఫైల్ సమగ్రతను తనిఖీ చేయడం, సందేశ ప్రామాణీకరణ మరియు క్రిప్టోగ్రాఫిక్ డిజిటల్ సంతకాల కోసం డేటాను రూపొందించడం వంటి అనువర్తనాల కోసం రూపొందించబడింది. BLAKE3 పాస్‌వర్డ్‌లను హ్యాషింగ్ చేయడానికి ఉద్దేశించబడలేదు, ఎందుకంటే ఇది వీలైనంత త్వరగా హ్యాష్‌లను లెక్కించడం లక్ష్యంగా పెట్టుకుంది (పాస్‌వర్డ్‌ల కోసం, స్లో హాష్ ఫంక్షన్‌లు yescrypt, bcrypt, scrypt లేదా Argon2ని ఉపయోగించమని సిఫార్సు చేయబడింది). పరిశీలనలో ఉన్న హాష్ ఫంక్షన్ హాష్ చేసిన డేటా పరిమాణానికి సున్నితంగా ఉంటుంది మరియు ఘర్షణ ఎంపిక మరియు ప్రీఇమేజ్ ఫైండింగ్‌పై దాడుల నుండి రక్షించబడుతుంది.

ఈ అల్గోరిథం ప్రసిద్ధ క్రిప్టోగ్రఫీ నిపుణులచే అభివృద్ధి చేయబడింది (జాక్ ఓ'కానర్, జీన్-ఫిలిప్ ఆమస్సన్, శామ్యూల్ నెవ్స్, జూకో విల్కాక్స్-ఓ'హెర్న్) మరియు BLAKE2 అల్గారిథమ్ అభివృద్ధిని కొనసాగిస్తుంది మరియు బ్లాక్ చైన్ ట్రీని ఎన్‌కోడ్ చేయడానికి బావో యంత్రాంగాన్ని ఉపయోగిస్తుంది. . BLAKE2 (BLAKE2b, BLAKE2s) వలె కాకుండా, BLAKE3 అన్ని ప్లాట్‌ఫారమ్‌ల కోసం ఒకే అల్గారిథమ్‌ను అందిస్తుంది, బిట్ డెప్త్ మరియు హాష్ పరిమాణంతో ముడిపడి ఉండదు.

రౌండ్‌ల సంఖ్యను 10 నుండి 7కి తగ్గించడం మరియు 1 KB ముక్కలలో విడివిడిగా బ్లాక్‌లను హ్యాషింగ్ చేయడం ద్వారా పెరిగిన పనితీరు సాధించబడింది. సృష్టికర్తల ప్రకారం, అదే స్థాయి విశ్వసనీయతను కొనసాగిస్తూ 7కి బదులుగా 10 రౌండ్‌లతో పొందడం సాధ్యమవుతుందని వారు నమ్మదగిన గణిత రుజువును కనుగొన్నారు (స్పష్టత కోసం, మేము మిక్సర్‌లో పండ్లను కలపడం ద్వారా ఒక ఉదాహరణ ఇవ్వవచ్చు - 7 సెకన్ల తర్వాత పండు ఇప్పటికే పూర్తిగా మిశ్రమంగా ఉంది మరియు అదనపు 3 సెకన్లు మిశ్రమం యొక్క స్థిరత్వాన్ని ప్రభావితం చేయవు). అయినప్పటికీ, కొంతమంది పరిశోధకులు సందేహాలను వ్యక్తం చేస్తున్నారు, హ్యాష్‌లపై తెలిసిన అన్ని దాడులను ఎదుర్కోవడానికి ప్రస్తుతం 7 రౌండ్‌లు సరిపోతాయని నమ్ముతారు, భవిష్యత్తులో కొత్త దాడులను గుర్తించినట్లయితే అదనపు 3 రౌండ్‌లు ఉపయోగకరంగా ఉండవచ్చు.

బ్లాక్‌లుగా విభజించడం కోసం, BLAKE3లో స్ట్రీమ్ 1 KB ముక్కలుగా విభజించబడింది మరియు ప్రతి ముక్క స్వతంత్రంగా హ్యాష్ చేయబడుతుంది. ముక్కల హాష్‌ల ఆధారంగా, బైనరీ మెర్కిల్ ట్రీ ఆధారంగా ఒక పెద్ద హాష్ ఏర్పడుతుంది. హ్యాష్‌లను లెక్కించేటప్పుడు డేటా ప్రాసెసింగ్‌ను సమాంతరంగా చేసే సమస్యను పరిష్కరించడానికి ఈ విభజన మమ్మల్ని అనుమతిస్తుంది - ఉదాహరణకు, మీరు 4 బ్లాక్‌ల హ్యాష్‌లను ఏకకాలంలో లెక్కించడానికి 4-థ్రెడ్ SIMD సూచనలను ఉపయోగించవచ్చు. సాంప్రదాయ SHA-* హాష్ ఫంక్షన్‌లు డేటాను వరుసగా ప్రాసెస్ చేస్తాయి.

BLAKE3 యొక్క లక్షణాలు:

  • అధిక పనితీరు, BLAKE3 MD5, SHA-1, SHA-2, SHA-3 మరియు BLAKE2 కంటే చాలా వేగంగా ఉంటుంది.
  • SHA-2 లొంగిపోయే సందేశం పొడిగింపు దాడులకు నిరోధకతతో సహా భద్రత;
  • రస్ట్‌లో అందుబాటులో ఉంది, SSE2, SSE4.1, AVX2, AVX-512 మరియు NEON సూచనల కోసం ఆప్టిమైజ్ చేయబడింది.
  • ఎన్ని థ్రెడ్‌లు మరియు SIMD ఛానెల్‌లపై గణనల సమాంతరీకరణను నిర్ధారించడం.
  • స్ట్రీమ్‌ల యొక్క పెరుగుతున్న నవీకరణ మరియు ధృవీకరించబడిన ప్రాసెసింగ్ యొక్క అవకాశం;
  • PRF, MAC, KDF, XOF మోడ్‌లలో మరియు సాధారణ హాష్‌గా ఉపయోగించండి;
  • x86-64 సిస్టమ్‌లు మరియు 32-బిట్ ARM ప్రాసెసర్‌లు రెండింటిలోనూ వేగవంతమైన అన్ని ఆర్కిటెక్చర్‌ల కోసం ఒకే అల్గారిథమ్.

BLAKE3 మరియు BLAKE2 మధ్య ప్రధాన తేడాలు:

  • హాష్ గణనలలో అపరిమిత సమాంతరతను అనుమతించే బైనరీ ట్రీ స్ట్రక్చర్ యొక్క ఉపయోగం.
  • రౌండ్ల సంఖ్యను 10 నుండి 7కి తగ్గించడం.
  • మూడు ఆపరేషన్ మోడ్‌లు: హ్యాషింగ్, కీ (HMAC)తో హ్యాషింగ్ మరియు కీ జనరేషన్ (KDF).
  • గతంలో కీ పారామితులు బ్లాక్ ద్వారా ఆక్రమించబడిన ప్రాంతాన్ని ఉపయోగించడం వలన కీతో హ్యాష్ చేసినప్పుడు అదనపు ఓవర్ హెడ్ లేదు.
  • విస్తరించిన ఫలితం (XOF, ఎక్స్‌టెండబుల్ అవుట్‌పుట్ ఫంక్షన్)తో ఫంక్షన్ రూపంలో అంతర్నిర్మిత ఆపరేటింగ్ మెకానిజం, సమాంతరీకరణ మరియు స్థానాలను అనుమతిస్తుంది (సీక్).

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి