2011-02-07 5 views
3

短いMD5チェックサムが必要な場合は、通常のものを使用して前半または後半を使用する必要がありますか?それとも問題なの?MD5チェックサムの最も有効な部分文字列

(明らかにそれはMD5であることをやめるだろう、それだけだろうチェックサム)

答えて

2

それは問題ではありませんが、私はこのことについて非常に難しいと思うだろう:あなたは大幅の機会を増やしましょう衝突(同じチェックサムを持つ2つの異なるビットのデータ)。

+0

ありがとうございます。それぞれの答えは同じように役に立つと思われますが、これは最初の回答であり、ここのダンは13の評判しかないので、私はこれを受け入れています。それは少なくとも私が引き裂かれていないスケールので、ヒント。 –

2

これは問題ではありません。一般に、チェックサム全体は各入力バイトごとに変化します。しかし、あなたが決めることができない場合、なぜxorは最初の半分を第2のものとしないのですか? :-)

2

短い文字列が必要な場合は、ある種のCNCハッシュ関数を使用してください。それは非常に安全ではありませんが、MD5の半分を取るよりもまだ良いと認識しています。

+0

なぜそれは良いでしょうか?切り捨てられたMD5でさえ、単純なCRCよりも優れた配布およびセキュリティ特性を持つでしょう。典型的なCRCの利点はパフォーマンスだけです。 – CodesInChaos

+0

メンテナンス可能!それは他の開発者が奇妙な半分のMD5文字列を見ることによって理解する特別なものではありません。 MD5よりも短い文字列が必要な場合は、短いハッシュ文字列を生成するためにビルドされた標準の実装を行うべきです。ちょうど私の2セント;) –

関連する問題