その時にWindowsは別途ツールを落とす必要がありそうだと記載した。
しかし、よくよく調べてみるとWindowsの標準機能でもMD5チェックサムを
確認できることがわかったのでメモしておく。
コマンドプロンプトでの確認
コマンドプロンプトの下記コマンドにて確認することができる。
certutil -hashfile [Filename] [HashAlgorithm]
下記のように"-?"を指定することでヘルプを見ることができる。
ヘルプにて、使用できるハッシュアルゴリズムが確認できるのだ。
D:\work>certutil -hashfile -?
使用法:
CertUtil [オプション] -hashfile InFile [HashAlgorithm]
ファイルに暗号化ハッシュを生成し表示します
オプション:
-Unicode -- リダイレクトされた出力を Unicode として書き込む
-gmt -- 時刻を GMT で表示します
-seconds -- 時間を秒とミリ秒で表示します
-v -- メッセージを詳細に表示します
-privatekey -- パスワードと秘密キーのデータを表示します
-pin PIN -- スマート カードの PIN
-sid WELL_KNOWN_SID_TYPE -- 数値 SID
22 -- ローカル システム
23 -- ローカル サービス
24 -- ネットワーク サービス
ハッシュ アルゴリズム: MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512
CertUtil -? -- 動詞の一覧 (コマンドの一覧) を表示します
CertUtil -hashfile -? -- "hashfile" 動詞のヘルプ テキストを表示します
CertUtil -v -? -- すべての動詞のヘルプ テキストをすべて表示します
ハッシュアルゴリズム指定なしで試してみる。
ちなみにハッシュアルゴリズムを指定しなければ"SHA1"になるみたいだ。
D:\work>certutil -hashfile test.txt
SHA1 ハッシュ (対象 test.txt):
05a48d54620415154acd4f5cba68ab59369a01c0
CertUtil: -hashfile コマンドは正常に完了しました。
ハッシュアルゴリズムをMD5にしてみる。
D:\work>certutil -hashfile test.txt MD5
MD5 ハッシュ (対象 test.txt):
55e1c5742a5dc43021944b71107a7374
CertUtil: -hashfile コマンドは正常に完了しました。
こんな感じ。
注意点として、ハッシュアルゴリズム部分は大文字で記載した方が良い。
Windows10では小文字でも問題なかったが、Windows7ではエラーになった。
基本、大文字で記載すると覚えておけば問題ないだろう。
ちなみにLinuxでも確認してみた。
user@user-PC:~$ md5sum test.txt
55e1c5742a5dc43021944b71107a7374 test.txt
差異なしなので問題なし!
バッチファイルで簡単確認
使用する頻度が高い場合は毎回コマンド打つのも面倒くさい。
そこで超簡単なバッチファイルを作ってみた。
こういうことするからコマンドが覚えられないのだな・・・。
@echo off
certutil -hashfile %1 MD5
pause
上記をテキストエディタに貼って、拡張子".bat"で保存すればOK。
使い方は、チェックサムを調べたいファイルをこのバッチファイルにD&Dすれば良い。
実行結果は下記になる。
"pause"を入れてあるので、確認が終わったら何かキーを押せば自動で消える。
うむ、シンプルイズベストなバッチファイルだな。
PowerShellでの確認
ついでなので、PowerShellでの確認方法も記載しておく。
v4あたりから標準で使えるみたいだ。
まずはオプションなしで実行してみる。
コマンドプロンプトと違って、デフォルトは"SHA256"みたいだ。
PS D:\work> Get-FileHash test.txt
Algorithm Hash Path
--------- ---- ----
SHA256 78F31E73301AF4CD5CCA6DCE4BB8B939076D129D719ED3D51F149A36673F5F2B D:\work\test.txt
MD5チェックサムを確認する場合は下記になる。
PS D:\work> Get-FileHash test.txt -Algorithm MD5
Algorithm Hash Path
--------- ---- ----
MD5 55E1C5742A5DC43021944B71107A7374 D:\work\test.txt
あんまPowerShell使ったことないけどそんなに難しくはないな。
まぁこんなコマンドすぐ忘れるだろうけど・・・。
本日は以上で。
【イラスト図解満載】情報セキュリティの基礎知識
この記事へのコメント