回应模式 - No.59759381


No.59759381 - 技术宅


无标题无名氏No.59759381 只看PO

2023-10-06(五)09:17:22 ID:pBgksxo 回应

肥哥们,小肥有问题想问( ゚∀。)
小肥下黄油,发布者给了哈希值,我就产生了一个疑问,两个不同文件的哈希值会一样吗?
于是我百度了一下
哈希值计算的原理可以看做集合A→B的映射
我们输入(百度说是任意长度)a∈A,输出哈希值b∈B
我注意到哈希值的计算结果是用6个英文字母和数字表示的32位字符串,所以B中的元素是有限个,是16^32个。
如果A中的元素个数超过了B中的元素,就会出现多对一的映射,也就是存在m,n∈A,k∈B,使得f(m)=f(n)=k。
这个时候是不是就是这俩输入值m,n的哈希值一样了( ゚∀。)
jp

无标题无名氏No.59759399

2023-10-06(五)09:19:11 ID: 8hxlYPV

基本不会相同
除非你这个截取的值非常短

无标题无名氏No.59765478

2023-10-06(五)20:44:20 ID: iZ6aYZ6

概率极低,即使故意去制造这种冲突难度也极高

无标题无名氏No.59765503

2023-10-06(五)20:46:04 ID: iZ6aYZ6

如果想了解相关内容,关键词哈希碰撞

无标题无名氏No.59768526

2023-10-07(六)01:32:04 ID: 4WVuFwF

无限映射到有限肯定有重复的

无标题无名氏No.59768539

2023-10-07(六)01:33:39 ID: qMeWoiI

po说的32位字符串应该是md5,输出是128位二进制数,写成十六进制就是32位。
摘要算法有很多种,理论上就算是只有128位的md5碰撞率也是非常低的。其实普通的取模运算也可以当做哈希函数,这个碰撞率就非常高了|∀` )

无标题无名氏No.59770054

2023-10-07(六)09:57:05 ID: bWO3KdY

你要找的是不是 -> 哈希碰撞

无标题无名氏No.59810834

2023-10-11(三)13:53:17 ID: pBgksxo (PO主)

>>No.59765503
谢谢肥哥,帮大忙了
果然来数码版问来对了

无标题无名氏No.59856048

2023-10-16(一)03:15:40 ID: CWtJ5cy

来人,上相同哈希值的那两张jpg图片|∀` )

无标题无名氏No.59897358

2023-10-20(五)08:29:35 ID: hmXtdXe

虽然不是一个东西,但是理论来说会的。比如Java中字符串"Aa"和"BB"的hash code都是2112。