Adler-32 ဟက်ရှ်ကုဒ်တွက်စက်
ထုတ်ဝေသည်- ၂၀၂၅၊ ဖေဖော်ဝါရီ ၁၇ UTC ၁၈:၀၇:၃၄
နောက်ဆုံး မွမ်းမံပြင်ဆင်သည်- ၂၀၂၆၊ ဇန်နဝါရီ ၁၂ UTC ၀၉:၁၄:၂၇
Adler-32 Hash Code Calculator
Adler-32 hash function သည် ရိုးရှင်းမြန်ဆန်ပြီး data integrity verification အတွက် မကြာခဏအသုံးပြုလေ့ရှိသော checksum algorithm တစ်ခုဖြစ်သည်။ ၎င်းကို Mark Adler မှ ဒီဇိုင်းထုတ်ထားပြီး data compression အတွက် zlib ကဲ့သို့သော application များတွင် အသုံးများသည်။ cryptographic hash function များ (SHA-256 ကဲ့သို့) နှင့်မတူဘဲ Adler-32 ကို လုံခြုံရေးအတွက် ဒီဇိုင်းထုတ်ထားခြင်းမဟုတ်ဘဲ error အမြန်စစ်ဆေးရန်အတွက် ဒီဇိုင်းထုတ်ထားသည်။ ၎င်းသည် 32-bit (4 bytes) checksum ကို တွက်ချက်ပြီး hexadecimal စာလုံး ၈ လုံးဖြင့် ကိုယ်စားပြုလေ့ရှိသည်။
ထုတ်ဖော်ချက်အပြည့်အစုံ- ဤစာမျက်နှာတွင်အသုံးပြုထားသော hash function ၏ သီးခြားအကောင်အထည်ဖော်မှုကို ကျွန်ုပ်မရေးခဲ့ပါ။ ၎င်းသည် PHP ပရိုဂရမ်းမင်းဘာသာစကားဖြင့် ပါဝင်သော စံလုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ အဆင်ပြေစေရန် ဤနေရာတွင် လူသိရှင်ကြားရစေရန် ဝဘ်အင်တာဖေ့စ်ကိုသာ ပြုလုပ်ထားပါသည်။
Adler-32 Hash Algorithm အကြောင်း
ကျွန်တော်က သင်္ချာပညာရှင်တော့ မဟုတ်ပေမယ့် ဒီ hash function ကို နေ့စဉ်သုံး ဥပမာတစ်ခုနဲ့ ရှင်းပြပါ့မယ်။ တခြား cryptographic hash function တွေနဲ့ မတူဘဲ Adler32 က ရိုးရှင်းတဲ့ checksum function တစ်ခုပါ။ ဒါကြောင့် ဒါက သိပ်မဆိုးပါဘူး ;-)
သင့်မှာ နံပါတ်တပ်ထားတဲ့ tile လေးတွေပါတဲ့ အိတ်တစ်လုံးရှိတယ်လို့ မြင်ယောင်ကြည့်ပါ၊ တစ်ခုချင်းစီက သင့်ဒေတာရဲ့ အက္ခရာတစ်လုံး ဒါမှမဟုတ် အစိတ်အပိုင်းတစ်ခုကို ကိုယ်စားပြုပါတယ်။ ဥပမာအားဖြင့် "Hi" ဆိုတဲ့ စကားလုံးမှာ tile နှစ်ခုပါရှိပါတယ်- တစ်ခုက "H" နဲ့ တစ်ခုက "i" ဖြစ်ပါတယ်။
ယခု၊ ဤကြွေပြားများဖြင့် ရိုးရှင်းသောအရာနှစ်ခုကို လုပ်ဆောင်သွားပါမည်။
အဆင့် ၁: ၎င်းတို့ကို ပေါင်းပါ (ပေါင်းလဒ် A)
- နံပါတ် ၁ ကနေစပါ (ပုံမှန်အတိုင်းပါပဲ)။
- ဤစုစုပေါင်းထဲသို့ ကြွေပြားတစ်ခုစီမှ နံပါတ်ကို ထည့်ပါ။
အဆင့် ၂: စုစုပေါင်း (Sum B) ၏ လက်ရှိစုစုပေါင်းကို သိမ်းဆည်းထားပါ။
- Sum A မှာ tile အသစ်တစ်ခုရဲ့ နံပါတ်ကို ထည့်တိုင်း Sum A ရဲ့ တန်ဖိုးအသစ်ကို Sum B မှာ ပေါင်းထည့်ပေးပါတယ်။
- ဒင်္ဂါးပြားတွေ စီထားသလိုပါပဲ။ အပေါ်ကနေ ဒင်္ဂါးပြားတစ်ပြားထပ်ထည့်ပါ (ပေါင်းလဒ် A)၊ ပြီးရင် စုစုပေါင်း စီထားတဲ့ အမြင့်အသစ်ကို ရေးမှတ်ပါ (ပေါင်းလဒ် B)။
အဆုံးမှာ စုစုပေါင်းနှစ်ခုကို ကပ်ပြီး တစ်ခုတည်းသော ကြီးမားတဲ့ ဂဏန်းတစ်ခု ဖြစ်အောင် လုပ်ရပါမယ်။ အဲဒီ ကြီးမားတဲ့ ဂဏန်းကတော့ Adler-32 checksum ပါ။
နောက်ထပ်စာဖတ်ခြင်း။
ဤပို့စ်ကို သင်နှစ်သက်ပါက၊ ဤအကြံပြုချက်များကို သင်လည်း နှစ်သက်နိုင်ပါသည်-
