C++ 简化SHA1散列的部分冲突
我正在做一个项目,以找到两个不同的句子,使部分冲突的基础上减少sha1散列。我的程序将生成两条不同的消息。如果两个句子的前32位哈希匹配,程序将停止,否则将重复,直到检测到冲突 我的程序运行良好,但是搜索碰撞所需的时间会变慢。我怎样才能加快速度呢。我读了之后发现我可以使用生日悖论,我该如何实现它 我做了一些搜索,得到了相关的答案,但我仍然对生日悖论感到困惑 这就是我的程序的工作原理:C++ 简化SHA1散列的部分冲突,c++,birthday-paradox,C++,Birthday Paradox,我正在做一个项目,以找到两个不同的句子,使部分冲突的基础上减少sha1散列。我的程序将生成两条不同的消息。如果两个句子的前32位哈希匹配,程序将停止,否则将重复,直到检测到冲突 我的程序运行良好,但是搜索碰撞所需的时间会变慢。我怎样才能加快速度呢。我读了之后发现我可以使用生日悖论,我该如何实现它 我做了一些搜索,得到了相关的答案,但我仍然对生日悖论感到困惑 这就是我的程序的工作原理: Generate random number() // let say i generate 100 n
Generate random number() // let say i generate 100 number
Generate random char1() // we will generate 100 char
Hash() // the first 100 char
Generate random char2() // we will generate another 100 char
Hash2() // this 100 char again
Get the 32 bit of the random char1()
Get the 32 bit of the random char2()
compare the 32 bit for partial collision
If they dont match we will keep on doing until partial collision is found.
- 与以毫秒为单位的其他程序相比,搜索所需的时间太长
您只需要77000个哈希,就有50%的机会在它们之间找到32个比特的冲突。帮助我理解,为什么C++标签?