
http://oshiete.goo.ne.jp/qa/5000059.html
このページに
CRC32が一致する確立は16の8乗。MD5が一致する確立は16の32乗。
この意味するところは
【16^8】
4294967296
4294967296個のファイルを比較した際に異なるファイルであっても
同じファイルで判断されることがある。
という意味ですよね?
つまり、極めて小さな確率なので
二つのファイルが同一であるか調べるためには
MD5ではなくCRC32で十分ということでしょうか?
それと、10000個に一度くらいは異なるファイルであっても同じだと認識されても構わないので
もっと認証が粗く、計算速度の速いアルゴリズムがあれば教えてください。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
話の前提がわかりません。
予めCRCが計算されてファイルに付与されているのでしょうか?
ファイルを比較するだけなら、ファイルを読んでバイト単位で
比較した方が早い。
要は何がやりたいのかよくわからないということです。
No.2
- 回答日時:
前半は特に付け加えることはありません。
> もっと認証が粗く、計算速度の速いアルゴリズムがあれば教えてください。
こっちについて。
CRCの計算よりファイルの読み出しの方が遅いので、これ以上の計算速度は無意味です。
ハッシュアルゴリズム側ではなく、ファイルサイズを見るとか、ファイルの一部分を見るとかの工夫が必要です。
No.1
- 回答日時:
普通、同一性チェックをするなら、CRCだけで済ませたりはしないでしょう。
前処理で使って、CRCが一緒ならバイナリ比較で一致を確認するのが基本かと。
CRC32で4294967296=2^32というならCRC16なら2^16通りなので誤一致率は数万分の1程度になるのでは?
ただ上の数値はCRCの生成確率に偏りがないという(おそらく正しくない)仮定があるし、特定のファイルとの一致確率でなく任意に取ってきた2つの一致確率だと誕生日のパラドックスで言われるように、CRC32で1/2^16になるので、10000個に一個くらいは間違っても良いという条件だとCRC32くらいは必要なんじゃないかな。
# 誕生日のパラドックス http://ja.wikipedia.org/wiki/%E8%AA%95%E7%94%9F% …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 統計学 お世話になっています. x軸は時間(期間)y軸はある値に対する2つのグラフ比較をしますが、私個人の考 2 2023/03/30 11:42
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/10/26 17:14
- その他(Microsoft Office) フォルダーのプロパティで表示されるファイル数とフォルダーに実際に存在するファイル数が一致しない 2 2022/07/27 13:16
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/04/17 13:07
- ノートパソコン パソコンのファイル追加履歴について 1 2022/05/07 15:35
- Excel(エクセル) ドキュメントに保存していたエクセルのファイルが開きません。 2 2022/12/02 09:38
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/26 17:13
- 会計ソフト・業務用ソフト エクセルファイルの修復前後の比較について エクセルファイルの動きが悪く何となく修復をしてみたのですが 1 2022/12/23 17:32
- USBメモリー・SDカード・フラッシュメモリー usbからコピーしたファイル以外のデータはコピー先のpcに残るのか 4 2022/05/08 05:53
- 画像編集・動画編集・音楽編集 動画のトリミング 結合 削除が可能なフリーソフト 2 2022/05/02 22:08
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクセス 壊れた? 「ファイ...
-
#include <Windows.h>というヘ...
-
Latexで図番号だけを「図1.1」...
-
C言語---ファイルに出力したデ...
-
リンクの張り付けかたを教えて...
-
コマンドプロンプトで作成日時...
-
.NETアプリを作ったときの .man...
-
Seasar2のdiconファイルの読み方
-
公文書のxmlファイルの開き方が...
-
<ファイル3>を開いた時に、<フ...
-
ファイルの結合についてお願い...
-
アクセス権のチェック方法について
-
監視ツールを入れさせられまし...
-
warファイルをEclipseでプロジ...
-
VB.netで DirListBoxを使いたい
-
exeファイルをデータ転送サービ...
-
jarファイル
-
reaper音声ファイルについて
-
VBAのバイナリ出力について
-
PukiWIki 1.4.5_1のメニューバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
binファイルを解凍したいの...
-
アクセス 壊れた? 「ファイ...
-
コマンドプロンプトで作成日時...
-
.NETアプリを作ったときの .man...
-
リンクの張り付けかたを教えて...
-
#include <Windows.h>というヘ...
-
Latexで図番号だけを「図1.1」...
-
jarファイル
-
「ブルーファイル」と「グリー...
-
ファイルが開かれているかどう...
-
バッチ処理で追記コピーしたい
-
VBAのバイナリ出力について
-
公文書のxmlファイルの開き方が...
-
コマンドプロンプトで、指定し...
-
監視ツールを入れさせられまし...
-
自分で作成した重要ファイルを...
-
HTMLからのBATファイル実行
-
VBSが起動しない
-
他のMDBのマクロを実行する方法
-
Batファイルをバイナリ形式にす...
おすすめ情報