代码改变世界

随笔档案-2011年6月9日

散列冲突与作为特征值的散列

2011-06-09 09:26 by zhenjing, 2755 阅读, 收藏,
摘要: 散列函数是一种从任何一种数据中创建小的数字“指纹”的方法。密码学上的 Hash 又被称为"消息摘要(message digest)"。简言之,“指纹”、“信息摘要”本质就是数据的特征值,即散列函数可用于提取数据的特征值。作为特征值,哈希可用于判断原始数据是否不同,但无法判断原始数据是否相同。这决定了哈希值无法唯一表征原始数据。常见的哈希表均需要通过判断原始数据来判断是否冲突,并引入相应的解决办法。哈希表最好的应用场合是有限输入的预构造集,如字典;哈希函数则适用于判断数据是否不同的场合,如分类、加密、校验等。 阅读全文