HMAC генератор (Хөтөч дээр HMAC-SHA256 тооцоолох)
HMAC SHA256-г шууд үүсгэх тооцоолуур хэрэгсэл. Түлхүүр болон оролтууд сервер рүү илгээгдэхгүй, хадгалагдахгүй.
Текст/Hex/Base64 оролт болон Hex/Base64 гаралтыг дэмжинэ. Хөтөчийн стандарт Crypto API ашиглан найдвартай тооцоолдог.
Оролт ба Гаралт
Энэ хуудас нь тооцооллыг бүхэлд нь хөтөч дотор гүйцэтгэх бөгөөд өгөгдөл дамжуулахгүй.
* API үзүүлэлтийн дагуу 'байт дараалал' чухал юм. Хэрэв түлхүүр нь бинари бол Hex/Base64 форматаар оруулна уу.
Сонголтууд
Үйлдлийн систем эсвэл хуулж тавихаас хамаарч шинэ мөрний код өөр байвал үр дүн өөрчлөгдөнө.
API гарын үсэг нь 'яг таарсан' байхыг шаарддаг тул хэвээр үлдээхийг зөвлөж байна.
Хэрэглээ
HMAC гарын үсэг үүсгэх үндсэн 3 алхам.
- 1 Түлхүүр оруулах (Бинари бол Hex / Base64 сонгоно уу)
- 2 Мессеж оруулах (Гарын үсэг зурах мөр / ачаалал)
- 3 Гаралтын формат (Hex / Base64) сонгоод хуулж авах
HMAC нь 'тэмдэгт мөр' дээр биш 'байт дараалал' дээр тооцоологддог. Ижил харагдаж байсан ч тэмдэгт кодчилол, шинэ мөр эсвэл илүүдэл зай өөр бол үр дүн өөр байна (UTF-8 гэж үзнэ).
Жишээнүүд (Шалгах зориулалттай тест векторын утгууд)
Оролтын талбаруудыг бөглөхийн тулд 'Жишээ ачаалах' дээр дарна уу.
Түгээмэл алдаанууд
Шинэ мөрний боловсруулалт өөр бол үр дүн өөрчлөгдөнө.
Гарын үсэг нь яг таарсан байх ёстой тул зайг цэвэрлэх нь зөрүү үүсгэж магадгүй.
Base64URL нь ихэвчлэн +→-, /→_ ашиглаж, = тэмдгийг орхидог. Техникийн үзүүлэлтийг шалгана уу.
Жишээ: 'deadbeef'-ийг 'текст' гэж оруулах ба '0xDE 0xAD... байт дараалал' гэж оруулах нь өөр юм.
Нэмэлт мэдээлэл
Нууц түлхүүр болон мессежээс гарын үсэг үүсгэх механизм. Түлхүүргүйгээр гуравдагч этгээд ижил үр дүнг гаргаж чадахгүй.
SHA-256 нь 'hash' (хеш), харин HMAC нь 'keyed hash' (түлхүүртэй хеш буюу гарын үсэг) юм.
API гарын үсэг, Webhook баталгаажуулалт, өгөгдлийн өөрчлөлтийг илрүүлэх зэрэгт ашигладаг.
Асуулт хариулт
Түлхүүр хадгалагддаг уу?
Үгүй. Энэ хэрэгсэл нь хөтөч дотор тооцоолол хийдэг бөгөөд түлхүүр эсвэл мессежийг сервер рүү илгээдэггүй. (※ Дундын компьютер дээр ашигласны дараа арилгахыг зөвлөж байна)
Base64 үү, Hex үү?
Хоёуланг нь ашигладаг. Гаралтын форматыг (Hex / Base64 / Base64URL) сонгох боломжтой. API-ийн техникийн шаардлагын дагуу сонгоно уу.
Тэмдэгтийн кодчилол?
UTF-8 гэж үзнэ. Текст оролтыг тооцоолохын тулд UTF-8 байт болгон хөрвүүлдэг. Бинари өгөгдлийн хувьд Hex / Base64 оролтыг ашиглана уу.
HMAC болон SHA-256 хеш хоёрын ялгаа?
SHA-256 нь 'хеш', HMAC нь 'түлхүүртэй хеш' юм. Түлхүүрүүд таарахгүй бол ижил үр дүн гарахгүй.
Үр дүн таарахгүй байна
Түгээмэл шалтгаанууд нь: (1) Түлхүүр боловсруулалт (Текст ба Бинари), (2) Шинэ мөр, (3) Хоосон зай, (4) Base64URL. Дээрх алдаануудыг дарааллаар нь шалгана уу.