|
知识路径: > 密码学基本理论 > Hash 函数与数字签名 > 常见的Hash算法 >
|
被考次数:1次
被考频率:低频率
总体答错率:62%  
知识难度系数:
|
由 软考在线 用户真实做题大数据统计生成
|
相关知识点:2个
|
|
|
|
Hash算法是指有关产生哈希值或杂凑值的计算方法。Hash算法又称为杂凑算法、散列算法、哈希算法或数据摘要算法,其能够将一个任意长的比特串映射到一个固定长的比特串。常见的Hash算法有MD5、SHA和SM3。
|
|
|
|
MD5(Message Digest Algorithm—5)算法是由Rivest设计的,于1992年公开,RFC 1321对其进行了详细描述。MD5以512位数据块为单位来处理输入,产生128位的消息摘要,即MD5能产生128比特长度的哈希值。MD5使用广泛,常用在文件完整性检查。但是,据最新研究表明,MD5的安全性受到挑战,王小云教授及其研究团队提出了Hash函数快速寻找碰撞攻击的方法,相关研究工作表明MD5的安全性已经不足。
|
|
|
|
SHA(Secure Hash Algorithm)算法由NIST开发,并在1993年作为联邦信息处理标准公布。SHA-1与MD5的设计原理类似,同样也以512位数据块为单位来处理输入,产生160位的哈希值,具有比MD5更强的安全性。SHA算法的安全性不断改进,已发布的版本有SHA-2、SHA-3。SHA算法产生的哈希值长度有SHA-224、SHA-256、SHA-384、SHA-512等。
|
|
|
|
SM3是国家密码管理局于2010年公布的商用密码杂凑算法标准。该算法消息分组长度为512比特,输出杂凑值长度为256比特,采用Merkle-Damgard结构。
|
|
|