当前位置: 首页 > news >正文

windows openssl安装和基本使用

OpenSSL使用

私钥和证书文件

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 365

这是一个使用OpenSSL命令行工具生成自签名X.509证书的命令。通过执行该命令,您将生成一个4096位RSA密钥对,并使用该密钥对生成一个自签名的X.509证书。

下面是命令的详细解释和各个选项的含义:

openssl: OpenSSL命令行工具。
req: 用于证书签名请求(Certificate Signing Request)的子命令。
-x509: 指示生成自签名证书。
-newkey rsa:4096: 生成一个4096位的RSA密钥对。
-keyout key.pem: 指定私钥文件的输出路径和名称为key.pem。
-out cert.pem: 指定证书文件的输出路径和名称为cert.pem。
-sha256: 使用SHA-256算法进行证书签名。
-days 365: 指定证书的有效期为365天。
执行该命令后,OpenSSL将生成一个私钥文件(key.pem)和一个自签名的X.509证书文件(cert.pem)。
在这里插入代码片

请注意,生成的证书是自签名的,因此在实际使用中可能不会被公认的证书颁发机构所信任。如果您需要使用由公认的证书颁发机构签名的证书,请参考相应机构的文档或使用其他工具来生成。

要将刚生成的公钥证书作废,您可以使用OpenSSL命令行工具中的openssl ca子命令。openssl ca命令用于进行证书签名请求的签名操作,但也可以用来撤销(作废)证书。

撤销证书

下面是一个示例命令来撤销证书:

openssl ca -revoke cert.pem -keyfile key.pem -cert ca.pem

命令中的各个选项含义如下:

openssl: OpenSSL命令行工具。
ca: 用于证书签名操作的子命令。
-revoke cert.pem: 指定要撤销(作废)的证书的路径和名称为cert.pem。
-keyfile key.pem: 指定用于签名操作的私钥文件的路径和名称为key.pem。这是为了对撤销操作进行签名验证。
-cert ca.pem: 指定用于签名操作的CA证书文件的路径和名称为ca.pem。这是为了进行签名验证。

执行该命令后,OpenSSL将使用私钥文件(key.pem)和CA证书文件(ca.pem)对指定的证书(cert.pem)进行撤销操作。撤销操作将在证书的撤销列表中添加相应的撤销条目。

请注意,撤销的证书将被标记为不可信任,并且将无法使用。但是,撤销的证书仍然可以被保留和使用,因此在实际情况中,您可能需要将撤销的证书从相关系统和应用程序中删除。

常用命令

OpenSSL是一个功能强大且广泛使用的开源加密工具,它提供了许多常用的命令来执行各种加密、解密、签名和验证操作。以下是一些常用的OpenSSL命令:openssl version: 显示当前安装的OpenSSL版本。openssl genpkey: 生成一个新的私钥。openssl rsa: RSA私钥操作,如生成RSA私钥、查看私钥内容等。openssl ec: 椭圆曲线(EC)密钥操作,如生成EC密钥、查看密钥内容等。openssl req: 生成证书签名请求(CSR),以便向证书颁发机构(CA)申请证书。openssl x509: X.509证书操作,如查看证书内容、验证证书、导出证书等。openssl pkcs12: 将密钥和证书打包为PKCS#12格式。openssl s_client: 作为客户端连接到SSL/TLS服务,以进行握手和获取服务证书等。openssl s_server: 作为SSL/TLS服务端启动一个简单的SSL服务。openssl enc: 对称加密和解密操作,支持多种加密算法和模式。openssl dgst: 计算消息摘要(哈希值)。openssl cms: 创建和解析加密的CMS(Cryptographic Message Syntax)格式数据。openssl rand: 生成随机数据。openssl speed: 测试OpenSSL库中加密算法的性能。
http://www.lryc.cn/news/213818.html

相关文章:

  • Qt Concurrent框架详解(QFuture、QFutureWatcher)
  • zip函数用法:解压与打包
  • 这一份免费API接口集合,开发者必备
  • 【IDEA】设置sql提示
  • Swagger + DOCWAY 一步导出为优雅完整的Markdown、Pdf接口文档
  • HTML链接、头部
  • IDEA优雅自动生成类注释和快捷键生成方法注释
  • 数据库面试题整理
  • 【无标题】输入日期是当年的第n天
  • 金蝶云星空自定义校验器和使用
  • MyBatis实验(四)——关联查询
  • Redis与Mysql的数据一致性(双写一致性)
  • sql-50练习题16-20
  • 算法通关村第四关|青铜|自己实现栈
  • Calcite 自定义优化器规则
  • 【flink】flink获取-D参数方式
  • NLP之多循环神经网络情感分析
  • 【AutoML】AutoKeras 的安装和环境配置(VSCode)
  • 树结构及其算法-用数组来实现二叉树
  • 知识图谱与大模型结合方法概述
  • ASO优化之如何制作Google Play的长短描述
  • Python-platform模块
  • Yolov5旋转框(斜框)检测自己的数据集,附带代码模型可以收敛
  • 嵌入式应用选择正确的系统设计方法:第三部分
  • pthread_attr_getstacksize 问题
  • anaconda常见语法
  • reactive与ref VCA
  • 小程序day01
  • redis主要支持的数据类型有哪些?—— 筑梦之路
  • 解决国际阿里云服务器挂载云盘的问题!!