2012-02-28 59 views
1

我目前的教科書(信息安全:Mark Stamp的原理和實踐)討論瞭如何通過長分區確定數據的CRC,使用XOR而不是減法來確定餘數。查找特定除數的CRC碰撞

如果我們的除數有N位,我們將(N-1)0位附加到被除數(數據),然後使用與XOR的長分解來求解CRC。

例如:

Divisor: 10011 
Dividend: 10101011 

101010110000/10011 = 10110110 R 1010, where 1010 = CRC 

我能夠完成這個計算罰款。但是,該書提到在除數爲的情況下,很容易發現碰撞。

我在這裏錯過了一些東西 - 爲什麼在除數是10011時更容易找到碰撞?

回答

0

查看http://en.wikipedia.org/wiki/Cyclic_redundancy_check#Designing_CRC_polynomials瞭解更多詳情。

10011對應於不可約的多項式x^5 + x + 1。而且,使用這樣的代碼可以減少碰撞的機會。

+0

你的意思是說,增加碰撞的機率,對嗎?有沒有一種簡單的方法(除了詳盡的搜索)找到與這個除數的碰撞? – BSchlinker 2012-02-28 05:56:19

+0

@BSchlinker我不是很確定。只要繼續閱讀wiki文章。它講原始多項式等。 – ElKamina 2012-02-28 07:10:45