これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド ocsptool です。
プログラム:
NAME
ocspツール - GnuTLS OCSP ツール
SYNOPSIS
ocspツール [-フラグ] [-国旗 [値]][-オプション名[[= | ]値]]
すべての引数はオプションである必要があります。
DESCRIPTION
ocsptool は、OCSP リクエスト/レスポンスに関する情報を解析して出力できるプログラムです。
リクエストを生成し、レスポンスを確認します。
OPTIONS
-d 数, - デバッグ=数
デバッグを有効にします。 このオプションは、引数として整数を取ります。 値
of 数 次のように制約されます:
0から9999の範囲
デバッグレベルを指定します。
-V, -詳細
より詳細な出力。 このオプションは、無制限に表示される場合があります。
--infile=file
入力ファイル。
--outfile=string
出力ファイル。
- 聞く [= 名前|URL]
OCSP/HTTP サーバーに証明書の有効性を問い合わせます。 このオプションは次の場所に指定する必要があります
次のオプションと組み合わせます:load-cert、load-issuer。
指定された HTTP OCSP サーバーに接続し、HTTP OCSP サーバーの有効性をクエリします。
ロードされた証明書。
-e, --検証応答
応答を確認します。
-i, --リクエスト情報
OCSP リクエストに関する情報を出力します。
-j, --応答情報
OCSP 応答に関する情報を出力します。
-q, --生成要求
OCSP リクエストを生成します。
--ノンス, - Fl -ノンノンス
OCSP リクエストに nonce を使用する (または使用しない)。 の ノーナンス フォームはオプションを無効にします。
--ロード発行者=file
ファイルから発行者の証明書を読み取ります。
--load-cert=file
証明書を読み取ってファイルから確認します。
--load-trust=file
OCSP トラスト アンカーをファイルから読み取ります。 このオプションは次のものと組み合わせて使用することはできません
次のオプションのいずれか: ロード署名者。
--ロード署名者=file
OCSP 応答の署名者をファイルから読み取ります。 このオプションを組み合わせて使用することはできません
次のオプションのいずれかを指定します:load-trust。
--インダー, - Fl -ノーインダー
入力証明書と秘密キーには DER 形式を使用します。 の 入場禁止 フォームは
オプションを無効にします。
-Q file, --ロードリクエスト=file
DER エンコードされた OCSP リクエストをファイルから読み取ります。
-S file, --負荷応答=file
DER エンコードされた OCSP 応答をファイルから読み取ります。
-h, - 助けて
使用情報を表示して終了します。
-!, -詳細-ヘルプ
拡張使用情報をポケットベルに渡します。
-v [{v | c | n - バージョン [{v | c | n}]}]
プログラムのバージョンを出力して終了します。 デフォルトのモードは、単純なバージョンの「v」です。
「c」モードは著作権情報を印刷し、「n」は完全な著作権を印刷します
通知。
例
印刷物 情報 自己紹介 an OCSP 要求
OCSP リクエストを解析してコンテンツに関する情報を出力するには、 -i or --リクエスト情報
パラメータは次のように使用できます。 の -Q パラメータでファイル名を指定します
OCSP リクエストが含まれており、バイナリ DER 形式の OCSP リクエストが含まれている必要があります。
$ ocsptool -i -Q ocsp-request.der
入力ファイルは次のように標準入力に送信することもできます。
$ cat ocsp-request.der | ocsptool --リクエスト情報
印刷物 情報 自己紹介 an OCSP 応答
OCSP リクエストの解析と同様に、OCSP 応答は次のコマンドを使用して解析できます。 -j or
--応答情報 以下のとおりです。
$ ocsptool -j -Q ocsp-response.der
$ cat ocsp-response.der | ocsptool --response-info
生成する an OCSP 要求
この -q or --生成要求 パラメータは、OCSP リクエストを生成するために使用されます。 デフォルトでは
OCSP リクエストはバイナリ DER 形式で標準出力に書き込まれますが、次の場所に保存できます。
を使用したファイル --outfile。 OCSP リクエストを生成するには、証明書の発行者に次のことを要求します。
チェックを指定する必要があります --ロード発行者 および確認する証明書
--load-cert。 デフォルトでは、これらのファイルには PEM 形式が使用されますが、 --インダー 使用することができる
入力ファイルが DER 形式であることを指定します。
$ ocsptool -q --load-issuer issuer.pem --load-cert client.pem --outfile ocsp-request.der
OCSP リクエストを生成するとき、ツールはノンスを含む OCSP 拡張機能を追加します。
この動作は、次のように指定することで無効にできます。 --ノーノンス.
確認します 署名 in OCSP 応答
OCSP 応答の署名を検証するには、 -e or --検証応答 パラメータが使用されます。
このツールは、標準入力またはファイルから DER 形式の OCSP 応答を読み取ります。
によって指定された --負荷応答。 OCSP 応答は一連の信頼に対して検証されます
アンカー。次を使用して指定されます。 --load-trust。 トラストアンカーは連結されています
PEM 形式の証明書。 OCSP 応答に署名した証明書は次の場所にある必要があります。
トラストアンカーのセット、または署名者証明書の発行者がセットに含まれている必要があります
トラスト アンカーの数と OCSP 拡張キー使用ビットが署名者でアサートされる必要がある
証明書。
$ ocsptool -e --load-trust issuer.pem --load-response ocsp-response.der
ツールは検証のステータスを出力します。
確認します 署名 in OCSP 応答 に対して 与えられた 証明書
特定の証明書が存在することがわかっている場合は、通常の信頼ロジックをオーバーライドすることができます。
は OCSP 応答に署名しているはずなので、それを使用して OCSP 応答を確認したいと考えています。
サイン。 これは次を使用して実現されます --ロード署名者 --load-trust。 これはロードされます
XNUMX つの証明書があり、それは OCSP 応答の署名を検証するために使用されます。 そうなる
拡張キー使用ビットをチェックしません。
$ ocsptool -e --load-signer ocsp-signer.pem --load-response ocsp-response.der
通常、このアプローチは XNUMX つの状況でのみ関連します。 XNUMX つ目は、OCSP が
応答には署名者証明書のコピーが含まれていないため、 --load-trust コードは
失敗。 XNUMX つ目は、OCSP 応答の署名者が行う間接モードを回避したい場合です。
証明書はトラストアンカーによって署名されています。
現実の世界 例
以下は、証明書の OCSP リクエストを生成し、証明書を検証する方法の例です。
応答。 説明のために、 blog.josefsson.org ホスト、(執筆時点)
CACert の証明書を使用します。 まず使用します gnutls-cli サーバーのコピーを取得するには
証明書チェーン。 サーバーはこの情報を送信する必要はありませんが、
特定のものがそうするように構成されています。
$エコー | gnutls-cli -p 443 blog.josefsson.org --print-cert >chain.pem
テキストエディタを使用して、 チェーン.ペム 個別の証明書ごとに XNUMX つのファイルを作成するには、
呼ばれます 証明書.pem XNUMX つ目はドメイン自体の証明書、XNUMX つ目は 発行者.pem for
中間証明書と root.pem 最終的なルート証明書の場合。
ドメイン証明書には通常、OCSP レスポンダが配置されている場所へのポインタが含まれています。
典拠情報アクセス情報拡張子内。 たとえば、から 証明書ツール -i
< 証明書.pem こんな情報があります:
権限情報 アクセス情報 (重要ではありません):
アクセス方法:1.3.6.1.5.5.7.48.1(id-ad-ocsp)
アクセス場所の URI: http://ocsp.CAcert.org/
これは、CA が HTTP 経由の OCSP クエリをサポートしていることを意味します。 これで OCSP を作成する準備ができました。
証明書を要求します。
$ ocsptool --ask ocsp.CAcert.org --load-issuer issuer.pem --load-cert cert.pem --outfile ocsp-response.der
リクエストは、HTTP 経由で指定された OCSP サーバー アドレスに送信されます。 住所が
省略された ocsptool は証明書に保存されているアドレスを使用します。
EXIT ステータス
次のいずれかの終了値が返されます。
0(EXIT_SUCCESS)
プログラムの実行が成功しました。
1(EXIT_FAILURE)
操作が失敗したか、コマンド構文が無効でした。
70(EX_SOFTWARE)
liboptsに内部操作エラーがありました。 autogenに報告してください-
[メール保護]。 ありがとうございます。
onworks.net サービスを使用して ocsptool をオンラインで使用する