プロが教えるわが家の防犯対策術!

ファイルが同一のものであるかの確認方法としてハッシュ値の比較がありますが、次の場合、ファイルが同一かそうでないかを判定できるのでしょうか?

A⇨暗号化をしていないファイル
A'⇨Aを暗号化したファイル(仮にAES256bit)

A"⇨Aを暗号化したファイル(2つ目、AES256bit)

これら3つのファイルについて、AとA"の比較
またはA'とA"の比較により同一のファイルであることを確認することはできますか?

暗号化したファイルは復号しない状態での比較とした場合です。

よろしくお願いいたします。

A 回答 (3件)

○ハッシュは単純にファイルのデータから計算されます。


ファイルの意味は考慮しません。

○「暗号化」の意味を考えれば、 AとA',AとA''は内容が異なるはずです。
よって、ハッシュは「一致するとは限りません」
一般に知られたハッシュならば、違うハッシュになる可能性が高いです。

○「暗号化」するときの条件が同じならば、A'とA''は同一になるでしょう。
ただ、条件が違う(パスワード等)と、同じ方法で暗号化しても、内容も違ってきます。
A'とA''が一致するかどうか、は暗号化の方法次第です。



ハッシュは

(1) 元が同じ内容ならば、ハッシュは同じ値になる

という性質を持ったものです。ここで

(2)「元が違う内容なら、ハッシュは違う値になる」のが理想だが、同じ値になることも有り得る。
(3)「ハッシュが同じ値なら、元も同じ」とは言えない。
(4) ハッシュから「元のデータ」を復元するのはほぼ不可能

という点に注意が必要です。

一般に知られている方式(MD5,SHA等)は、(2)の「理想」に近付けるように計算方法等を工夫したものです。
そのため「ハッシュが同じなら、同じ内容の可能性が高い」ということで、ファイルの同一性の確認に使われています。


暗号/復号というのは

・元の内容(平文)に一定の処理を施すこと
・暗号化されたもの(暗号文)に一定の処理を施すと、元の平文が得られる(復号化)



・「暗号文だけでは、元の平文に戻すことは難しい」のが理想。
(暗号化/復号化の方法、「鍵」等の情報が必要)

というものです。
    • good
    • 0

A'とA''は同じファイルなので、ハッシュ値を比較すれば一致して、同一ファイルであることが分かります。



AとA'やA''は別ファイルなので、ハッシュ値を比較して不一致です。

AとA'やA''が同一内容であることを判断したいなら、
・Aを暗号化する
・A'やA''を復号する
のどちらかが必要です。
    • good
    • 0

> AとA"の比較



「A」と「A"」のハッシュを比較して、「A"」が「A」を暗号化したファイルであると分かるか、という意味でしょうか。その場合、暗号化時のパスワードによってファイルの内容も変わると思いますので、判定は出来ないのではないかな、と思います。

「そのファイル自体が同じファイルか」という意味の場合は、比較、判定出来るかと思います。「A」と「A"」は、「暗号化なし」と「暗号化あり」で、違うファイルですから、違うハッシュとなり、違うファイルとの判定になるかと思います。

> A'とA"の比較

同一ファイルですから、同一のハッシュとなり、比較、判定出来るかと思います。

又、念の為に書かせて頂くと、上記の「判定」は、ハッシュでの比較ですから、「ほぼ判定出来る」という意味です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!