Windows で MD5、SHA-1、および SHA-256 チェックサムを検証する方法
インターネットからファイルをダウンロードしたばかりの場合は、ダウンロードしたファイルが改ざんされていないことを確認することをお勧めします。結局のところ、ハッカーがどんな極悪非道な策略を講じていたのか、誰にもわかりません。ファイルの MD5、SHA-1、または SHA-256 チェックサムをチェックすることで、その整合性を検証し、ファイルが破損または変更されていないことを確認できます。
チェックサムとは
チェックサムは、特定のファイルに対して暗号化アルゴリズムを実行した結果として生成される短い一意の文字列です。このアルゴリズムは、ファイルを構成するすべてのビットを調べ、それらの一意のビットに基づいてチェックサムを作成します。
このチェックサムは、ファイル内のビットが 1 つでも変更されると変更されます。2 つのチェックサムを比較することで、ファイルが破損または変更されていないことを確認できます。これは、ダウンロード時のファイルの破損や悪意のある干渉から防御するための便利な方法です。
MD5、SHA-1、および SHA-256 のチェックサムに最も一般的に使用されるアルゴリズムも利用でき、暗号的に安全なアルゴリズムに基づいています。3 つから選択できる場合は、SHA-256 を使用します。
チェックサムの使用方法
チェックサムを使用するには、まず、特定のファイルのチェックサムが何であるかを知る必要があります。これは、ファイルを提供したのと同じソースから提供される必要があります。
以下のいずれかのツールを使用して、ダウンロードしたファイルを同じチェックサム アルゴリズムで実行します。それが終わったら、2 つの文字列を比較します。文字列が一致する場合、ファイルは変更されていません。文字列が一致しない場合、ファイルの何かが元のファイルと異なっています。
サードパーティ ツールでチェックサムを確認する
Windows でチェックサムを実行する最良の方法は、MD5 & SHA Checksum Utilityというツールを使用することです。指定されたファイルの MD5、SHA-1、および SHA-256 チェックサムを同時に計算し、結果を提供されたデータと比較できるようにします。
- MD5 & SHA チェックサム ユーティリティを Softpedia (開発者がファイルをホストしている場所) からダウンロードします。
- ダウンロードしたファイルをダブルクリックして、プログラムを起動します。ダウンロードするように求められる場合があります。NET Framework 3.5 (アプリを正しく実行するために必要です)。「この機能をダウンロードしてインストールする」をクリックして続行します。
- 「参照」ボタンをクリックして、確認したいファイルを選択します。
- ダウンロードしたファイルの提供されたチェックサムを見つけます。ダウンロードしたすべてのファイルにチェックサムがあるわけではありませんが、オープンソースまたはセキュリティ意識の高い開発者は頻繁にチェックサムを提供します。そのチェックサムをクリップボードにコピーし、MD5 & SHA チェックサム ユーティリティの [貼り付け] ボタンをクリックします。
- 「確認」をクリックして、チェックサムを確認します。チェックサムが、アプリケーションが計算したチェックサムと同じである場合、成功メッセージが表示されます。これは、所有しているファイルが以前にチェックしたファイルと同一であることを意味します。
- チェックサムが異なる場合、エラー メッセージが表示されます。これは、最後のチェックサムが計算されてからファイルが何らかの形で変更されたことを意味します。
ファイル エクスプローラー内でチェックサムを確認する
- GitHub からOpenHashTabをダウンロードしてインストールします。
- チェックサムを実行するファイルを右クリックし、コンテキスト メニューから [プロパティ] を選択します。
- ウィンドウの上部にある「ハッシュ」というラベルの付いたタブをクリックして、選択したファイルの MD5、SHA-1、SHA-256、および SHA-512 ハッシュを表示します。
- 比較するチェックサムをコピーして、[チェック対象] ダイアログ ボックスに貼り付けます。
- ハッシュがチェックアウトされると、一致したアルゴリズム (この場合は MD5) と [チェック対象] ボックスの下のファイル名が表示されます。チェックアウトしない場合は、「一致するものが見つかりませんでした」と表示されます。
Windows で Certutil を使用してチェックサムを検証する
何もダウンロードしない場合は、Windows コマンド プロンプトまたはターミナルを使用して、certutil
コマンドを使用してチェックサムを確認します。
- コマンドプロンプトを開きます。Win+を押しRて を入力
cmd.exe
し、[OK] をクリックするか、[スタート] を開いて「コマンド プロンプト」を検索します。
- コマンドを使用して
cd
、ダウンロードしたファイルがあるディレクトリに移動します。デフォルトでは、これは通常「ダウンロード」フォルダですが、デスクトップにファイルをダウンロードする人もいます。パスを取得する簡単な方法は、ファイルを右クリックして [パスのコピー] を選択することです。これを、引用符やファイル名自体を付けずにコマンド プロンプトにコピーします。
cd filepath
- ファイル名を使用して次のコマンドを入力します。
certutil -hashfile filename MD5
- コマンドの下に MD5 値が表示されます。この数値を、ダウンロードしたファイルで受け取ったチェックサム ハッシュ値と比較します。この
certutil
コマンドを使用する場合、通常は値をメモ帳にコピーし、ユーティリティの実行後に手動で確認します。
- 例として MD5 を使用しましたが、このユーティリティは MD2、MD4、MD5、SHA1、SHA256、SHA384、および SHA512 もサポートしています。
よくある質問
検証するチェックサムが見つからないのはなぜですか?
多くの開発者は単に作成しません。開発者のサイトで見つからない場合は、存在しない可能性があります。存在するサイトでも、見つけるにはしばらくスクロールする必要があります。
多くの Windows 実行可能ファイルには、検証機能が組み込まれています。Microsoft は、組み込みの証明書により、ファイルがデバイスにインストールされる前に、そのファイルが正当で署名されたソフトウェアであることを検証できます。これが、署名されていないソフトウェアのインストールに関する警告を受け取ることがある理由です。
署名されていないファイルと、検証するハッシュのないファイルを引き続きインストールできます。たとえば、多くのドライバーは署名されていないファイルですが、ハードウェアが動作するために必要です。
理想的には、信頼できるサイトからのみダウンロードし、常に最初にVirusTotalでサイトをチェックしてください。インストールする前に、ダウンロードしたファイルをウイルス対策ソフトウェアで実行することもお勧めします。Windows Defender もうまく機能します。
悪意のあるファイルがチェックサムと一致することはありますか?
はい。ハッカーが元のファイルを悪意のあるファイルに置き換え、サイトのチェックサムを編集できる場合、チェックサムは一致します。多くの場合、ハッカーはここまではしません。開発者がファイルの整合性を検証する方法をユーザーに提供していることに気付いていない場合は特にそうです。
チェックサムを検証することは自分自身を保護するための 1 つの方法ですが、それを自分自身の防衛線として当てにしないでください。ダウンロードしたファイルは、ウイルス対策アプリでも常に再確認してください。
開発者がアプリまたはファイルの新しいバージョンをリリースした場合、再度確認する必要がありますか?
はい。ファイルへの最小の変更でさえ、異なるチェックサムにつながります。アップグレードされたバージョンであっても、常にすべての新しいファイルのダウンロードを確認してください。
画像クレジット:ウィキメディア コモンズ. すべてのスクリーンショットは Crystal Crowder によるものです。
コメントを残す