信息安全工程第7章杂凑函数.ppt

7.1.1 杂凑函数的定义   杂凑(Hash)函数是将任意长的数字串m映射成一个较短的定长输出数字串H的函数,以h表示,为便于计算也可表示为h(m)。通常称H=h(m)为m的杂凑值,也称为杂凑码、杂凑结果、哈希值或简称杂凑。   该定义包含两个层面的意思:①这个H无疑打上了输入数字串的烙印,因此又称其为输入m的数字指纹(DigitalFingerPrint);②h是多对一映射,因此不能从H求出原来的m,但可以验证任一给定序列m′是否与m有相同的杂凑值。因此,我们经常将杂凑函数称为单向杂凑函数。   杂凑函数还可按其是否有密钥控制划分为两大类:一类有密钥控制,以h(k,m)表示,为密码杂凑函数或钥控杂凑函数;另一类无密钥控制,为一般杂凑函数或非钥控杂凑函数。   无密钥控制的单向杂凑函数其杂凑值只是输入字串的函数,任何人都可以计算,因而不具有身份认证功能,只用于检测接收数据的完整性,如篡改检测码MDC用于非密码计算机应用中。有密钥控制的单向杂凑函数要满足各种安全性要求,其杂凑值不仅与输入有关,而且与密钥有关,只有持此密钥的人才能计算出相应的杂凑值,因而具有身份验证功能,如消息认证码MAC,此时的杂凑值也称做认证符(Authenticator)或认证码。   说明:   (1)尽管杂凑函数根据是否带有密钥分为两类,但这两类在应用中是可以相互转换的,因此事实上在设计杂凑算法时,一

文档评论(0)

1亿VIP精品文档

相关文档