مخفف HMAC
Hash-based Message Authentication Code
29
در رمزنگاری، کد اصالتسنجی پیام برپایه درهمسازی (HMAC)، ساختار معینی برای محاسبه کد تأیید هویت پیام (MAC) است که شامل یک تابع درهم ساز رمزنگاری در ترکیب با یک کلید رمز است. HMAC نیز مانند هر MAC، میتواند جامعیت داده و اعتبار یک پیام را همزمان بررسی کند. هر تابع درهم ساز رمزنگاری مانند MD5 یا SHA-1، را میتوان برای محاسبهٔ HMAC استفاده کرد. به این ترتیب الگوریتم MAC نتیجه شده، HMAC-MD5 یا HMAC-SHA1 نامیده میشود. قدرت رمزنگاری HMAC به قدرت رمزنگاری تابع درهم ساز به کاررفته در آن، اندازهٔ بیتی طول خروجی درهم ساز آن و اندازه و کیفیت کلید رمزنگاری بستگی دارد.
یک تابع درهم ساز تکراری، پیام را به بلوکهایی با اندازه معین تقسیم میکند و تابع فشردهسازی را روی آنها تکرار میکند. به عنوان مثال، MD5 و SHA-1، روی بلوکهای 512 بیتی عمل میکنند. اندازهٔ خروجی HMAC با انداره تابع درهم ساز به کاررفته در آن یکسان است. (در حالت MD5یا SHA-1، 128 یا 160 بیت). هرچند این اندازه میتواند در صورت لزوم کوتاه شود.
ارسال نظریک تابع درهم ساز تکراری، پیام را به بلوکهایی با اندازه معین تقسیم میکند و تابع فشردهسازی را روی آنها تکرار میکند. به عنوان مثال، MD5 و SHA-1، روی بلوکهای 512 بیتی عمل میکنند. اندازهٔ خروجی HMAC با انداره تابع درهم ساز به کاررفته در آن یکسان است. (در حالت MD5یا SHA-1، 128 یا 160 بیت). هرچند این اندازه میتواند در صورت لزوم کوتاه شود.