web-dev-qa-db-ja.com

OpenTSAおよびPKCS11

OpenTSAを使用してタイムスタンプサービス( RFC 3161 )を実装することを計画しており、次のことを知りたいと思いました。

OpenTSAは、HSMと通信するためのPKCS#11(Cryptoki)をサポートしていますか?

ところで:OpenTSAに関するドキュメントや多くの情報は見つかりませんでした。

OpenTSAによるPCKS#11のサポートについてコメントしていただければ、本当に助かります。

1
java_enthu

タイムスタンププロトコルで定義されているタイムスタンプ応答を生成する方法を尋ねていると思います: RFC3161opensslを使用して、PKCS#11( TSA署名者としてのHSM)。

これを行うためにPKCS#11with opensslを使用するネイティブな方法はないと思います。 (多分次のようなプラグインで: openssl用のopensc pkcs11エンジン )。

tsコマンドのドキュメントを見ると: https://www.openssl.org/docs/apps/ts.html 。タイムスタンプ応答を生成するには、次のコマンドを使用できます。

openssl ts -reply [-config configfile] [-section tsa_section] [-queryfile request.tsq] [-passin password_src] [-signer tsa_cert.pem] [-inkey private.pem] [-chain certs_file.pem] [-policy object_id] [-in response.tsr] [-token_in] [-out response.tsr] [-token_out] [-text] [-engine id]

TSA署名者証明書と秘密鍵は、両方がPEM形式である必要があることを指定する次のパラメーターで指定されているため、PKCS#11の使用は不可能のようです。

-signer tsa_cert.pemPEM形式のTSAの署名者証明書。 TSA署名証明書には、timeStampingという1つの拡張キー使用法が割り当てられている必要があります。拡張キーの使用も重要である必要があります。そうしないと、証明書が拒否されます。構成ファイルのsigner_cert変数をオーバーライドします。 (オプション)

-inkey private.pemPEM形式のTSAの署名者秘密鍵。 signer_key設定ファイルオプションを上書きします。 (オプション)

ただし、前にコメントしたように、opensslにopensc pkcs11 engineを使用することは可能かもしれませんが、エンジンに慣れていないため、動作するかどうかを確認できません。これを見てください クイックスタートガイド これはあなたを正しい方向に導くかもしれません。

お役に立てれば、

2
albciff