1. 安装 openssl 后可以执行如下命令来生成私钥和对应的证书请求文件

ca openssl req -new -keyout private.key -out for_request.csr
Generating a bit RSA private key
.............+++
....................................................................................................+++
writing new private key to 'private.key'
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
Verify failure
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name ( letter code) []:CN
State or Province Name (full name) []:sichuan
Locality Name (eg, city) []:chengdu
Organization Name (eg, company) []:zchd
Organizational Unit Name (eg, section) []:Dev
Common Name (eg, fully qualified host name) []:zchd.ltd
Email Address []:zchd.ltd@gmail.com Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
➜ ca ls
for_request.csr private.key
➜ ca cat for_request.csr
-----BEGIN CERTIFICATE REQUEST-----
MIICyjCCAbICAQAwgYQxCzAJBgNVBAYTAkNOMRAwDgYDVQQIDAdzaWNodWFuMRAw
DgYDVQQHDAdjaGVuZ2R1MQ0wCwYDVQQKDAR6Y2hkMQwwCgYDVQQLDANEZXYxETAP
BgNVBAMMCHpjaGQubHRkMSEwHwYJKoZIhvcNAQkBFhJ6Y2hkLmx0ZEBnbWFpbC5j
b20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCng+pbIhGhTHoNiCtG
jL75cF8aWre255+zMzVCYAqsQKUAG57MdRA4rgwIvJ9bkXDtEEjA4+a+o8xwp1od
BvsyPNPYmc5Bp5dCLKypnmGI18VzzJRu6wxrYNAMdv2DfrlHK+bD4KVr1PeoYbsh
YKEL125eIM9+Xr79fY+VWhZqbfgK5X1HWakx4CvOCzWwjGoobkKHJJgyJpxN9Y87
cAkP5q62f/b0VHTI1h83cbvQCKgL3J2P0ZtKhHMFPCmFkz27aL9hmfzw95iifbYb
XST8gfcBnGWv/P5pk5wdDoiTuC/QqHuozqc3TKFjLP3oTUgXMPURYWgwLvAJYna9
f9vdAgMBAAGgADANBgkqhkiG9w0BAQsFAAOCAQEAcXoWDs4B0hfvoARErsFv43/Z
B6xX9fCwiTOQQea2gb2AXGY6I5dj9QIU8/q/tPoFWGxAw3phkJN7vC1qnOaqv5DX
upwHp3zIDZCwioDwAedIpbV5sJomDapzVY0ww2MC44sf6YnZGZIUO4q5DGpMBNVf
x8bhStKmkk90QrNFHD6V2REuw9Y/+hDdan2WJaj1i/bkIadXnNjBYjSr98K6XXjf
EG25lftuDXL4ykKL8gu4kdM8X86TMXFB7fTuZBrvN6S3aw88RiECw8FCEBDRzuAx
e2gqRdihsLe6oWFhzs/TlCK81CMXH9CrnZnAGbx+nFBfXcKvCYYm1oTxXmJIjw==
-----END CERTIFICATE REQUEST-----
➜ ca openssl req -in for_request.csr -noout -text
Certificate Request:
Data:
Version: (0x0)
Subject: C=CN, ST=sichuan, L=chengdu, O=zchd, OU=Dev, CN=zchd.ltd/emailAddress=zchd.ltd@gmail.com
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: ( bit)
Modulus:
:a7::ea:5b:::a1:4c:7a:0d::2b::8c:
be:f9::5f:1a:5a:b7:b6:e7:9f:b3:::::
0a:ac::a5::1b:9e:cc::::ae:0c::bc:
9f:5b:::ed:::c0:e3:e6:be:a3:cc::a7:
5a:1d::fb::3c:d3:d8::ce::a7:::2c:
ac:a9:9e:::d7:c5::cc::6e:eb:0c:6b::
d0:0c::fd::7e:b9::2b:e6:c3:e0:a5:6b:d4:
f7:a8::bb:::a1:0b:d7:6e:5e::cf:7e:5e:
be:fd:7d:8f::5a::6a:6d:f8:0a:e5:7d:::
a9::e0:2b:ce:0b::b0:8c:6a::6e::::
:::9c:4d:f5:8f:3b:::0f:e6:ae:b6:7f:
f6:f4:::c8:d6:1f:::bb:d0::a8:0b:dc:
9d:8f:d1:9b:4a::::3c::::3d:bb::
bf:::fc:f0:f7::a2:7d:b6:1b:5d::fc::
f7::9c::af:fc:fe:::9c:1d:0e:::b8:
2f:d0:a8:7b:a8:ce:a7::4c:a1::2c:fd:e8:4d:
:::f5:::::2e:f0::::bd:7f:
db:dd
Exponent: (0x10001)
Attributes:
a0:
Signature Algorithm: sha256WithRSAEncryption
:7a::0e:ce::d2::ef:a0:::ae:c1:6f:e3:7f:d9:
:ac::f5:f0:b0:::::e6:b6::bd::5c::3a:
:::f5:::f3:fa:bf:b4:fa:::6c::c3:7a::
::7b:bc:2d:6a:9c:e6:aa:bf::d7:ba:9c::a7:7c:c8:
0d::b0:8a::f0::e7::a5:b5::b0:9a::0d:aa::
:8d::c3:::e3:8b:1f:e9::d9::::3b:8a:b9:
0c:6a:4c::d5:5f:c7:c6:e1:4a:d2:a6::4f:::b3::
1c:3e::d9::2e:c3:d6:3f:fa::dd:6a:7d:::a8:f5:
8b:f6:e4::a7::9c:d8:c1:::ab:f7:c2:ba:5d::df:
:6d:b9::fb:6e:0d::f8:ca::8b:f2:0b:b8::d3:3c:
5f:ce:::::ed:f4:ee::1a:ef::a4:b7:6b:0f:3c:
:::c3:c1::::d1:ce:e0::7b::2a::d8:a1:
b0:b7:ba:a1:::ce:cf:d3:::bc:d4:::1f:d0:ab:
9d::c0::bc:7e:9c::5f:5d:c2:af::::d6::f1:
5e:::8f

生成过程中需要输入地理位置、组织、通用名等信息。生成的私钥和 csr 文件默认以 PEM 格式存储,内容为 base64 编码。

需要注意,用户自行生成私钥情况下,私钥文件一旦丢失,CA 方由于不持有私钥信息,无法进行恢复,意味着通过该证书中公钥加密的内容将无法被解密。

用openssl 生成证书的过程的更多相关文章

  1. CentOS6系统openssl生成证书和自签证书

    CentOS6系统openssl生成证书和自签证书的过程,记录一下,本文基于CentOS 6 64bit.$ yum install openssl openssl-devel 1,生成服务器端的私钥 ...

  2. 使用OpenSSL生成证书

    使用OpenSSL生成证书 下载安装openssl,进入/bin/下面,执行命令(把ssl目录下的openssl.cnf 拷贝到bin目录下)1.首先要生成服务器端的私钥(key文件):openssl ...

  3. 如何利用OpenSSL生成证书

    此文已由作者赵斌授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.前言 最近为了测试内容分发网络(Content Delivery Network,简称 CDN)添加的新功 ...

  4. [转帖] ./demoCA/newcerts: No such file or directory openssl 生成证书时问题的解决.

    接上面一篇blog 发现openssl 生成server.crt 时有问题. 找了一个网站处理了一下: http://blog.sina.com.cn/s/blog_49f8dc400100tznt. ...

  5. PHP通过OpenSSL生成证书、密钥并且加密解密数据,以及公钥,私钥和数字签名的理解

    一.公钥加密假设一下,我找了两个数字,一个是1,一个是2.我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥. 我有一个文件,不能让别人看,我就用1加密了.别人找到了这个文 ...

  6. openssl 生成证书基本原理

    摘自:http://blog.csdn.net/oldmtn/article/details/52208747 1. 基本原理 公司一个项目要进行交易数据传输,因为这个项目银行那边也是刚刚开始启动,所 ...

  7. 使用OpenSSL生成证书并配置Https

    1.密钥.证书请求.证书概要说明 在证书申请签发过程中,客户端涉及到密钥.证书请求.证书这几个概念.我们以申请证书的流程说明三者的关系.客户端(相对于CA)在申请证书的时候,大体上有三个步骤: 第一步 ...

  8. openssl生成证书 - CSDN博客

    大家都可以生成公钥.私钥对,无法确认公钥对到底是谁的. 如果能够确定公钥到底是谁的,就不会有这个问题了.例如,如果收到“黑客”冒充“服务器”发过来的公钥,经过某种检查,如果能够发现这个公钥不是“服务器 ...

  9. 使用 openssl 生成证书

    一.openssl 简介 目前最流行的 SSL 密码库工具官网:https://www.openssl.org/source/ 构成部分 密码算法库 密钥和证书封装管理功能 SSL通信API接口 用途 ...

随机推荐

  1. 线下AWD平台搭建以及一些相关问题解决

    线下AWD平台搭建以及一些相关问题解决 一.前言 文章首发于tools,因为发现了一些新问题但是没法改,所以在博客进行补充. 因为很多人可能没有机会参加线下的AWD比赛,导致缺乏这方面经验,比如我参加 ...

  2. 使用Js将页面打印或保存为Pdf

    很久没有写前端的文章了,今天就来说说js一个比较方便的功能,打印当前页面或保存成pdf吧. js有一个原生的函数,print(),顾名思义就是打印.但是有时候我们需要打印页面某些部分,所以需要对页面进 ...

  3. Werkzeug——python web开发工具包

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826062.html 一:Werkzeug是个啥 1)Werkzeug是一个工具包,它封装了很多东西,诸如 ...

  4. box-cox解读

    可以额外参考资料:https://blog.csdn.net/sinat_26917383/article/details/77864582,http://www.dataguru.cn/articl ...

  5. SAMBA配置文件详解

    全局参数: ==================Global Settings =================== [global] config file = /usr/local/samba/ ...

  6. kuangbin专题专题四 Currency Exchange POJ - 1860

    题目链接:https://vjudge.net/problem/POJ-1860 大致题意:有不同的货币,有很多货币交换点,每个货币交换点只能两种货币相互交换,有佣金C,汇率R. 每次交换算一次操作, ...

  7. Java基础--线程创建方式

    线程的创建主要有两种形式,通过继承Thread或者实现Runnable接口,本质上没有太大区别. /** * @date: 2019/7/16 **/ public class ThreadOne i ...

  8. 点击一个超链接,弹出固定大小的新窗口(js实现)

    1.最基本的弹出窗口代码 <SCRIPT LANGUAGE="javascript"> <!-- window.open ('page.html') --> ...

  9. Oracle的去重函数 distinct

    原贴地址:http://www.cnblogs.com/rainman/archive/2013/05/03/3058451.html#m0 SQL中distinct的用法   1.作用于单列 2.作 ...

  10. TCP拥塞避免

    目录 TCP拥塞避免 超时重传机制 拥塞控制 慢启动 拥塞避免 快重传 快恢复 与流量控制区别 参考 TCP拥塞避免 拥塞控制就是防止过多的数据注入网络中,这样可以使网络中的路由器或链路不致过载.拥塞 ...