コマンドプロンプトでチェックサム(ハッシュ値)を確認する方法|certutilコマンドの使い方、PowerShellでの代替手段も解説
目次
スポンサードリンク
Windowsでは、コマンドプロンプトからファイルのチェックサム(ハッシュ値)を確認することが可能です。ファイルの整合性確認や、ダウンロードファイルの改ざんチェックなど、セキュリティ面でも活躍します。この記事では、Windows標準搭載の certutil コマンドを使ったチェックサムの確認方法を解説します。
チェックサム(ハッシュ値)とは?
チェックサムとは、ファイルの内容から計算される一意の数値(文字列)です。ファイルが変更されるとハッシュ値も変わるため、改ざんや破損を検出するための手段として使われます。
代表的なハッシュアルゴリズムとして以下があります。
- MD5
- SHA1
- SHA256 など
コマンドプロンプトでチェックサムを確認する方法
Windowsでは certutil コマンドを使用することで、追加ソフトなしでチェックサムを取得できます。基本的な構文は以下の通りです。
certutil -hashfile ファイルパス [アルゴリズム]
下記コマンドでは、複数のアルゴリズムで、tree.txt のチェックサムを取得しています。
C:\Users\username>certutil -hashfile tree.txt MD5
MD5 ハッシュ (対象 tree.txt):
5a3442a52b18189172b8e34025116d22
CertUtil: -hashfile コマンドは正常に完了しました。
C:\Users\username>certutil -hashfile tree.txt SHA1
SHA1 ハッシュ (対象 tree.txt):
0baa24dd563cb13c2736a0e534b07f84181758b9
CertUtil: -hashfile コマンドは正常に完了しました。
C:\Users\username>certutil -hashfile tree.txt SHA256
SHA256 ハッシュ (対象 tree.txt):
fb9df88bcd8486ec7a467372b4217480a43db103c1b819480db5c1b6616fa23c
CertUtil: -hashfile コマンドは正常に完了しました。
使用可能なハッシュアルゴリズム一覧
certutil で使用できるアルゴリズムには以下があげられます。一般的にはMD5やSHA256が利用されることが多いかと思います。アルゴリズムは大文字、小文字どちらでも指定できます。
- MD2
- MD4
- MD5
- SHA1
- SHA256
- SHA384
- SHA512
PowerShellでチェックサムを確認する方法
PowerShell では Get-FileHash コマンドでファイルのチェックサムを取得することができます。コマンドプロンプトでcertutilが利用できない場合は、代替手段としてPowerShellを使いましょう。
PS C:\Users\username> Get-FileHash -Path .\tree.txt -Algorithm SHA256
Algorithm Hash Path
--------- ---- ----
SHA256 FB9DF88BCD8486EC7A467372B4217480A43DB103C1B819480DB5C1B6616FA23C C:\Users\username\tree.txt
まとめ
チェックサムの確認は、安全なファイル配布・運用・セキュリティ確保において重要な手段です。certutil を使えば手軽に実現できますので、ぜひ活用してみてください。
コマンドプロンプトのポケットリファレンス:Windows11対応版
Windows環境で開発やシステム管理を行うエンジニアにとって、コマンドプロンプトの知識は非常に重要なスキルセットです。こちらの書籍は初心者にもわかりやすく網羅的です。手元に置いておきたい一冊です。
PowerShellの基礎を一通り学べるおすすめ書籍