2011-02-07 114 views
3

如果我想要一個較短的MD5校驗和,我應該使用正常的一個,並使用前半部分還是後半部分?或者它甚至很重要?MD5校驗和的最有效子串

(顯然這將不再是一個MD5,這純粹是一個校驗)

回答

2

不要緊,但我很努力想這樣做:你會大大增加的機會碰撞(具有相同校驗和的兩個不同位的數據)。

+0

謝謝大家。每個答案似乎同樣有幫助,我接受這個答案,因爲這是第一個答案,因爲丹在這裏只有13個聲望。至少我沒有撕裂,這提示了規模。 – 2011-02-07 20:25:37

2

它應該沒關係。一般來說,每個輸入字節的整個校驗和會發生變化。但是,如果你不能決定,爲什麼不把第一場比賽換成第二場呢? :-)

2

如果你需要一個簡短的字符串,可以使用某種CNC哈希函數。請注意,這不是一個非常安全的方式,但它會比採用MD5的一半更好。

+0

爲什麼它會更好?即使是截斷的MD5也會比簡單的CRC具有更好的分佈和安全屬性。典型的CRC只有性能優勢。 – CodesInChaos 2011-02-07 20:36:49