HMAC یا Hash-based Message Authentication Code روشی برای تولید امضای پیام با استفاده از یک کلید مخفی و تابع هش است. برخلاف هش ساده، فقط کسی که کلید را دارد میتواند امضای معتبر بسازد یا آن را بررسی کند. این ابزار برای تولید HMAC با الگوریتمهایی مثل SHA256، SHA512، SHA1 و MD5 کاربرد دارد و برای تست امضای API، webhook و پیامهای حساس در محیط توسعه مفید است.
HMAC یک کد احراز هویت پیام است که از ترکیب پیام، کلید مخفی و تابع هش ساخته میشود و هم اصالت پیام را بررسی میکند هم تغییر نکردن آن را.
هش ساده فقط از متن ساخته میشود و هرکسی میتواند آن را تولید کند. HMAC به کلید مخفی نیاز دارد، پس برای امضای API و webhook مناسبتر است.
برای استفادههای جدید معمولاً HMAC-SHA256 یا HMAC-SHA512 انتخاب بهتری است. MD5 قدیمی است و بهتر است فقط برای سازگاری با سیستمهای قدیمی استفاده شود.
در امضای درخواستهای API، بررسی webhook، امضای payload و الگوریتمهایی مثل HS256 در JWT از HMAC استفاده میشود.
خیر. محاسبه HMAC در مرورگر انجام میشود و کلید مخفی برای پردازش به سرور ارسال نمیشود.
پیام یا payload را وارد کنید، secret key را مشخص کنید و الگوریتمی مثل SHA256 را انتخاب کنید. خروجی HMAC را با امضای سمت سرور یا مقدار مرجع مقایسه کنید. برای secretهای واقعی، مقدار کلید را در ابزارهای آنلاین وارد نکنید و آن را در محیط امن نگهداری کنید.