曾梦想执剑走天涯,我是程序猿【AK】
简述概要
连接HMAC-SHA1工作原理以及工具代码
知识图谱
HMAC(Hash-based Message Authentication Code,基于散列的消息认证码)是一种结合了密钥和消息的认证方法,用于同时验证数据的完整性和数据的真实性。HMAC-SHA1 是 HMAC 算法的一种,它使用 SHA-1 散列函数。
HMAC-SHA1 的工作原理如下:
选择一个加密哈希函数(如 SHA-1)。
如果密钥长度大于哈希函数的块大小(对于 SHA-1 是 512 位),则先对密钥进行哈希处理;如果密钥长度小于块大小,则用零填充至块大小。
将处理后的密钥与一个内部的填充常量(ipad)进行异或运算,得到第一个密钥。
对消息进行处理,将消息与第一步得到的密钥进行异或运算。
对结果进行哈希处理。
将第一步得到的密钥与另一个外部的填充常量(opad)进行异或运算,得到第二个密钥。
对上一步的哈希结果与第二步得到的密钥进行异或运算。
对结果进行最终的哈希处理,得到最终的 HMAC