どのアルゴリズムがより安全な「スムーズなチェックサム」を提供していますか? MD4
とAdler32
からのみ選択してください。チェックサムのためのAdler32およびMD4
答えて
私はチェックサムに両方を使用します。どちらも「比較的スピーディー」であるため、古代のオプションを使用するよりも安全にすることはできません。
しかし、あなたが最も安全なオプションを探しているなら、私はMD4と言います。
引用:オリジナルSWID要件で
、許容される衝突速度は 千万1で測定しました。ここでの一意性の程度は重要ですが、衝突が発生する前にMD4の2^64 操作の主張ほど堅牢である必要はありません。
出典:ショートメッセージの場合はMD4-SWID.pdf
、Adler32チェックは注意すべき弱点を持っています
ジョナサン・ストーンはAdler32チェックは 非常に短いメッセージのための弱点を持っていることを2001年に発見されました。彼は「簡潔に言えば、問題は非常に 短いパケットのため、Adler32は利用可能なビット数が であることを保証していません」Mark Adler氏に尋ねてください:-)「 問題はその合計Aは短いメッセージのためにラップしません。 128バイトのメッセージに対する最大 の値は32640であり、これはモジュロ演算によって使用される値 65521以下です。拡張説明は、 をRFC 3309に見つけることができます。これは、Stream Control Transmission ProtocolのSCTP用にAdler-32 の代わりにCRC32を使用することを要求しています。
と: 長さは16〜128文字に至るまで100万ランダム 生成されたURLのような文字列のいくつかのセットにアドラー、CRC32との両方を実行
、アドラーは〜1%で重複を生産症例のCRC32を生成した。 〜0.2%;いくつかの実験では、両者の組み合わせは、わずかに2つしか見つからなかった(約0.002%であるが、判定するのに十分なサンプルではない)。 代表。
出典:衝突の可能性を考慮しHashing urls with Adler32
がAlder32を使用して、短いメッセージで[特に]高く、MD4は私の票を持っています。
優れた投稿、ありがとうございます。 – Cartesius00
- 1. javascript内のファイルのAdler32チェックサム
- 2. Adler32チェックサム生成 - ビットと右のオペレータをシフトが
- 3. メールのためのAndroidおよびBroadcastReceiver
- 4. Ansable:sha1チェックサムのファイルのローカルおよびリモートセットを確認する方法
- 5. ResultSetのOracle、SQLServer、およびC#で同じチェックサムを計算する
- 6. MD5およびSHA1チェックサムの計算中にIOExceptionが発生する
- 7. ファイルのための計算MD5チェックサムC
- 8. のNeo4jのJUnitのためのコンフィギュレーションおよびCYPHERクエリで
- 9. カラースキームのためのスウィフトの拡張および列挙
- 10. tarballs、SRPMs、およびソースコードファイルの比較のためのLinuxソフトウェア
- 11. Lucene.NET:DateTimeおよびTimeSpanフィールドのインデックス作成および検索のための推奨方法
- 12. スクラム:アーキテクチャ設計のためのタスク依存およびタスク
- 13. AWS ConnectおよびLexの連絡先は、参考のため
- 14. ColorPickerのためのUIImageを生成する(CGDataProviderおよびCGImageSource)
- 15. アクティブおよび非アクティブ状態のためのSQL
- 16. 入力A、B、およびnはフィボナッチ数列のための
- 17. C++、Googleのテスト/モック:テストするためのアサーションおよびオブジェクトタイプ
- 18. 文字列変換のための錆、FFI、および寿命
- 19. プロダクトのための関係、FrequenceOfUseおよびユーザーテーブル
- 20. 統一(およびホロレンス)のためのGit
- 21. オフラインで使用するためのCakePhp 1.3および2.0 API
- 22. AIXでビルドおよびパッケージ化するためのベスト・プラクティス
- 23. ファイルをアップロードおよびダウンロードするためのjarファイル
- 24. XSLTを検索および削除するための変換
- 25. 位置および配向のゲームオブジェクト明確にするため
- 26. ファイルを読むためのMeteor同期および非同期呼び出し
- 27. &&(論理および)および|| (if文)
- 28. のNeo4jおよび/またはPythonの
- 29. "/"および "*"を除いた2進数の乗算および除算
- 30. adler32ローリングチェックサムの計算の違い - Python
なぜそれらの中から選択すればよいですか?私はそれらを使用することはありません。これはテスト問題ですか? –
@Chris:なぜこれらのハッシュ関数を使用しないのですか? – Cartesius00
衝突の可能性。 –