标签: security
我很想知道HMAC-SHA-1 alogorthm的输出长度是多少?如果使用Base64编码,最终长度是多少?
答案 0 :(得分:4)
20个原始字节,因此ceil(20/3)* 4 = 28字节作为base64。
答案 1 :(得分:3)
任何HMAC的结果都是选择摘要的输出:
要计算数据“text”上的HMAC,我们执行 H(K XOR opad, H(K XOR ipad, text))
要计算数据“text”上的HMAC,我们执行
H(K XOR opad, H(K XOR ipad, text))
你希望H在哪里SHA-1。因此,HMAC-SHA-1的长度与SHA-1的长度相同,即160位或20字节。
Base64编码将3个字节的组扩展为4.因此得到的大小将为ceiling(20/3)×4 = 28个字符。另请注意,由于填充,最后一个字符总是为“=”。