1
我保存URL的數據庫中,當我插入一個新的,我要檢查,如果該URL數據庫中已存在。哪個哈希算法用於重複的URL檢查?
一種常見的做法(如果我沒有錯誤)是哈希使用MD5或SHA-1等...和檢查在數據庫字段之前插入一個新的重複的URL。
我知道MD5可產生碰撞,也SHA-1 ...
你有什麼建議給我嗎?我的需求是:
DB尺寸:數據庫最後10至20百萬條記錄
性能/速度:小散大小,這樣數據庫不會有重負載檢查重複(當然這個領域會有索引)
公差:我不在乎如果我得到每10萬記錄1次碰撞。我的需求更多的是性能(小哈希),而不是0%的碰撞(大哈希)。
機率畸形的URL攻擊產生碰撞的目的:極低
最大傷害可能在這樣一個成功的攻擊的情況下:極低
問題:
你b elieve md5就夠了(有更好的建議)?
也許MD5甚至矯枉過正對我來說,我可以認真地可以通過使用簡單的東西獲得性能優勢?
提前謝謝你們!
謝謝您的回答乳木果利維,我決定去與MD5碰撞的情況下,檢查......我想嘗試夸克但我無法找到一個PHP實現,所以我試着用搜索引擎這一點。不幸的是,結果都是關於Quark迷你cms for PHP,而Quark hashing算法則沒有。 –