loj*_*joe 5 encryption openssl
使用 openssl 生成密钥时,可以选择使用密码对生成的密钥进行加密。
openssl genpkey -algorithm rsa -out rsa.key -aes-128-cbc
Run Code Online (Sandbox Code Playgroud)
在此示例中,CBC 模式下的 AES 128 用于加密文件“rsa.key”中生成的密钥。
如果想要将密钥与 openssl 一起使用,则必须提供密码。
openssl pkcs8 -in rsa.key
Enter Password:
Run Code Online (Sandbox Code Playgroud)
openssl 会以某种方式检测密钥加密算法。openssl 是否可以打印出用于加密密钥的加密算法?
小智 4
您可以解析密钥文件的 ASN.1 结构,这将包括所使用的算法:
$ openssl genpkey -algorithm rsa -out rsa.key -aes-128-cbc
.........................................+++++
....................................................................+++++
Enter PEM pass phrase: foobar
Verifying - Enter PEM pass phrase: foobar
$ openssl asn1parse -in rsa.key |cut -b-90
0:d=0 hl=4 l=1325 cons: SEQUENCE
4:d=1 hl=2 l= 87 cons: SEQUENCE
6:d=2 hl=2 l= 9 prim: OBJECT :PBES2
17:d=2 hl=2 l= 74 cons: SEQUENCE
19:d=3 hl=2 l= 41 cons: SEQUENCE
21:d=4 hl=2 l= 9 prim: OBJECT :PBKDF2
32:d=4 hl=2 l= 28 cons: SEQUENCE
34:d=5 hl=2 l= 8 prim: OCTET STRING [HEX DUMP]:28E5C2C6CDFBE483
44:d=5 hl=2 l= 2 prim: INTEGER :0800
48:d=5 hl=2 l= 12 cons: SEQUENCE
50:d=6 hl=2 l= 8 prim: OBJECT :hmacWithSHA256
60:d=6 hl=2 l= 0 prim: NULL
62:d=3 hl=2 l= 29 cons: SEQUENCE
64:d=4 hl=2 l= 9 prim: OBJECT :aes-128-cbc <=========
75:d=4 hl=2 l= 16 prim: OCTET STRING [HEX DUMP]:7FEB38B0D1568721F586F317E1EADF2F
93:d=1 hl=4 l=1232 prim: OCTET STRING [HEX DUMP]:D7D14657999BD0485DE9C4423A9FFEB2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6574 次 |
| 最近记录: |