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. sparkContext的初始化过程

    SparkContext 初始化的过程主要的核心:1) 依据 SparkContext 的构造方法中的参数 SparkConf 创建一个SparkEnv2) 初始化,Spark UI,以便 Spark ...

  2. crontab定时任务不执行,单独运行sh生效

    虽然已经从事运维两三年了. 但是今天写的计划任务没有执行,排除了下, 这里整理下,方便后期查看. 排除思路 1. 确保crond服务是开机自启和当前是启动的. # centos systemctl s ...

  3. 浅谈Python设计模式 - 抽象工厂模式

    声明:本系列文章主要参考<精通Python设计模式>一书,并且参考一些资料,结合自己的一些看法来总结而来. 在上一篇我们对工厂模式中的普通工厂模式有了一定的了解,其实抽象工作就是 表示针对 ...

  4. Markdown Mermaid

    Mermaid 是一个用于画流程图.状态图.时序图.甘特图的库,使用 JS 进行本地渲染,广泛集成于许多 Markdown 编辑器中. 之前用过 PlantUML,但是发现这个东西的实现原理是生成 U ...

  5. Mac Docker安装Redis4.0

    mkdir redis 在~目录下创建redis目录 docker run -d -p 6379:6379 -v $PWD/redis:/data -d --name redis4.0 redis:4 ...

  6. 追光的人beta冲刺总结

    所属课程 软件工程1916 作业要求 Beta冲刺博客汇总 团队名称 追光的人 作业目标 beta阶段总结 队员学号 队员博客 221600219 小墨 https://www.cnblogs.com ...

  7. Spring Cloud Config 知识点

    Spring Cloud Config项目是一个解决分布式系统的配置管理方案.它包含了Client和Server两个部分,server提供配置文件的存储.以接口的形式将配置文件的内容提供出去,clie ...

  8. Ping任务管理模块-JavaWeb

    总体框架: 1.创建任务 2.修改任务 3.删除任务 4.环境配置 5.全量PING 6.抽样PING 7.停止 8.查看历史 9.查看执行详情 主要从项目总结和经验角度讲述: 一.项目运行环境 1. ...

  9. MapReduce内存调优

    内存调优 Hadoop处理数据时,出现内存溢出的处理方法?(内存调优) 1.Mapper/Reducer阶段JVM内存溢出(一般都是堆) 1)JVM堆(Heap)内存溢出:堆内存不足时,一般会抛出如下 ...

  10. 由PPPOE看Linux网络协议栈的实现

    http://www.cnblogs.com/zmkeil/archive/2013/05/01/3053545.html 这个标题起得比较纠结,之前熟知的PPPOE是作为PPP协议的底层载体,而实际 ...