HMAC Generator (ဘရောက်ဇာအတွင်း HMAC-SHA256)

HMAC ကို မြန်မြန်တွက်ချက်ရန်နှင့် signature verification အတွက် အသုံးဝင်သော no-network HMAC SHA256 generation page ဖြစ်သည်။

အရာအားလုံးကို သင်၏ ဘရောက်ဇာအတွင်းတွင် စက်တွင်း လုပ်ဆောင်သည်။ keys နှင့် messages များကို ဘယ်တော့မှ မပို့ဘဲ မသိမ်းဆည်းပါ။

စက်တွင်း တွက်ချက်မှု Storage မရှိ Hex နှင့် Base64
Network သို့ မပို့ပါ

အသုံးပြုပုံ (HMAC signature)

  1. key ကို ထည့်ပါ။ သင်၏ API spec တွင် binary key bytes ပေးထားပါက Hex သို့မဟုတ် Base64 input format ကို ရွေးပါ။
  2. signature လုပ်လိုသော message payload ကို ထည့်ပါ။
  3. output format (Hex / Base64 / Base64URL) ကို ရွေးပြီး ရလဒ်ကို copy လုပ်ပါ။
HMAC သည် မျက်မြင်စာသားမဟုတ်ဘဲ bytes ပေါ်တွင် အလုပ်လုပ်သည်။ UTF-8 encoding, newline ကွာခြားမှုများနှင့် အပို spaces များက ရလဒ်ကို ပြောင်းလဲစေသည်။

ဥပမာများ (test vectors)

ဥပမာ 1 (တိုတောင်းသော စစ်ဆေးမှု)

Input: Key = secret (UTF-8), Message = message (UTF-8)

HMAC-SHA256 (Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256 (Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

ဥပမာ 2 (common phrase)

Input: Key = key, Message = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

မကြာခဏ ဖြစ်တတ်သော မှားယွင်းမှုများ

  • LF နှင့် CRLF newline ကွာခြားမှုကြောင့် signatures မတူနိုင်သည်။
  • leading/trailing whitespace ကို trim လုပ်ခြင်းက API signature matching ကို ချိုးဖျက်နိုင်သည်။
  • Base64URL သည် မကြာခဏ + ကို -, / ကို _, နှင့် = padding မပါခြင်းကို ဆိုလိုသည်။ သင်၏ API spec ကို စစ်ပါ။
  • Hex/Base64 bytes အဖြစ် ဖြန့်ချိထားသော key ကို plain text အဖြစ် ကိုင်တွယ်လျှင် mismatch ဖြစ်သည်။

FAQ

ကျွန်ုပ်၏ key ကို သိမ်းထားပါသလား?

မသိမ်းပါ။ ဤကိရိယာသည် သင်၏ ဘရောက်ဇာအတွင်းတွင် စက်တွင်း တွက်ချက်ပြီး key/message inputs များကို server သို့ မပို့ပါ။

Base64 သို့မဟုတ် Hex?

နှစ်မျိုးစလုံး ပုံမှန်အသုံးများသည်။ သင်၏ API spec နှင့် ကိုက်ညီစေရန် Hex / Base64 / Base64URL output ကို ရွေးနိုင်သည်။

ဘယ် character encoding ကို သုံးသလဲ (UTF-8)?

text input ကို HMAC calculation မလုပ်မီ UTF-8 အဖြစ် encode လုပ်သည်။ binary values များအတွက် Hex/Base64 input ကို အသုံးပြုပါ။

HMAC နှင့် SHA-256 hash တို့၏ ကွာခြားချက်က ဘာလဲ?

SHA-256 သည် plain hash ဖြစ်သည်။ HMAC တွင် message authentication အတွက် secret key တစ်ခုကို ထည့်သွင်းအသုံးပြုသည်။

output မကိုက်ပါ။ ဘာကို စစ်သင့်သလဲ?

key interpretation (text vs bytes), newline handling, whitespace trimming နှင့် Base64URL rules များကို စစ်ပါ။

ဖြည့်စွက်

HMAC ဆိုတာ ဘာလဲ?

HMAC သည် secret key နှင့် hash function ကို အသုံးပြုသော keyed-hash message authentication code ဖြစ်သည်။

SHA-256 နှင့် ကွာခြားချက်

SHA-256 တစ်ခုတည်းတွင် secret key မရှိပါ။ HMAC-SHA256 သည် shared key တစ်ခု လိုအပ်ပြီး signatures အတွက် အသုံးပြုသည်။

ပုံမှန် အသုံးပြုမှုများ

API request signing, webhook verification နှင့် token integrity checks များတွင် အသုံးများသည်။