就当前了解的资料,HMAC与MAC表示相同的意思。
概念
利用哈希算法,以一个密钥和一个消息为输入,生成一个消息摘要作为输出。该密钥只有通讯双方知晓。
应用
HMAC的一个典型应用是用在“挑战/响应”(Challenge/Response)身份认证中
客户端向服务器发出一个验证请求
服务器接到此请求后生成一个随机数并通过网络传输给客户端(此为挑战)
客户端将收到的随机数提供给ePass,由ePass使用该随机数与存储在ePass中的密钥进行HMAC-MD5运算并得到一个结果作为认证证据传给服务器(此为响应)。
与此同时,服务器也使用该随机数与存储在服务器数据库中的该客户密钥进行HMAC-MD5运算,如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是一个合法用户