1 openssl rsa certificate private-key
我的 Firefox/Thunderbird 版本高于 31 时有证书问题。由于未知原因,导入失败。我可以在旧版本的 F/T 中导入证书并再次导出,之后它在当前版本中运行良好。我发现证书之间的唯一区别是私钥属性。证书采用 pkcs12 格式。
首先我提取了私钥
openssl pkcs12 -in certificate.p12 -nocerts -out privatekey.pem
Run Code Online (Sandbox Code Playgroud)
然后我打印出详细信息
openssl rsa -in privatekey.pem -text -noout
Run Code Online (Sandbox Code Playgroud)
我从我的旧证书和导出的证书中得到完全相同的输出,除了 prime1、prime2 和 exponent1、exponent2 被切换并且系数不同。
有没有简单的方法可以用命令解决问题?也许是一个 openssl 命令?
附加信息:
来自工作导出私钥的 prime1 和 prime2。在旧的私钥中,它的输出完全相同,但 prime1 和 prime2 相同,反之亦然。
prime1:
00:f6:63:95:7c:1a:96:4f:33:c7:dd:3f:a4:dc:7d:
00:5f:e3:0e:93:d7:2f:88:d1:44:f3:2b:75:38:00:
18:bb:19:ba:af:ac:20:34:93:d0:42:fb:d7:73:66:
f6:cc:d8:10:b1:31:ea:f8:79:5d:f5:08:56:2f:2d:
d8:31:e6:6e:62:92:89:eb:1e:44:31:ed:92:0a:a1:
02:ef:f5:f7:7c:2c:a0:26:60:5b:95:3a:a4:44:fa:
dc:ce:99:88:88:d7:f2:25:1d:48:6f:c6:b4:72:d0:
b0:50:59:18:e8:81:c7:13:45:e2:04:38:8f:d7:53:
50:0a:7a:44:8f:21:e9:d4:bd
prime2:
00:96:4a:84:35:b9:bd:0c:f4:00:e1:d4:2e:f7:49:
ce:a5:0f:3d:90:83:ad:5b:7b:e0:06:a4:a1:6a:bd:
2e:7c:3c:b8:1c:f1:b9:45:fc:41:00:ec:70:5b:ba:
00:21:62:df:54:07:9a:b1:09:93:89:27:f8:29:55:
bf:90:81:ea:07:ef:0f:dd:ca:11:da:d6:aa:e7:de:
16:6c:68:52:fe:51:e6:20:46:3c:97:af:e2:a6:fd:
ef:bb:e3:08:9d:13:18:88:51:73:ae:81:15:7c:1b:
86:52:d5:16:cc:86:66:8e:b8:48:b9:6c:14:27:10:
82:8e:04:e6:ea:25:af:20:53
Run Code Online (Sandbox Code Playgroud)
小智 8
这是答案。
prime1: p
prime2: q
modulus: N = p * q
publicExponent: e
privateExponent: d
Run Code Online (Sandbox Code Playgroud)
看看这篇关于使用中国余数算法的文章。
exponent1 = dp
exponent2 = dq
coefficient = qInv
Run Code Online (Sandbox Code Playgroud)
请参阅此参考。