当前位置:   article > 正文

OpenSSL 常用命令_openssl rsa -in $endusername.key -pubout | openssl

openssl rsa -in $endusername.key -pubout | openssl base64 -d | dd bs=1 skip=

1、生成 rsa 私钥

openssl genrsa -aes256 -out ca_private.key 2048
  • 1

2、去除私钥密码保护

openssl rsa -in ca_private.key -out ca.key
  • 1

3、根据私钥生成公钥

openssl rsa -in ca_private.key -out ca_public.key -pubout
  • 1

4、生成证书请求

openssl req -new -sha256 -key ca.key -out ca.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=CA/emailAddress=user1@test.com"
  • 1

5、生成自签证书

openssl x509 -req -days 36500 -sha256 -extensions v3_req -extensions v3_ca -signkey ca.key -in ca.csr -out ca.cer
  • 1

6、查看 x509 证书

openssl x509 -in ca.cer -noout -text
  • 1

7、生成 pkcs#12 证书

openssl pkcs12 -export -clcerts -in ca.cer -inkey ca_private.key -out ca.pfx
  • 1

8、签名

openssl rsautl -sign -inkey ca_private.key -in sign.txt  -out sign.t
  • 1

9、验签

openssl rsautl -verify -inkey ca_private.key -in sign.t -out verify.txt         # 使用私钥验签
openssl rsautl -verify -in sign.t -out verify.txt -inkey ca_public.key -pubin   # 使用公钥验签
  • 1
  • 2

10、比较文件

diff sign.txt verify.txt
  • 1

11、数据加密

openssl rsautl -encrypt -inkey ca_public.key -in ecrypt.txt -out e.txt -pubin   # 使用公钥加密
openssl rsautl -encrypt -certin -inkey ca.cer -in ecrypt.txt -out e.txt         # 使用证书中公钥加密
  • 1
  • 2

12、数据解密

openssl rsautl -decrypt -inkey ca_private.key -in e.txt -out decrypt.txt
  • 1

13、将 x509 证书从 pem 格式转换为 der 格式

openssl x509 -inform PEM -outform DER -in ca.cer -out ca.der
  • 1

14、将 x509 证书从 der 格式转换为 pem 格式

openssl x509 -inform DER -outform PEM -in ca.der -out ca.pem
  • 1

15、将 rsa 密钥从 pem 格式转换为 der 格式

openssl rsa -inform PEM -outform DER -in ca_private.key -out ca_private.der         # 转换私钥
openssl rsa -inform PEM -outform DER -in ca_public.key -out ca_public.der -pubin    # 转换公钥
  • 1
  • 2

16、将 rsa 密钥从 der 格式转换为 pem 格式

openssl rsa -inform DER -outform PEM -in ca_private.der -out ca_private.pem         # 私钥装换
openssl rsa -inform DER -outform PEM -in ca_public.der -out ca_public.pem -pubin    # 转换公钥
  • 1
  • 2

17、base64 编码

openssl base64 -e -in text.ascii -out text.base64
  • 1

18、base64 解码

openssl base64 -d -in text.base64 -out text.ascii
  • 1

19、查看 openssl 支持的摘要算法

openssl dgst - + 双击 Tab 键
  • 1

20、计算摘要信息

openssl dgst -md5 ecrypt.txt    # 使用 md5 对 ecrypt.txt 计算摘要
openssl dgst -sha1 ecrypt.txt   # 使用 sha1 对 ecrypt.txt 计算摘要
  • 1
  • 2

21、创建 EC 参数和私钥文件(使用 prime256v1 曲线)

openssl ecparam -out ec_param.pem -name prime256v1 -param_enc explicit -genkey
  • 1

22、查看EC私钥

openssl ecparam -in ec_param.pem -text
  • 1

23、验证EC参数

openssl ecparam -in ec_param.pem -check
  • 1

24、生成公钥

openssl ec -in ec_param.pem -pubout -out ec_pubkey.pem
  • 1

25、显示密钥

openssl ec -in ec_param.pem -text               # 显示私钥
openssl ec -in ec_pubkey.pem -pubin -text       # 显示公钥
  • 1
  • 2

26、生成 EC 证书请求

openssl req -new -sha256 -key ec_param.pem -out ecc.req -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.test.com/CN=CA/emailAddress=user1@test.com"
  • 1

27、生成 EC 证书

openssl x509 -req -days 36500 -signkey ec_param.pem -in ecc.req -out ecc.cer
  • 1

28、使用 EC 签名

29、使用 EC 验签

30、使用 EC 加密

31、使用 EC 解密

32、查看 openssl 支持的对称密钥算法

openssl enc -ciphers
  • 1

33、使用对称密钥加密

openssl enc -des-cbc -e -in data.txt -out encrypt.txt -pass pass:12345678
  • 1

34、使用对称密钥解密

openssl enc -des-cbc -d -in encrypt.txt -out data.txt -pass pass:12345678
  • 1

35、生成随机数

openssl rand -out rand.txt 100
  • 1

37、验证证书

openssl verify -verbose -CAfile ca.cer ca.cer       # 使用 ca.cer 验证 ca.cer 证书
  • 1

38、生成证书请求和私钥(非CA)

openssl req -new -newkey rsa:1024 -nodes -keyout one.key -out one.csr -subj "/C=CN/ST=SD/L=JN/O=QDZY/OU=www.nfs.com/CN=one/emailAddress=one@nfs.com"
  • 1

39、使用ca签发证书

openssl x509 -req -days 3650 -sha256 -in one.csr -CA ca.cer -CAkey ca.key -set_serial 01 -out one.crt
  • 1
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/308417
推荐阅读
相关标签
  

闽ICP备14008679号