openssl x509命令具以下的一些功能,例如输出证书信息,签署证书请求文件、生成自签名证书、转换证书格式等。
openssl x509工具不会使用openssl配置文件中的设定,而是完全需要自行设定或者使用该伪命令的默认值,它就像是一个完整的小型的CA工具箱。

#主要选项:
-in filename                    : #指定证书输入文件,若同时指定了"-req"选项,则表示输入文件为证书请求文件。
-out filename                  : #指定输出文件
-md2|-md5|-sha1|-mdc2 : #指定单向加密的算法。

#查看证书选项:
-text                       :以text格式输出证书内容,即以最全格式输出,
                              :包括public key,signature algorithms,issuer和subject names,serial number以及any trust settings.
-certopt option       :自定义要输出的项
-noout                   :禁止输出证书请求文件中的编码部分
-pubkey                :输出证书中的公钥
-modulus              :输出证书中公钥模块部分
-serial                   :输出证书的序列号
-subject                 :输出证书中的subject
-issuer                   :输出证书中的issuer,即颁发者的subject
-subject_hash       :输出证书中subject的hash码
-issuer_hash         :输出证书中issuer(即颁发者的subject)的hash码
-hash                    :等价于"-subject_hash",但此项是为了向后兼容才提供的选项
-email                   :输出证书中的email地址,如果有email的话
-startdate             :输出证书有效期的起始日期
-enddate              :输出证书有效期的终止日期
-dates                  :输出证书有效期,等价于"startdate+enddate"
-fingerprint           :输出指纹摘要信息

#签署选项:
*****************************************************************************************
*  伪命令x509可以像openssl ca一样对证书或请求执行签名动作。注意,openssl x509           *
*  不读取配置文件,所有的一切配置都由x509自行提供,所以openssl x509像是一个"mini CA"    *
*****************************************************************************************
-signkey filename :该选项指定签名秘钥(秘钥必须是输入文件的私钥),并使得由-in 提供的输入文件转成自签名的证书。
                             :自签署的输入文件"-in file"的file可以是证书请求文件,也可以是已签署过的证书。会使用文件中的subject name 作为issuer name.
-x509toreq            :将已签署的证书转换回证书请求文件。需要使用"-signkey"选项来传递需要的私钥。
-req                       :x509工具默认以证书文件做为inputfile(-in file),指定该选项将使得input file的file为证书请求文件。
-set_serial n          :指定证书序列号。该选项可以和"-singkey"或"-CA"选项一起使用。
                              :如果和"-CA"一起使用,则"-CAserial"或"-CAcreateserial"选项指定的serial值将失效。
                              :序列号可以使用数值或16进制值(0x开头)。也接受负值,但是不建议。
-CA filename         :指定签署时所使用的CA证书。该选项一般和"-req"选项一起使用,用于为证书请求文件签署。
-CAkey filename   :设置CA签署时使用的私钥文件。如果该选项没有指定,将假定CA私钥已经存在于CA自签名的证书文件中。
-CAserial filename:设置CA使用的序列号文件。当使用"-CA"选项来签名时,它将会使用某个文件中指定的序列号来唯一标识此次签名后的证书文件。
                             :这个序列号文件的内容仅只有一行,这一行的值为16进制的数字。当某个序列号被使用后,该文件中的序列号将自动增加。
                             :默认序列号文件以CA证书文件基名加".srl"为后缀命名。如CA证书为"mycert.pem",则默认寻找的序列号文件为"mycert.srl"
-CAcreateserial    :当使用该选项时,如果CA使用的序列号文件不存在将自动创建:该文件将包含序列号值"02"并且此次签名后证书文件序列号为1。
                             :一般如果使用了"-CA"选项而序列号文件不存在将会产生错误"找不到srl文件"。

#证书扩展选项:
-purpose:选项检查证书的扩展项并决定该证书允许用于哪些方面,即证书使用目的范围。
        
#例如,使用x509工具自建CA。由于x509无法建立证书请求文件,所以只能使用openssl req来生成请求文件,然后使用x509来自签署。自签署时,
#使用"-req"选项明确表示输入文件为证书请求文件,否则将默认以为是证书文件,再使用"-signkey"提供自签署时使用的私钥。
openssl req -new -keyout key.pem -out req.csr
openssl x509 -req -in req.csr -signkey key.pem -out x509.crt

# x509也可以用来签署他人的证书请求,即为他人颁发证书。注意,为他人颁发证书时,确保serial文件存在,建议使用自动创建的选项"-CAcreateserial"。
openssl x509 -req -in req.csr -CA ca.crt -CAkey ca.key -out x509.crt -CAcreateserial

openssl x509 证书命令相关推荐

  1. OPENSSL X509证书验证

    openssl实现了标准的x509v3数字证书,其源码在crypto/x509和crypto/x509v3中.其中x509目录实现了数字证书以及证书申请相关的各种函数,包括了X509和X509_REQ ...

  2. openssl命令查看证书有效期_使用 openssl 生成证书

    一.openssl 简介 openssl 是目前最流行的 SSL 密码库工具,其提供了一个通用.健壮.功能完备的工具套件,用以支持SSL/TLS 协议的实现. 官网:https://www.opens ...

  3. SSL基础:20:使用x509子命令为其他证书签名

    ca子命令使用事前准备的CSR文件,可通过-selfsign选项指定私钥生成自签名证书.使用req子命令也可以生成自签名证书,自签名证书在实际的使用中用处一般是用来创建ca证书的,这篇文章介绍一下如何 ...

  4. signature=1e627a907c86a2ecea855afa2fce9a87,熟练掌握 openssl 证书命令说明

    熟练掌握 openssl 证书命令说明 发布时间:2020-05-10 09:03:43 来源:51CTO 阅读:257 作者:17gongdeng 熟练掌握 openssl 证书命令说明 2.在我电 ...

  5. [教程]openssl中证书生成、签发,CRL,密钥转换等命令最简教程(可直接跳到后文)

    前言 0.OPENSSL 什么是openssl? OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份.这个包广泛被应用在互联网的网页服 ...

  6. 【openssl】利用openssl完成X509证书和PFX证书之间的互转

    利用openssl完成X509证书和PFX证书之间的互转 # OpenSSL的下载与安装: 1.下载地址: 官方网址-- https://www.openssl.org/source/ OpenSSL ...

  7. java解码p7b证书文件,通过OpenSSL解码X509证书文件

    在Windows平台下,如果要解析一个X509证书文件,最直接的办法是使用微软的CryptoAPI.但是在非Windows平台下,就只能使用强大的开源跨平台库OpenSSL了.一个X509证书通过Op ...

  8. openssl解析国密X509证书

    openssl解析国密X509证书,把公钥拿出来重写一下就行了         x = strToX509(pbCert, pulCertLen); dwRet = getCertPubKey(x,  ...

  9. 通过OpenSSL解析X509证书基本项

    在之前的文章"通过OpenSSL解码X509证书文件"里,讲述了如何使用OpenSSL将证书文件解码,得到证书上下文结构体X509的方法.下面我们接着讲述如何通过证书上下文结构体X ...

最新文章

  1. jQuery获取和设置元素
  2. Win32 控件篇(3)
  3. 如何成为SAP行业专家
  4. Microsoft Operations Management Suite 启用NPM网络性能监视
  5. 计算几何 —— 二维几何基础
  6. 解决eclipse出现The superclass javax.servlet.http.HttpServlet was not found on the Java Build Path
  7. 华科计算机专硕英语几,考研考华科计算机考数学几英语几啊,另外考华科数..._考研_帮考网...
  8. 数值积分(辛普森求积、柯特斯求积、龙贝格求积)
  9. 用c语言验证装载问题 回溯法,《算法分析与设计》期末考试复习题纲(完整版)...
  10. mysql-cluster5.7搭建集群(实际测试有效)
  11. FFmpeg滤镜实现区域视频增强 及 D3D实现视频播放区的拉大缩小转
  12. 【笔记总结】高中生物——【选一 Ⅱ】第二章 微生物的培养与应用
  13. 关于CRC校验的一些总结
  14. 如果我恨一个人,我就领他到中关村买相机。
  15. 找工作时PLC工程师会哪些技能工资更高呢?
  16. 计算机硬盘对考,两个硬盘对拷(硬盘对刻)图文教程
  17. Timingdesigner timing designer 入门 基础 教程
  18. [附源码]java毕业设计病历管理系统设计
  19. 日志组的状态:CURRENT、ACTIVE、INACTIVE
  20. 中职计算机英语教师教学总结,中职教师工作总结

热门文章

  1. 【看了10年前我为本单位写的此篇文章,感慨万分】此文章题目为:为关于“执行力”相关要素的方案设想
  2. c语言switch中文版,C语言 switch语句小陷阱
  3. 多AZ双活容灾部署的云端系统架构设计说明书框架
  4. 生活随记 - NBA总决赛第5场 球迷有感
  5. 正则判断只能输入大于0的正整数
  6. imac一体机,mac 电脑安装win7双系统
  7. PowerBI视觉对象共计271组,2021.01.20日更新
  8. bzoj 3944: Sum 杜教筛
  9. 考研这么累,能支持你坚持到底的是什么?
  10. 嵌入式硬件开发之三——绘制原理图