pkcs11-tool
无法导入RSA私钥,即使它已被openssl正确解析。它失败了:
error: OpenSSL error during RSA private key parsing
Aborting.
密钥已经采用DSA格式,我尝试使用以下方法导入密钥:
pkcs11-tool --module ... -y privkey --slot ... -w some/path.der -l --id ...
答案 0 :(得分:0)
RSA私钥可以以两种方式在DER中编码。它有一个标题定义了它的键,或者它可能只是一个字段列表(由PKCS#1 RSAPrivateKey序列定义)。 openssl
命令本身在大多数情况下透明地处理两种形式,但d2i_RSAPrivateKey
没有。它希望RSAPrivateKey
序列可以直接使用。
可以从DER或PEM格式文件生成所需文件。它是使用openssl rsa -in ... -outform DER -out ...
包装格式在openssl asn1parse
输出中显示如下:
0:d=0 hl=4 l=2370 cons: SEQUENCE
4:d=1 hl=2 l= 1 prim: INTEGER :00
7:d=1 hl=2 l= 13 cons: SEQUENCE
9:d=2 hl=2 l= 9 prim: OBJECT :rsaEncryption
20:d=2 hl=2 l= 0 prim: NULL
22:d=1 hl=4 l=2348 prim: OCTET STRING [HEX DUMP].....
未打开的人看起来像这样:
0:d=0 hl=4 l=2344 cons: SEQUENCE
4:d=1 hl=2 l= 1 prim: INTEGER :00
7:d=1 hl=4 l= 513 prim: INTEGER :...
524:d=1 hl=2 l= 3 prim: INTEGER :010001
529:d=1 hl=4 l= 513 prim: INTEGER :...