我正在做一個項目,以找到兩個不同的句子,基於減少的sha1散列給出部分衝突。我的程序將生成兩個不同的消息。如果兩個句子的散列的前32位匹配,則程序將停止,否則它將重複,直到檢測到衝突。減少SHA1散列的部分衝突
我的程序運行良好,但搜索collission的時間卻很慢。我怎麼能加快Iot。我讀了,發現我可以用生日悖論,我該如何執行?
我做了一些搜索,並得到相關答案,但我仍然對生日悖論感到困惑。
Probability of SHA1 collisions
http://www.metzdowd.com/pipermail/cryptography/2004-August/007409.html
http://www.freelists.org/post/hashcash/Hashcash-and-the-cracking-of-SHA1,2
這是怎麼我的工作方案:
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.
- 搜索所花費的時間與以毫秒爲單位的某些其他程序相比太長。
幫我理解,爲什麼使用C++標籤? –