暗号化ツール

暗号化ツールには、コード署名、署名検証、およびその他の暗号化タスク用のコマンド ライン ツールが用意されています。

コード署名の概要

ソフトウェア業界では、インターネットで公開されているコードを含むコードを信頼する手段をユーザーに提供する必要があります。 多くの Web ページには、ほとんどリスクを伴ってダウンロードできる静的な情報のみが含まれています。 ただし、一部のページには、ユーザーのコンピューターでダウンロードして実行するコントロールとアプリケーションが含まれています。 これらの実行可能ファイルは、ダウンロードして実行するリスクが高い場合があります。

パッケージ化されたソフトウェアは、ブランド化と信頼できる販売店を使用してユーザーの整合性を保証しますが、コードがインターネット上で送信される場合、これらの保証は利用できません。 さらに、インターネット自体は、ソフトウェア作成者の身元に関するいかなる保証も提供できません。 また、ダウンロードしたソフトウェアが作成後に変更されていないことを保証することもできません。 ブラウザーでは、あらゆる種類のデータをダウンロードする危険性を説明する警告メッセージが表示されることがありますが、ブラウザーは、コードが正しいと主張していることを確認できません。 インターネットをソフトウェアを配布するための信頼性の高い媒体にするには、より積極的なアプローチを取る必要があります。

ファイルの信頼性と 整合性 を保証する方法の 1 つは、 デジタル署名 をそれらのファイルに添付することです。 ファイルに添付されたデジタル署名は、そのファイルのディストリビューターを肯定的に識別し、署名の作成後にファイルの内容が変更されていないことを保証します。

デジタル署名は、Microsoft の暗号化 API を使用して作成および検証できます。 暗号化と CryptoAPI 関数の背景情報については、「 Cryptography Essentials」を参照してください。

デジタル署名証明書、証明書ストアの詳細については、次トピックを参照してください。

現在、CryptoAPI Tools は、ソフトウェア ベンダーが Authenticode 検証のために次の種類のファイルに署名できるようにすることで、Microsoft Authenticode テクノロジをサポートしています。

ファイル名の拡張子 内容
.appx、.msix、.appxbundle、.msixbundle
パッケージ化されたWindowsアプリ。
.cab
アプリケーションのインストールとセットアップに使用される自己完結型ファイル。 キャビネット ファイルでは、複数のファイルが 1 つのファイルに圧縮されます。 これらは、Microsoft ソフトウェア配布ディスクでよく見られます。
.cat
複数のファイルのデジタル 拇印を 含むファイル。 .cat ファイルを使用すると、拇印に含まれるファイルの整合性を確保できます。
.dll
実行可能関数を含むファイル。
.exe
実行可能プログラムを含むファイル。
.js
.vbs
.wsf
JScript または Microsoft Visual Basic Scripting Edition (VBScript) のシェル ファイルをWindowsします。
.msi
.msp
.mst
インストーラー ファイルをWindowsします。
.ocx
Microsoft ActiveX コントロールを含むファイル。
.ps1
PowerShell スクリプトを含むファイル。
.stl
証明書信頼リスト (CTL) を含むファイル。
.sys
ドライバー バイナリを含むファイル。

 

デジタル署名の詳細については、次のドキュメントを参照してください。

  • CCITT、勧告X.509、 Directory-Authenticationフレームワーク、コンサルテーション委員会、国際電話・電信、国際電気通信連合、ジュネーブ、1989年。
  • RSA ラボラトリ、 PKCS #7: 暗号化メッセージ構文標準。 バージョン 1.5、1993 年 11 月。
  • Schneier、Bruce、 Applied Cryptography、2d ed。 ニューヨーク:ジョン・ワイリー・ & サンズ、1996年。
  • https://www.rsa.com

Note

これらのリソースは、一部の言語や国または地域では利用できない場合があります。

 

Microsoft Cryptography Tools

発行ツールと署名 DLL は、Microsoft SDK インストールの \Bin ディレクトリにインストールされます。 次のファイルが含まれます。

ファイル名 解説
Cert2SPC.exe テスト目的でのみソフトウェア Publisher証明書 (SPC) を作成します。
CertMgr.exe 証明書、CTL、証明書 失効リスト (CRL) を管理します。
MakeCat.exe 一連のファイルのハッシュと各ファイルの関連付けられた属性を含む署名されていないカタログ ファイルを作成します。
MakeCert.exe テスト目的でのみ X.509 証明書を作成します。
Pvk2pfx.exe ソフトウェア発行元証明書ファイル (.spc) または秘密キー ファイル (.pvk) を個人情報Exchange (PFX) ファイル形式に変換します。
SetReg.exe 証明書の検証を制御するレジストリ キーを設定します。
SignTool.exe ファイルの署名とタイムスタンプ。 さらに、ファイルの署名を確認します。