本文へ目次へ

MD5とは

MD5とはMessage Digest 5の事で、あるデータから生成される128ビットの「メッセージの要約」を指します。 このMD5は一方向関数により生成されるため、MD5の値から同様の値を持つファイルを生成することは困難です。 そのため、ファイルの正当性を確認する場合などに使用されます。MD5の値とファイルのサイズが同じであれば、正当なファイルであると判断しても概ね問題ないでしょう。

MD5は計算によって求められ、その計算方法はRFC1321で公開されています。 Linuxであれば計算を行うコマンドがありますが、残念ながらWindowsにはそう言ったコマンドがありません。 しかし、そのためのツールはいくつか公開されています。 当サイトでも算出と比較を行うツールを公開していますので、よろしければご利用ください。

ただし、現在のコンピュータパワーであれば、ある程度時間をかけることで生成することも可能ですので、 完全に信頼してしまうことはできません。ファイルがダウンロード途中に破損していないか、などのチェックには有益ですが、 セキュリティの観点からは少し時代遅れになりつつあります。後継にsha1などの関数もありますが、 いずれも逆変換が「現在のコンピュータパワーでは現実的な時間では行えない」ことを利用した物ですので、 コンピュータの進化や、新しい計算方法の開発などにより利用される関数は変化していくはずです。