右クリックメニューからファイルハッシュチェックサム(MD5、SHA-256)を取得する

ハッシュとは、任意の長さの入力文字列を受け取り、固定長の出力を出すことを意味します。 暗号化ハッシュアルゴリズム(MD5、SHA-256、SHA-384など)を使用して、2つのファイルが同一かどうかを確認できます。 チェックサムは、ファイルのデータ整合性チェックを実行するために使用されるハッシュ値です。 これは、ファイルの署名の一種です。

Windows 10 ISOイメージなどの大きなファイルをインターネットからダウンロードすると、ファイルの破損や、接続の不整合やその他の要因により数ビットが失われる可能性があります。 ハッシュ検証は、2つのハッシュ(Webサイトまたはサーバー上のソースファイルとダウンロードしたコピー)を比較するための最良の方法です。

多くのソフトウェアベンダーは、ファイルのダウンロード用のハッシュをサイトに載せています。 急流のサイトでハッシュ値が通常ダウンロードリンクに付随しているのを見たかもしれません。

また、ハッシュチェックサム比較は、コンピューター内の重複ファイルを識別したり、2つのフォルダーを比較したりするための優れた方法です。

この記事では、MD5、SHA-256、SHA-384アルゴリズムを使用してさまざまな方法で暗号化ハッシュを取得する方法と、機能をコンテキストメニューに統合する方法を見てみましょう。

Windowsの右クリックメニューからファイルハッシュチェックサムを取得する

PowerShellの使用

Windows PowerShell( powershell.exe )を使用すると、単一のコマンドラインでファイルハッシュをすばやく取得できます。 次にコマンドラインの例を示します。

 get-filehash -path "C:\ Users \ ramesh \ Desktop \ reinstall-preinstalledApps.zip" | フォーマットリスト 

これにより、以下に示すようにファイルハッシュが出力されます(デフォルトでは、SHA256アルゴリズムが使用されます)。

 アルゴリズム:SHA256ハッシュ:3A0F056494EB1C0257FCDB59F9F93811962D4F796AD2596EC6FF1CDF8D365470パス:C:\ Users \ ramesh \ Desktop \ reinstall-preinstalledApps.zip 

その他のアルゴリズム(SHA384など)を使用するには、上記のコマンドラインに-Algorithm SHA384パラメーターを追加します。

例:

 get-filehash -path "C:\ Users \ ramesh \ Desktop \ reinstall-preinstalledApps.zip" -Algorithm SHA384 | フォーマットリスト 

-Algorithmパラメーターの許容値は次の-Algorithmです。

  • SHA1
  • SHA256
  • SHA3​​84
  • SHA512
  • MD5

クリップボードにコピー

出力をクリップボードにコピーするには、次のように出力をクリップコマンドにパイプします。

 get-filehash -path "C:\ Users \ ramesh \ Desktop \ reinstall-preinstalledApps.zip" | フォーマットリスト| クリップ 

コマンドを右クリックメニューに統合する

PowerShellコマンドをファイルの右クリックメニューに追加するには、.regファイルを次に示します。

 Windowsレジストリエディタバージョン5.00 [HKEY_CURRENT_USER \ Software \ Classes \ * \ shell \ gethash] @ = "Get File Hash" [HKEY_CURRENT_USER \ Software \ Classes \ * \ shell \ gethash \ command] @ = "powershell -WindowStyle Minimized -command get -filehash -literalpath '%1' -algorithm SHA256 | fl | clip " 
  • 上記の行をメモ帳にコピーし、.regファイルを作成します。 詳細については、「。regファイルを作成して使用する方法」を参照してください。
  • .regファイルをダブルクリックして、内容をレジストリに適用します。
  • 次に、ファイルを右クリックして、コンテキストメニューの[ファイルハッシュの取得 ]コマンドをクリックします。

このコマンドはPowerShellを起動します。PowerShellはファイルハッシュを生成し、それを自動的にクリップボードにコピーします。

追加したコンテキストメニューオプションを削除するには、この.regファイルを元に戻します

 Windowsレジストリエディタバージョン5.00 [-HKEY_CURRENT_USER \ Software \ Classes \ * \ shell \ gethash] 

VBScriptでのCertutil.exeの使用

Certutil.exeは、証明書サービスの一部としてインストールされる組み込みのコマンドラインプログラムです。 Certutil.exeを使用すると、さまざまなハッシュアルゴリズムを使用してファイルチェックサムを計算できます。 次のコマンドライン構文は、コマンドプロンプトウィンドウからCertutil.exeを使用してファイルのSHA256チェックサムを計算するために使用されます。

 certutil.exe -hashfile file_name SHA256 

右クリックメニューにCertutil.exeを実装する場合は、これを実行するVBScriptを以下に示します。

  1. 次のVBScriptコードをメモ帳にコピーします。
  2. 拡張子が.vbsのファイルを保存します(例: get-hash-certutil.vbs
     '右クリックメニューからファイルハッシュを取得'ファイルのSHA256ハッシュが自動的にクリップボードにコピーされます '作成:2019年6月4日、Ramesh Srinivasanによる-winhelponline.comオプションSet WshShell = WScript.CreateObject( "WScript.Shell")If WScript.Arguments.Count = 0 Then strInput = InputBox( "Type ADD to add the Get File Hash context menu item、or REMOVE to remove the item"、 "ADD" )If ucase(strInput)= "ADD" Then sCmd = "wscript.exe"&chr(34)&WScript.ScriptFullName&Chr(34)& ""& "" ""& "%1"& "" "" WshShell.RegWrite "HKCU \ Software \ Classes \ * \ shell \ gethash \"、 "Get File Hash"、 "REG_SZ" WshShell.RegWrite "HKCU \ Software \ Classes \ * \ shell \ gethash \ command \"、sCmd、 " REG_SZ "WScript.Quit ElseIf ucase(strInput)=" REMOVE "Then sCmd =" reg.exe delete HKCU \ Software \ Classes \ * \ shell \ gethash "&" / f "WshShell.Run sCmd、0 WScript.Quit End Ifそれ以外の場合、sFileName = "" ""&WScript.Arguments(0)& "" "" sCmd = "cmd.exe / c certutil.exe -hashfile"&sFi leName& "SHA256"&_ "| findstr / v "&chr(34)&"正常に完了しました "&Chr(34)&" | クリップ "WshShell.Run sCmd、0 End If 
  3. ファイルをダブルクリックして実行します。
  4. 表示される入力ボックスに「 ADDと入力し、[OK]をクリックします。

コンテキストメニューにGet File Hashコマンドを追加します。

メニュー項目をクリックすると、 SHA256ハッシュが計算され、自動的にクリップボードにコピーされます。

メモ帳を開き、クリップボードに保存されているファイルハッシュを貼り付けます。

注:コンテキストメニューのエントリを削除するには、ファイルをダブルクリックして実行します。 次に、 REMOVEと入力して[OK]をクリックします。

上記のスクリプトは、組み込みのcertutil.exeを使用して、コマンドを実行し、その出力をClip.exeを使用してクリップボードにリダイレクトすることにより、ファイルハッシュを生成します。

 certutil -hashfile file_name SHA256 

これは、コマンドプロンプトから実行したときの出力の様子です。

Certutil.exeは、 MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512ハッシュアルゴリズムをサポートしています。

コンテキストメニューからファイルハッシュを取得する別の方法は、 HashMyFilesなどのサードパーティのユーティリティを使用することです


NirSoftのHashMyFilesユーティリティ

HashMyFilesはNirsoftの小さなユーティリティで、システム内の1つ以上のファイルのMD5およびSHA1ハッシュを計算できます。 MD5 / SHA1ハッシュリストをクリップボードに簡単にコピーしたり、text / HTML / XMLファイルに保存したりできます。 HashMyFilesは、Windowsエクスプローラーのコンテキストメニューから起動することもでき、選択したファイルまたはフォルダーのMD5、SHA256、SHA384、SHA512ハッシュを表示できます。

[オプション]メニューの[ エクスプローラのコンテキストメニューを有効にする]オプションをクリックして有効にします。 ファイルとフォルダーのコンテキストメニューにHashMyFilesオプションを追加します。

Nashsoft.netからHashMyFilesをダウンロードします


7-Zipの使用

人気のある圧縮ユーティリティ7-Zipには、右クリックメニューからCRCまたはSHAチェックサムを計算できる機能があります。 7-Zipは広く使用されているソフトウェアであり、コンピューターにインストールした可能性があります。

7-Zipセットアップでは、このオプションはまだ有効化されていません。[ツール]メニューをクリックし、[オプション]をクリックして、 コンテキストメニュー項目の下のCRC SHA >オプションを有効にすることで、オプションを有効にできます 。 [OK]をクリックして設定を保存します。

次に、ファイルを右クリックして[CRC SHA]をクリックし、サブメニューからCRC-32、CRC-64、SHA-1、SHA-256などのハッシュアルゴリズムを選択します。 上記のすべてのハッシュアルゴリズム(およびさらにBLAKE2アルゴリズム)を選択するには、アスタリスク( * )オプションをクリックします。

チェックサム情報は別のダイアログに表示されます。

アイテムを選択し、キーボードのCtrl + Cを押して、アイテムをクリップボードにコピーできます。


Binary FortressのHashToolsの使用

Binary Fortress SoftwareのHashToolsは、ワンクリックでハッシュを計算してチェックします! CRC32、MD5、SHA1、SHA256、SHA384、SHA512、SFVをサポートし、ワンクリックでアクセスできるようにWindowsエクスプローラーのコンテキストメニューに統合します。

HashToolsをインストールするか、ポータブルエディションまたはツールを実行します。 歯車のアイコンが表示されている[オプション]ボタンをクリックし、[ Windowsコンテキストメニューに追加 ] クリックします。

ファイルまたはファイルのセットを右クリックし、コンテキストメニューの[ ハッシュとハッシュツール ]をクリックします。

これによりHashToolsプログラムが起動し、選択したファイルがリストに追加されます。 次に、ハッシュアルゴリズム(CRC、MD5、SHA1、SHA256など)をクリックして、ファイルのハッシュチェックサムを生成します。

ファイルのハッシュを計算する他のツールや方法を知っていますか? 以下のコメント欄でお知らせください。

関連記事