openssl操作公私钥和加解密的一些常用命令
Posted glensblog
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了openssl操作公私钥和加解密的一些常用命令相关的知识,希望对你有一定的参考价值。
生成公私钥实践:
生成私钥,这里以椭圆曲线secp256k1为例:
openssl ecparam -name secp256k1 -genkey -out secp256k1-priv.pem #带EC曲线参数
openssl ecparam -name secp256k1 -genkey -noout -out secp256k1-priv.pem #不带EC曲线参数
查看私钥文件中的内容,包括私钥和公钥的hex编码形式:
openssl pkey -in secp256k1-priv.pem -text
根据私钥生成对应公钥:
openssl ec -in secp256k1-priv.key -pubout -out secp256k1-pub.key
私钥文件通常有两种格式pkcs#1和pkcs#8,上面生成的默认为pkcs#1格式,
pkcs#1格式包括如下头部和尾部:
-----BEGIN EC PRIVATE KEY-----
......
-----END EC PRIVATE KEY-----
pkcs#8格式包括如下头部和尾部
-----BEGIN PRIVATE KEY-----
......
-----END PRIVATE KEY-----
如果要转换为pkcs#8格式:
openssl pkcs8 -topk8 -nocrypt -in secp256k1-priv.key -out secp256k1-priv-pk8.key
以上是关于openssl操作公私钥和加解密的一些常用命令的主要内容,如果未能解决你的问题,请参考以下文章
Java中使用OpenSSL生成的RSA公私钥进行数据加解密
ssh密码登陆的原理,密码的公私钥和sshkey的不是一回事