2

RSAの公開鍵と秘密鍵(すべてp、q、e、n、d)をPEM形式で持っています。私は知りたいです:

  • PK11_Sign()PK11_Verify()およびPK11_VerifyRecover()OpenSSL / Mozilla NSSライブラリから)RSAとどのように連携しますか?
  • 署名する入力メッセージにパディングをどのように適用しますか?

私の質問のコンテキストは次のとおりです。PK11_Sign()が署名中に入力データにパディングを追加するのを見ました。例(キーサイズが162ビットの場合):

私の入力=31323334353036373839
パッド入り入力=1FFFFFFFFFFFFFFFF0031323334353036373839

私が知りたいのですが:

  • このパディングスキームの名前とそれがどのように機能するかについてのポインタは何ですか?
  • 上記のOpenSSL関数のデフォルトのパディングスキームは何ですか?たとえば、「openssl rsautl -in input.txt -inkey mykey.pem -out signed.txt」を実行すると、どのパディングスキームが使用されますか?
4

1 に答える 1

3
  • PK11_Signなどは、PKCS#1 v.1.5署名を使用します。これには、言及したパディングが含まれます。

  • パディングスキームは、EMSA-PKCS1-V1_5-ENCODEと呼ばれるアルゴリズムの一部です。非公式に「PKCS#1v.1.5署名パディング」と呼ばれることもありますが、名前が付いているとは思いません。PKCS#1標準で定義されています。

  • ドキュメントによると、デフォルトでopenssl rsautlはPKCS#1 v.1.5署名を使用します。これは、このパディングを意味します。

于 2011-01-21T11:41:27.817 に答える