1. 概念解释:

CSR文件:CSR,Certificate Signing Request的缩写,即证书签名请求,CSR文件是申请单位申请SSL证书时所需要的一个数据文件。CA使用CA自己的私钥对CSR文件的内容的摘要进行签名,生成数字证书PEM文件

2. openssl的使用方法

2.1.生成csr文件和私钥key文件

  • 使用RSA加密算法

openssl req -new –SHA256 -newkey rsa:2048 -nodes -keyout user5-org3.key -out user5-org3.csr -subj "/C=CN/ST=sh/L=sh/O=/OU=IT/CN=user5-org3"

说明:

user5-org3.csr就是生成的csr文件,user5-org3.key就是生成的私钥key文件。

私钥key文件通常有两种格式:pkcs#1和pkcs#8,默认为pkcs#1

pkcs#1格式包含如下的头部和尾部:

-----BEGIN EC PRIVATE KEY-----

base64的编码数据

-----END EC PRIVATE KEY-----

pkcs#8格式包含如下的头部和尾部:

-----BEGIN PRIVATE KEY-----

base64的编码数据

-----END PRIVATE KEY-----

  • 使用ECDSA加密算法

先生成ecparam.pem文件

openssl ecparam -out ecparam.pem -name prime256v1

再生成csr文件和私钥key文件

openssl req -new -SHA256 -newkey ec:ecparam.pem -nodes -keyout user5-org3.key -out user5-org3.csr -subj "/C=US/ST=North Carolina/L=North Carolina/O=/OU=user/CN=user5-org3"

说明:

这个例子指定了生成的csr文件里的一些域,通常使用的域的含义如下:

CN(Common Name):公用名,必填项,一般指网站域名全称,包括您的主机名+域名,例如www.163.com。公用名必须与要用该服务器证书的主机的全名完全相同,如www.163.com的证书是不能用在mail.163.com的主机上。163.com,www.163.com和mail.163.com这3个是3个不同的公用名

O(Organization):申请单位组织名,必填项,

OU(Organization Unit):申请单位的单位部门

C(City):申请单位所在的城市

ST(State/Province):申请单位所在的省份

C(Country Name):国家名称,一般用的是两位大写的国家代码,如:CN表示中国

2.2.解析csr文件

openssl req -in user5-org3.csr -noout -text

上面截图中的pub字段是公钥,共65个字节,第一个字节是0x04,后面的64个字节分别是公钥的X(32个字节)和Y(32个字节)

Signature Algotithm表明所使用的哈希算法是SHA256(用于计算摘要),加密算法是ecdsa(以太坊和超级账本都是使用ecdsa)。后面的字节是使用私钥对Signature Algotithm字段上面的内容进行签名的签名值。其过程是:先使用SHA256对签名内容进行哈希获得待签名的摘要(哈希值),再使用私钥对摘要通过ecdsa加密算法进行签名。

2.3.解析pem文件

pem文件是ca server通过自己的私钥对csr文件进行签名后获得的文件

openssl x509 -in user5-org3.pem -noout -text

------------------------------------------------------------------------------

我的公众号:区块链战斗机

我的学习笔记:www.study.win

如果你觉得这篇文章写得还可以,请帮忙点个赞,谢谢!著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处并保留原文链接。

你的鼓励,我的动力! 

openssl的使用方法(使用openssl生成csr文件和私钥key文件)相关推荐

  1. 生成pfx文件需要在服务器上执行,PEM文件和private.key文件生成IIS服务器所需的pfx文件(配置SSL用)...

    第一步:输入域名,点击"创建免费的SSL证书"按钮,如图 第二步:输入邮箱,点击创建,如图 创建成功后,需要进行dns验证,结果图如下: 第三步:在域名所在的云服务器上,添加域名解 ...

  2. PEM文件和private.key文件生成Tomcat服务器所需的jks文件(配置SSL用)

    在工作中时长会遇到配置https,我使用的是Tomcat服务器,tomcat服务器一般使用的.jks文件配置SSL加密.但是,https供应商不会直接提供.jks文件.所以,我们就需要将加密文件转换成 ...

  3. ca证书 csr_linux下使用openssl生成 csr crt CA证书

    证书文件生成: 一.服务器端 1.生成服务器端    私钥(key文件); openssl genrsa -des3 -out server.key 1024 运行时会提示输入密码,此密码用于加密ke ...

  4. linux 运行ca.crt,linux下使用openssl生成 csr crt CA证书,opensslcsr

    linux下使用openssl生成 csr crt CA证书,opensslcsr 本文主要借鉴和引用了下面2个地址的内容,然后在自己的机器上进行了测试和执行,并做了如下记录. ref: http:/ ...

  5. apache2.4配置https协议(key文件、crt文件、csr文件生成方法)

    生成私钥文件: 执行命令 [plain] view plain copy openssl genrsa -out server.key 1024 说明:这是用128位rsa算法生成密钥,得到serve ...

  6. apache2.2配置https协议(key文件、crt文件、csr文件生成方法)

    配置https协议: 1.安装好apache2.2环境,注意要装ssl版本的.这里装在c:/apache目录下. 2.生成服务器证书 1)在DOS命令下进入apache/bin目录 2)在window ...

  7. java中使用openssl生成的rsa公私钥进行数据加解密_使用openssl生成RSA公钥和私钥对...

    在ubuntu上要使用openssl的话需要先进行安装,命令如下: sudo apt-get install openssl 安装完成就可以使用openssl了. 首先需要进入openssl的交互界面 ...

  8. 达梦数据库更换key文件的方法

    key文件存放于数据库服务器数据库安装目录下的/home/dmdbms/bin目录里,将新的key文件替换掉中的旧key文件. 更新key文件 方法一 重启数据库 将数据库的服务重启后即可完成key文 ...

  9. Openssl生成CSR文件方法

    一 下载OPENSSL,并解压缩到D:\OpenSSL目录下. 二 进入cmd执行下面命令 C:\Users\cakin>cd D:\OpenSSL\bin C:\Users\cakin> ...

最新文章

  1. 如何将Android带入互联网数字家庭? 第一篇转载
  2. Node.js 使用webpack-dev-server工具运行项目实现自动打包编译的功能
  3. 计算机英文文献博客,计算机专业外文文献论文翻译.docx
  4. Java语法糖1:可变长度参数以及foreach循环原理
  5. bocketmq 多个消费者同时_过年也能放心“买买买”?多个电商物流平台承诺“春节不打烊+服务不打折”...
  6. paper 17 : 机器学习算法思想简单梳理
  7. JMeter【第五篇】关联:5种方法
  8. VS2015 自动代码补全
  9. mysql添加字段语句_mysql增加字段 mysql数据库更新字段语句
  10. 【diannaoxitong】word安全模式怎么解除?word安全模式快速解除方法
  11. Mybatis出现Mapped Statements collection already contains value for
  12. jupyter 下进行markdown
  13. 【PC攻略】炎炎夏日,让你的显卡风扇不再“偷懒!”
  14. 烫烫烫屯屯屯 那些事
  15. 00 大数据架构课程导论
  16. 基于springboot的校园跑腿系统
  17. 推荐一款快速开发平台,web中最好的快速开发平台
  18. 垃圾分类主题班会PPT模板
  19. 我学习VC中所得的点点心得
  20. XSplit简称XS,它的作用就是录制视频/直播视频。

热门文章

  1. Graph Neural Networks in Recommender Systems综述
  2. birt java_BIRT的Java实现
  3. 2018中国传媒人才需求报告
  4. 7-95 拔河比赛 (100分)
  5. 关于博主单相逆变电路的元器件清单,这里列一个说明
  6. 关于Altium Designer 16 导出BOM(元器件清单)出现空白的解决办法
  7. 网络营销工具电子邮件营销_改善电子邮件营销策略的5条提示
  8. 贪心算法黑白点匹配C语言,贪心算法之——黑白点的匹配(两种实现方法)
  9. 全球首个微信应用号开发教程第一弹!
  10. 2016年计算机一级考试试题及答案,2016年全国计算机一级考试试题及答案