MDCalc (Message Digest Calculator)

概要

 MDCalcは簡単な操作でファイル及び文字列のハッシュMD5(Message Digest 5)を 計算する小さなツールです。CRC32やSHA-1も計算できます。 ハッシュとかMD5って何? という方は後の「ちょっと長い」説明をごらんください。 (知らないと、そもそもこのツールを見つけないかな? (^^;)

使用方法

動作環境

 Windows95/98/Me/2000/XP (NT3.51、NT4.0は環境がないので未確認です。)

インストール

 配布ファイルが圧縮されている場合は、適当なツールで抽出(解凍)して下さい。

 プログラムの実行には MFCランタイムルーチン (MSVCRT.DLL 及び MFC42.DLL又はその上位互換)が必要です。 Windows95ユーザで本ツールが実行できない場合、C:¥WINDOWS¥SYSTEM(又は同等のフォルダ)の中に、これらのDLLが 存在するか確かめて下さい。 存在しない場合は、vectorランタイムパッケージのコーナ 等からダウンロードしインストールして下さい。尚、これらのDLLはWindows95以外では、デフォルトで(最初から)存在すると思います。

実行

 MDCalc.exeを実行して下さい。

削除(アンインストール)

 解凍時に作成されたファイル(MDCalc.exe と、このHTMLファイル自身)を削除するだけです。本ツールはレジストリは使用しません。

操作方法

計算するハッシュの選択

 起動時にはMD5になっています。CRC32又はSHA1を計算する場合は、希望するものをチェックしてください。

ファイルの計算

 ダイアログ(ウィンドウ)に対象となるファイルをドラッグ&ドロップしてください。

文字列の計算

 上部の入力枠に、計算したい文字列を入力し、その後で「ハッシュを計算」ボタンを押してください。

ハッシュの比較

 ファイルまたは文字列を計算した後、上部の入力枠にハッシュを入力し、その後で「ハッシュを比較」ボタンを押してください。「ハッシュを比較」ボタンは、ハッシュが比較可能なときにのみ押下可能になります。公開されているハッシュ値と比較する場合に、コピー&ペーストして比較するのが簡単です。

MD5とは?…ちょっと長い説明

 "MD5"とは"Message Digest 5"の略で、元データに対し「なんか難しい」(笑)計算をして求めた値(128ビットのハッシュ値)です。 この値は、人の指紋によく例えられます。人の指紋はその人のすべて表現しているわけではありませんが、指紋が一致すれば、ほぼ間違いなく同一人物といえます。 同様に、二つのデータのMD5が一致すれば、その二つはほぼ間違いなく同一データと言えます。 この性質を利用して、データを1バイトずつ全てチェックしなくても同一性をチェックすることができます。

 最近ではWebサイトなどで、プログラムの配布と共にMD5が表示されているところも多くなってきました。 ダウンロードした後に、そのファイルに対してMD5を計算することにより、そのファイルが間違いなく元のファイルと同じものであることを確認できます。 もちろん、通信においても一般にエラー対策はなされていますが、MD5に比べると簡単なものであるため、特に無線などエラーレートが高いものの場合、エラーを見逃す確率は高くなりますので、MD5を確認することにより、ダウンロードしたデータをより安心して利用するすることができます。 まだダウンロードだけではなく安いメディアにバックアップしたデータに対し、MD5をメディア にマジックでメモ書きしておけば、後日もとのデータがなくても、そのバックアップが壊れていないか確認することもできます。

 ちなみに、MD5を求める「なんか難しい」計算は、一方向関数と呼ばれ、元のデータから求めたMD5から、逆に元のデータを求めることは非常に困難です。 また、特定のMD5になることを狙って、データを作成するのも非常に困難です。 この性質を利用して暗号認証や偽造データのチェックにも利用することができ、実際に、メールの受信プロトコルの一部などにも使用されています。

著作権

 このプログラム中で用いているMD5計算アルゴリズムはRFC1321に記述されている「RSA Data Security, Inc. MD5 メッセージダイジェストアルゴリズム」を元に作成されました。

 このプログラム中で用いているCRC32計算アルゴリズムはRFC2083の記述を元に作成されました。

 このプログラム中で用いているSHA-1計算アルゴリズムはRFC3174の記述を元に作成されました。

 本ソフトの著作権はO.K.U.(oku@olive.plala.or.jp)が所有しています。個人レベルを除く再配布(雑誌への掲載等)についてはE-mailで問い合わせ下さい。個人での使用(企業内での個人使用も含む)及び個人レベルでのコピーや配布はフリーですが、MD5のライセンス上(配布するファイルにMD5の開発元の掲示が必要)、このhtmlファイルと共に配布してください。

免責事項

 本ソフトを使用した結果生じたあらゆる問題について、作者である O.K.U. は何ら保証致しません。自己責任でお願いします。

最新版の配布

 本ソフトの最新版は(株)vectorよりお借りしている作者ページの中で公開しています。

改版履歴

(current)
  • 当面メンテナンスできないためソースを公開しました。内容は1.1と同様です。
1.1
(2003/12/31)
  • CRC32, SHA-1の計算も可能にしました。
  • アイコンを変更しました。
1.0
(2003/06/11)
  • 正式リリース(Vectorで公開)

最後に

 E-mailで使用結果(どのような環境で動いたか等)や要望、あるいはバグの指摘等をレポートして頂けれると嬉しいです(義務ではありません)。質問や感想も歓迎します。

 アイコンがダサダサなので、アイコンの寄付も歓迎します。お礼はクレジットの記述[URLリンク含む]ぐらいしか、できませんが…

E-mail:oku@olive.plala.or.jp  Home Page:http://hp.vector.co.jp/authors/VA017405/