openssl的使用

1.生成私钥

openssl genrsa -out rsa_private_key.pem  1024

 

2、通过私钥生成公钥

openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem

 

3、对私钥进行pkcs8编码

openssl pkcs8 -in rsa_private_key.pem -topk8 -out pkcs9_rsa_private_key.pem  -inform PEM -outform PEM  -nocrypt

 

4、生成加密的私钥

openssl genrsa -aes256 -passout pass:123456 -out aes_rsa_private_key.pem 1024

 

5、通过加密私钥生成公钥

openssl rsa -in aes_rsa_private_key.pem -passin pass:123456 -pubout  -out rsa_public_key.pem

6、非加密私钥转加密

openssl rsa -in rsa_private_key.pem -aes256 -passout pass:123456 -out t_aes_rsa_private_key.pem

7、加密转非加密

openssl rsa -in t_aes_rsa_private_key.pem -passin pass:123456 -out t_rsa_private_key.pem

8、私钥pem转der

openssl rsa -in rsa_private_key.pem -outform der  -out rsa_private_key.der

9、查看私钥明细

openssl rsa -in rsa_private_key.pem -text -noout

10、通过已有的私钥生成签名证书

openssl req -new -x509 -days 365 -key aes_rsa_private_key.pem -out cert.crt

11、生成私钥和签名证书

openssl req -newkey rsa:2048 -nodes -keyout rsa_private_key.pem -x509 -days 365 -out cert.crt  #-nodes指的是不用密码

12、通过私钥生成CA签名

openssl req  -new -key aes_rsa_private_key.pem -passin pass:123456 -out server.csr

 *** 此时生成的 csr签名请求文件可提交至 CA进行签发 ***

13、查看csr细节信息

openssl req -noout -text -in server.csr

14、查看证书细节

openssl x509 -in server.crt -noout -text

15、通过pem证书和私钥生成pkcs#12证书(也叫:pfx)

openssl pkcs12 -export  -password pass:123456 -in server.crt  -inkey rsa_private_key.pem -out server.p12

其中-export指导出pkcs#12 证书,-inkey 指定了私钥文件,-passin 为私钥(文件)密码(nodes为无加密),-password 指定 p12文件的密码(导入导出)

##############################################################################################

摘要算法

过程:

1.使用md5指定sha1算法,明文输出签名文件(所以建议做摘要和签名验证时使用dgst指令,以免误导)

openssl dgst  -sha1 -sign rsa_private_key.pem cert.crt -out sign.txt
---一样的结果
openssl md5  -sha1 -sign rsa_private_key.pem cert.crt -out sign.txt
---指定-c -hex参数,以16进制打印结果
openssl dgst  -sha256 -c -hex  -sign rsa_private_key.pem cert.crt

 结果:

 

 

2.使用RSA秘钥进行签名验证操作

--公钥验证
openssl dgst -verify rsa_public_key.pem -sha1  -signature sign.txt  cert.crt
--私钥验证
openssl dgst -prverify rsa_private_key.pem -sha1  -signature sign.txt  cert.crt

 结果:

 

 

证书信息:

证书版本:            V3
证书序列号:          07000220180925110000001562261
证书持有者秘钥标识符:  80:B2:32:B9:37:C3:F9:E9:8D:D3:DC:44:E9:59:AB:47:93:9E:70:CB
//证书拥有者
证书拥有者信息:       /C=CN/ST=广东省/L=深圳市/O=机构测试3/OU=深圳共筑网络科技项目测试/CN=机构测试3
证书拥有者信息CN:     机构测试3
证书拥有者信息O:      机构测试3
证书拥有者信息OU:     深圳共筑网络科技项目测试
//证书颁发者
颁发者秘钥标识符:     keyid:95:4D:13:1F:6B:21:91:09:6F:16:12:8A:65:BC:0B:56:0B:11:6B:C8
证书颁发者信息:        /C=CN/O=Global Digital Cybersecurity Authority Co., Ltd./CN=GDCA Public CA1
证书颁发者CN:        GDCA Public CA1
证书颁发者O:         Global Digital Cybersecurity Authority Co., Ltd.

证书有效期:          2018-9-25:00:00:00  2019-9-25:00:00:00
秘钥用途:            Digital Signature, Non Repudiation

证书信息:

    CN: 公有名称(Comon Name)     ---对于签名证书为申请单位名称,对于客户端为证书申请者姓名

    O:单位名称(Orgnization Name)  ---对于签名证书为申请单位名称,对于客户端证证书申请者所在的单位名称

   其他的单词意思好理解

    OU: 显示其他内容

issuer : 证书是由哪个公司创建的

 

名词解释:

OAEP(optimal asymmetric encryption padding):最优非对称加密填充。RSA加解密多基于OAEP。

PSS(probability Signature schema):。RSA的签名认证是基于PSS的

pkcs8

说明:

1、将pkcs8格式的秘钥转换成pkcs1的秘钥

2、将pkcs1的秘钥转换成pkcs8的加密秘钥或无加密秘钥

# 生成无加密的私钥文件。一般是java程序使用
openssl pkcs8 -in ecc_ca_private_key.pem -topk8  -nocrypt
 
# 生成加密的pkcs8格式的私钥文件
openssl pkcs8 -in ecc_ca_private_key.pem -topk8 -v2 des3  -out pkcs8/ecc_ca_private_key_pkcs8.pem

# 读取加密的pkcs8文件、无加密的pkcs8文件
openssl pkcs8 -in ecc_ca_private_key_pkcs8.pem
openssl pkcs8 -in ecc_ca_private_key_pkcs8.pem -nocrypt

 

ECC的使用

1.创建ecc私钥文件和ecc参数

openssl ecparam -out ecc_private_key.pem -name prime256v1 -genkey
# 补充:导出ecc公钥
openssl pkey -in ecc_ca_private_ket.pem -pubout -out ecc_ca_public_key.pem
# 查看支持的椭圆曲线列表
openssl ecparam -list_curves

结果:

 

2.查看ecc的参数

penssl ecparam  -in ecc_private_key.pem -text

结果:

3.验证ecc参数

openssl ecparam  -in ecc_private_key.pem -check

结果:

4..签发证书

1.生成CA的ecc私钥文件
openssl ecparam -out ecc_ca_private_ket.pem -name prime256v1 -genkey
2.生成CA的请证书求文件
openssl req  -key ecc_ca_private_ket.pem -new -out ecc_ca.req
3.通过证书请求文件生成证书
openssl x509 -req -in  ecc_ca.req -signkey ecc_ca_private_ket.pem -out ecc_ca_x509.pem

4.生成子站点CA的ecc秘钥文件
openssl ecparam -name prime256v1 -genkey -out ecc_ca_site_private_key.pem
5.生成子站点CA的证书请求文件
openssl req -key ecc_ca_site_private_key.pem  -new -out ecc_ca_site.req
6.通过CA根证书和子站点证书请求文件生成子站点证书
openssl x509 -req -in ecc_ca_site.req -CA ecc_ca_x509.pem -CAkey ecc_ca_private_ket.pem


结果:

 

  • 3
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
openssl使用指南pdf是一个关于openssl开源软件的使用手册,主要介绍了openssl的安装、配置和使用方法。 首先,openssl是一个用于安全通信的软件工具包,它提供了一系列的密码学功能,包括对数字证书的创建和管理、加密和解密数据、生成和验证数字签名等功能。 要开始使用openssl,首先需要在操作系统上安装openssl软件包,可以从官方网站上下载安装程序,根据提示进行安装。安装完成后,可以通过命令行界面进行openssl的操作。 在配置openssl之前,可以先了解一些基本的openssl命令,如生成证书请求、创建自签名证书、生成RSA密钥等。openssl提供了众多的命令行选项,可以根据具体的需求进行配置。 生成证书请求是使用openssl的一个重要步骤,可以使用命令"openssl req"来生成证书请求文件,然后将该文件发送给证书颁发机构进行签发。生成自签名证书可以使用命令"openssl req -x509",该命令会自动生成一个自签名的证书文件。 在使用openssl时,还可以进行数据的加密和解密操作,可以使用命令"openssl enc"进行对称加密,使用命令"openssl rsautl"进行RSA加密。同时,openssl还提供了用于对数据进行摘要和验证的命令,如"openssl dgst"和"openssl rsa"。 在操作过程中,可以通过openssl的配置文件进行一些默认行为的设置,如证书存储路径、加密算法选项等。可以使用命令"openssl version"来查看openssl的版本信息。 总之,openssl使用指南pdf是一个详细介绍了openssl软件包的使用方法的文档,通过学习和实践,可以逐步掌握openssl使用技巧,从而更好地应用于网络安全领域。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

廖钺焕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值