openssl生成证书

简介: 本文章是记录openssl命令生成私钥、证书签名请求、CA证书的命令和相关参数的解释。其中包含了各参数的名称、作用、技术细节和安全建议。

✨重磅!盹猫的个人小站正式上线啦~诚邀各位技术大佬前来探秘!✨
—— 专为开发者打造的宝藏基地,等你来探索!
这里有:


🔥 硬核技术干货:编程技巧、开发经验、踩坑指南,带你解锁技术新姿势!
🎉 趣味开发日常:代码背后的脑洞故事、工具测评,让技术圈不再枯燥~
💎 独家资源分享:开源项目、学习资料包,助你打怪升级快人一步!


🚀 立即访问 → 盹猫猫的个人小站 ← 点击探索
🌟 说不定这里就有你寻找已久的技术秘籍哦~

@[toc]

Welcome to Code Block's blog

本篇文章主要介绍了
[openssl生成证书]
❤博主广交技术好友,喜欢我的文章的可以关注一下❤

一、概述

本文章是记录openssl命令生成私钥、证书签名请求、CA证书的命令和相关参数的解释。其中包含了各参数的名称、作用、技术细节和安全建议。

  • CA私钥: 相当于加密时的密码,或者部门盖章。
  • 证书签名请求: 相当于申请表,在获取CA证书后就失效。
  • CA证书: 相当于颁发的证件。

二、关键步骤


2.1 生成CA私钥

openssl genrsa -out ca-key.pem 4096
参数 作用 技术细节 安全建议
genrsa 生成RSA私钥 使用RSA算法(非对称加密) 优先选择RSA 4096或ECC 256+
-out ca-key.pem 指定私钥输出文件 PEM格式(Base64编码) 生成后立即设置权限:chmod 600 ca-key.pem
4096 密钥长度 2048位是底线,4096位更安全 更长密钥更安全但性能更低

2.2 生成CSR(证书签名请求)

openssl req -new -key ca-key.pem -out ca-csr.pem
参数 作用 技术细节 交互说明
req 处理证书请求 遵循PKCS#10标准 -
-new 创建新CSR 生成新的公钥对(从私钥派生) 需要输入身份信息
-key ca-key.pem 指定签名私钥 用该私钥对CSR进行签名 确保私钥文件路径正确
-out ca-csr.pem 输出CSR文件 包含公钥+身份信息(不含私钥) 可临时保存,用后删除

交互流程示例(执行命令后会提示输入):

Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Beijing
Locality Name (eg, city) [Default City]:Beijing
Organization Name (eg, company) [Default Company Ltd]:My CA Inc.
Organizational Unit Name (eg, section) []:Security
Common Name (eg, your name or your server's hostname) []:My Root CA
Email Address []:admin@myca.com

2.3 自签名生成CA证书

openssl x509 -req -days 3650 -in ca-csr.pem -signkey ca-key.pem -out ca-cert.pem
参数 作用 技术细节 关键注意事项
x509 X.509证书操作 遵循RFC 5280标准 -
-req 输入是CSR文件 而非直接生成证书 必须与CSR匹配
-days 3650 证书有效期 10年(3650天) CA证书通常设较长有效期
-in ca-csr.pem 指定输入的CSR 提取公钥和身份信息 确保与私钥对应
-signkey ca-key.pem 用私钥自签名 使证书具备权威性 绝对不要泄露此私钥
-out ca-cert.pem 输出证书文件 PEM格式(Base64编码) 可自由分发

三、小结

在通信过程中,私自颁发的Openssl证书同样可用于通信,如自搭建的rpc通信服务,同样可以保证通信的安全,如果要使用已认证的如HTTPS请求,需向专业机构进行请求。


如果你对区块链感兴趣,可以浏览我的专栏:区块链

感谢您的关注和收藏!!!!!!

目录
相关文章
|
9月前
|
存储 前端开发 测试技术
小试牛刀-区块链代币锁仓合约实战
记录一下自己在开发代币合约中的过程,加深自己对合约功能的理解,在后续的学习过程中可以进行资料查阅,以及帮助有这方面开发要求或想学习的朋友进行更方便的入门。
238 1
|
9月前
|
jenkins Java 持续交付
使用Jenkins完成springboot项目快速更新
本文介绍了使用Jenkins和WinSW实现SpringBoot项目自动化部署的完整流程。首先讲解了Jenkins作为持续集成工具的作用,然后详细说明了环境准备步骤:包括JDK版本管理、WinSW服务配置(含XML文件修改)以及bat启动脚本编写。重点演示了Jenkins的项目配置方法,包括源码管理设置和构建步骤中的Windows批处理命令调用。通过这套方案,开发者只需推送代码到Git仓库,即可触发Jenkins自动完成项目构建、服务重启等全流程,显著提升部署效率。文章还提到IDEA的Jenkins插件可进
395 1
|
Linux 网络安全 开发工具
Centos 7下如何配置SMTP SSL(邮箱发送功能)
Centos 7下如何配置SMTP SSL(邮箱发送功能)
1952 0
Centos 7下如何配置SMTP SSL(邮箱发送功能)
|
网络协议 安全 文件存储
Windows本地搭建WebDAV服务并使用内网穿透远程访问【无公网IP】
Windows本地搭建WebDAV服务并使用内网穿透远程访问【无公网IP】
|
Linux
CentOS 7 设置日系统时间为中国时区并启用NTP同步
一、CentOS 7 设置日系统时间为中国时区并启用NTP同步 在CentOS 6版本,时间设置有date、hwclock命令,从CentOS 7开始,使用了一个新的命令timedatectl。 yum install ntp //安装ntp服务 systemctl enable ntpd //.
9552 0
|
9月前
|
存储 JavaScript 区块链
小试牛刀-SOL链创建Token
最近需要编写SOL合约进行SPL Token的转移,因为在测试网上需要自己部署测试Token,同时为了更加美观,Token需携带metadata数据(对名称、头像等)进行定义.在此对创建过程进行记录,希望帮助到有需要实现相关功能的朋友.
176 1
|
9月前
|
存储 JSON 机器人
小试牛刀-Telebot区块链游戏机器人
本文章为记录自己开发基于区块链和Telebot实现的[石头、剪刀、布]游戏的过程,加深自己对区块链知识的理解和使用,加深对TeleBot依赖库的使用,同时希望可以帮助到有想实现相关功能的朋友.
188 1
|
9月前
|
XML Linux 区块链
Python提取Word表格数据教程(含.doc/.docx)
本文介绍了使用LibreOffice和python-docx库处理DOC文档表格的方法。首先需安装LibreOffice进行DOC到DOCX的格式转换,然后通过python-docx读取和修改表格数据。文中提供了详细的代码示例,包括格式转换函数、表格读取函数以及修改保存功能。该方法适用于Windows和Linux系统,解决了老旧DOC格式文档的处理难题,为需要处理历史文档的用户提供了实用解决方案。
1035 1
|
11月前
|
安全 算法 Ubuntu
Linux(openssl)环境:编程控制让证书自签的技巧。
总结:在Linux环境中,OpenSSL是一个非常实用的工具,可以帮助我们轻松地生成自签名证书。通过上述三个简单步骤,即可为内部网络、测试环境或开发环境创建自签名证书。但在公共访问场景下,建议购买经过权威认证机构签发的证书,以避免安全警告。
526 13
|
11月前
|
人工智能 数据可视化 JavaScript
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!
Juggle是国内首个开源的微服务编排框架,专注于解决企业微服务进程中接口重复开发、系统对接复杂等问题。它提供零代码、低代码和AI增强功能,通过可视化拖拽快速组装简单API为复杂接口,支持多协议、多语言脚本和流程多版本管理。相比国外框架如Conductor,Juggle更贴合国内需求,具备高效开发、企业级可靠性及信创适配等优势,助力企业实现敏捷创新与数字化转型。
颠覆开发效率!国内首个微服务编排框架Juggle开源啦!