ရုပ်ပုံ- FNV-1a 64-bit Hash Algorithm – သဘောတရားဆိုင်ရာ စီးဆင်းမှုပုံကြမ်း

ထုတ်ဝေသည်- ၂၀၂၆၊ ဇန်နဝါရီ ၁၂ UTC ၁၃:၂၇:၅၇
နောက်ဆုံး မွမ်းမံပြင်ဆင်သည်- ၂၀၂၆၊ ဇန်နဝါရီ ၉ UTC ၂၁:၂၆:၅၃

FNV-1a 64-bit hash algorithm ရဲ့ မြင့်မားတဲ့ စီးဆင်းမှုကို ရှင်းပြထားတဲ့ သန့်ရှင်းတဲ့ ရှုခင်း infographic ပါ၊ input byte တွေကနေ ရိုးရှင်းတဲ့ processing loop ကနေ နောက်ဆုံး hash output အထိပါ။


ဤစာမျက်နှာကို လူများတတ်နိုင်သမျှ ဝင်ရောက်ကြည့်ရှုနိုင်စေရန်အတွက် ဤစာမျက်နှာကို အင်္ဂလိပ်မှ စက်ဖြင့် ဘာသာပြန်ထားခြင်းဖြစ်ပါသည်။ ကံမကောင်းစွာဖြင့်၊ စက်ဘာသာပြန်ခြင်းသည် ပြီးပြည့်စုံသောနည်းပညာမဟုတ်သေးသောကြောင့် အမှားအယွင်းများဖြစ်ပေါ်လာနိုင်သည်။ သင်နှစ်သက်ပါက မူရင်းအင်္ဂလိပ်ဗားရှင်းကို ဤနေရာတွင် ကြည့်ရှုနိုင်ပါသည်။

FNV-1a 64-bit Hash Algorithm – Conceptual Flow Diagram

64-bit FNV-1a hash output ထုတ်လုပ်ရန် XOR မှတစ်ဆင့် looping လုပ်ခြင်းနှင့် multiply step များပြုလုပ်ခြင်း input byte များကိုပြသသည့် infographic။

ဤပုံ၏ ရရှိနိုင်သော ဗားရှင်းများ

အောက်တွင် ဒေါင်းလုဒ်လုပ်နိုင်သော ရုပ်ပုံဖိုင်များသည် ဤဝက်ဘ်ဆိုက်ရှိ ဆောင်းပါးများနှင့် စာမျက်နှာများတွင် ထည့်သွင်းထားသော ရုပ်ပုံများထက် ချုံ့မှုနည်းပြီး ရုပ်ထွက်အရည်အသွေးမြင့်မားသည် - ထို့ကြောင့် အရည်အသွေးမြင့်မားပြီး bandwidth သုံးစွဲမှုကို လျှော့ချရန်အတွက် ဖိုင်အရွယ်အစားအတွက် ပိုမိုသင့်တော်အောင် ပြုလုပ်ထားသည်။

ပုံမှန်အရွယ်အစား (1,536 x 1,024)

အရွယ်အစားကြီး (3,072 x 2,048)

အရွယ်အစား အလွန်ကြီးမား (4,608 x 3,072)

အရွယ်အစား အလွန်ကြီး (6,144 x 4,096)

ရယ်စရာကောင်းလောက်အောင် အရွယ်အစားကြီးမား (1,048,576 x 699,051)

  • တင်နေတုန်းပဲ... ;-)

ပုံဖော်ပြချက်

ပုံသည် FNV-1a 64-bit hash algorithm ၏ သဘောတရားအဆင့်တွင် စီးဆင်းမှုကို ရှင်းပြသည့် ကျယ်ပြန့်သော ရှုခင်းကို အခြေခံသည့် ပညာရေးဆိုင်ရာ infographic ပုံတစ်ခုဖြစ်သည်။ ၎င်းသည် စာဖတ်သူကို ဘယ်မှညာသို့ လမ်းညွှန်ရန် နူးညံ့သော pastel အပြာရောင်နှင့် အစိမ်းရောင်များ၊ လုံးဝန်းသော စတုဂံများနှင့် ရိုးရှင်းသော မြှားများပါသည့် သန့်ရှင်းသော အဖြူရောင်နောက်ခံကို အသုံးပြုထားသည်။ ဘယ်ဘက်အစွန်ဆုံးတွင် "Input bytes" ဟု အမည်ပေးထားသော စတုဂံငယ်များ၏ ဒေါင်လိုက်အစုအဝေးသည် ဝင်လာသောဒေတာစီးကြောင်းကို ကိုယ်စားပြုသည်။ ဤ byte block များကို အနည်းငယ် offset လုပ်ထားပြီး algorithm သည် ဒေတာတစ်ခုကို တစ်ကြိမ်လျှင် တစ်ခုချင်းစီ လုပ်ဆောင်ကြောင်း အကြံပြုထားသည်။ မြှားသည် ဤအစုအဝေးမှ "Hash state" သို့မဟုတ် "Current state" ဟု အမည်ပေးထားသော ပိုကြီးသော လုံးဝန်းသော box ထဲသို့ ဦးတည်နေပြီး၊ လည်ပတ်နေသော internal value တစ်ခုကို အပ်ဒိတ်လုပ်နေကြောင်း ညွှန်ပြသည်။

ဤ state box မှ၊ diagram သည် loop flow ထဲသို့ ဝင်ရောက်သည်။ loop ကို အလယ်ဗဟို box နှစ်ခုကို ပတ်ထားသော ကွေးညွှတ်မြှားဖြင့် ရေးဆွဲထားပြီး၊ input byte တစ်ခုစီအတွက် repetition ၏ အယူအဆကို အမြင်အာရုံဖြင့် အားဖြည့်ပေးသည်။ ပထမအလယ်ဗဟို box ကို "XOR with state" ဟု တံဆိပ်ကပ်ထားပြီး state box ထဲသို့ ပေါင်းစည်းထားသော byte icon ငယ်တစ်ခုကို ပြသထားပြီး၊ မည်သည့် concrete constant များ သို့မဟုတ် bit pattern များကိုမျှ အမည်မပေးဘဲ combination operation တစ်ခုကို အကြံပြုထားသည်။ ဒုတိယ box ကို "Multiply state" ဟု တံဆိပ်ကပ်ထားပြီး XOR box ပြီးနောက် တိုက်ရိုက်ချိတ်ဆက်ထားပြီး၊ state ကို ပိုမိုပြောင်းလဲစေသည့် ဒုတိယ conceptual step ကို သရုပ်ဖော်ထားသည်။ box နှစ်ခုကို အလျားလိုက် ချိန်ညှိထားပြီး ၎င်းတို့အကြားတွင် မြှားများပါရှိပြီး loop မြှားများသည် multiply box မှ input-processing path ဆီသို့ ပြန်လှည့်သွားသောကြောင့် ဤအဆင့်နှစ်ဆင့်သည် byte တိုင်းအတွက် repetition လုပ်ကြောင်း ရှင်းရှင်းလင်းလင်း သိသာစေသည်။

ကွင်းဆက်၏ ညာဘက်တွင် "After all bytes" ဟု အမည်ပေးထားသော ရဲရင့်သောမြှားသည် "64-bit hash output" ဟု အမည်ပေးထားသော နောက်ဆုံးစတုဂံကြီးဆီသို့ ညွှန်ပြနေသည်။ ဤ output box သည် algorithm ၏ နောက်ဆုံးထုတ်ကုန်ဖြစ်ကြောင်း ပေါ်လွင်စေရန်အတွက် အခြား output box များထက် အနည်းငယ်မှောင်ပြီး အမြင်အာရုံတွင် ထင်ရှားသည်။ box ထဲတွင် text label သာရှိပြီး နံပါတ်များ သို့မဟုတ် bit diagram များ မပါဝင်သောကြောင့် အကြောင်းအရာကို ယေဘုယျကျစေပြီး မတိကျမှုများကို ခံနိုင်ရည်ရှိသည်။

infographic တစ်လျှောက်တွင်၊ ရိုးရှင်းသော byte သင်္ကေတများနှင့် စက်ဝိုင်းမြှားများကဲ့သို့သော သေးငယ်သည့် icon များကို ရှုပ်ထွေးမှုမရှိဘဲ ရှင်းလင်းပြတ်သားစေရန် အသုံးပြုထားသည်။ စာလုံးပုံစံသည် ကြီးမားပြီး ဖော်ရွေပြီး သင်ယူသူများအတွက် ဒီဇိုင်းထုတ်ထားပြီး label တိုင်းကို သင်္ချာသင်္ကေတအစား ရိုးရှင်းသောဘာသာစကားဖြင့် ရေးသားထားသည်။ "XOR" နှင့် "Multiply" ကဲ့သို့သော အဆင့်မြင့်အမည်များမှလွဲ၍ သီးခြား constant များ၊ offset များ၊ primes များ သို့မဟုတ် exact operations များကို ရည်ညွှန်းထားခြင်းမရှိဘဲ အကောင်အထည်ဖော်မှုများ ကွဲပြားနေသော်လည်း diagram သည် ယေဘုယျအားဖြင့် မှန်ကန်နေစေရန် သေချာစေသည်။

အလုံးစုံသော်၊ ဖွဲ့စည်းမှုသည် ဘယ်မှညာသို့ သဘာဝကျကျ ဖတ်ရှုနိုင်သည်- ဒေတာများကို byte အဖြစ် ဝင်ရောက်ပြီး running state နှင့် ပေါင်းစပ်ကာ two-step loop တွင် အကြိမ်ကြိမ်ပြောင်းလဲကာ နောက်ဆုံးတွင် 64-bit hash value အဖြစ် ထုတ်လွှတ်သည်။ ရုပ်ထွက်ပုံစံသည် ခေတ်မီပြီး ချဉ်းကပ်ရလွယ်ကူသောကြောင့် algorithm ကို ကြောက်ရွံ့မှုနည်းပါးစေပြီး FNV-1a လုပ်ငန်းစဉ်၏ မရှိမဖြစ်ဖွဲ့စည်းပုံကို ဖော်ပြပေးသည်။

ပုံသည်- Fowler-Noll-Vo FNV1a-64 ဟက်ရှ်ကုဒ်တွက်စက်

Bluesky တွင်မျှဝေပါ။Facebook တွင်မျှဝေပါ။LinkedIn တွင်မျှဝေပါ။Tumblr တွင်မျှဝေပါ။X တွင်မျှဝေပါ။ပင်တရက်စ်တွင် ပင်ထားပါReddit တွင်မျှဝေပါ။