はじめまして。
リリース当初は sha-1 をデフォルトにしていましたが、負荷が2-3割高いため、md5 をデフォルトにしています。
![]()
【要望】verify機能 : ky3(11/8/26 08:10)
![]()
おそらくmd5で十分のはずです : しろうず(11/8/27 16:20)
1404
Root
▼[1406]
【要望】verify機能
ttp://www.cryptrec.go.jp/method.html
その他→ハッシュ関数
ttp://ja.wikipedia.org/wiki/MD5#.E3.83.8F.E3.83.83.E3.82.B7.E3.83.A5.E3.81.AE.E8.A1.9D.E7.AA.81.E8.80.90.E6.80.A7.E3.81.AB.E3.81.A4.E3.81.84.E3.81.A6
SHA-256やSHA-384,SHA-512などのアルゴリズムをベリファイに追加していただけないでしょうか?
むしろSHAをデフォルトにしてほしいのですが。
よろしくお願いいたします。
1406
▲[1404]
なし
おそらくmd5で十分のはずです
(fastcopy.ini の [main] に using_MD5=0 で sha-1 をデフォルト)
実際問題として、FastCopy内部で閉じたハッシュ関数利用ですので、世の中で指摘されているような意図的なコリジョンについては気にする必要はなく、また、FastCopy の場合、src と dst の「2ファイル間に偶然のコリジョンが発生するかどうか」が問題であって、誕生日問題のように「処理する全ファイル間の総当りで 1つでもコリジョンが発生するかどうか」という問題とは異なります。
つまり、誕生日問題のように 2^(128/2)ファイル数(md5は128bit)の処理で 50% のコリジョンが発生しうるという話ではなく、
2つのファイル間のコリジョン確率をファイル数回繰り返したときに1回でも衝突が発生する確率がどうか、といった話になります。
2つのファイル間でのコリジョン確率は md5 の場合、0.5^128 = 約2.94 * 10^-39 となります。(0.5 = hash値 1bitあたりの偶然の一致確率 = 50%)
非常に小さい確率ですので、ファイル全体でもファイル数を掛けた数にほぼ近似できるはずで、1億ファイルを処理したとしても、2.94 * 10^-31 という、とてつもなく小さいコリジョン確率になるはずです。
計算が間違っていたらツッコミ歓迎です(笑)