2

誰かがPIVスマートカード標準を手伝ってくれることを望んでいました。

以前に生成されたRSA1024ビットモジュラスデジタル署名キー0x9Cを使用してPKCS#1パッド付きナンスに署名させることにより、スマートカードを認証したいと思います。テストアプリケーションの出力は次のようになります。

Requesting Signature
Sending: 0087069C867C84820081800001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00CB441C4A656E071F1FB9F31BC6AB1824324FB42780
Error: (6A80) Incorrect parameters in command data

そしてここに内訳があります:

00 - Not chained (chaining not required because message does not exceed max length)
87 - GENERAL AUTHENTICATE
06 - RSA 1024 Algorithm
9C - Digital Signature Key
86 - Length of data field
  7C - Dynamic Authentication template identifier
  84 - Length of dynamic authentication template
    82 - Response
    00 - Response length 0 (Response requested)
    81 - Challenge
    80 - Challenge length 128
      0001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00CB441C4A656E071F1FB9F31BC6AB1824324FB427 - PKCS #1 padded 20-byte Nonce (Padded with OpenSSL RSA_padding_add_PKCS1_type_1)
80 - Expected response length (128 bytes)

また、すべての異なるキーを使用して(すでにすべてを正常に生成している)、連鎖メッセージと単一部分メッセージを使用してテストを実行しました。詳細なテストデータを参照してください。

4

1 に答える 1

2

スマートカードにロードされたPIVカードアプレットにバグがありました。0x00で始まるデータには署名しません。0x00を他の値に変更すると(整数としてのデータがRSAアルゴリズムの要件ごとの整数としてのモジュラスよりも小さい限り)、正常に署名されます。したがって、もちろんこれは、これらのカードが標準のPKCS1で埋められたデータに署名できないことを意味します:(

助けてくれてありがとう

于 2012-07-05T13:43:59.817 に答える