openssl的x509命令工具

X509命令是一个多用途的证书工具。它可以显示证书信息、转换证书格式、签名证书请求以及改变证书的信任设置等。

用法:

复制代码
openssl    x509 [-inform DER|PEM|NET] [-outform DER|PEM|NET] [-keyform DER|PEM] [-CAform DER|PEM] [-CAkeyform DER|PEM] [-in filename] [-out filename] [-serial] [-hash] [-subject_hash] [-issuer_hash] [-subject] [-issuer] [-nameopt option] [-email] [-startdate] [-enddate] [-purpose] [-dates] [-modulus] [-fingerprint] [-alias] [-noout] [-trustout] [-clrtrust] [-clrreject] [-addtrust arg] [-addreject arg] [-setalias arg] [-days arg] [-set_serial n] [-signkey filename] [-x509toreq] [-req] [-CA filename] [-CAkey filename] [-CAcreateserial] [-CAserial filename] [-text] [-C] [-md2|-md5|-sha1|-mdc2] [-clrext] [-extfile filename] [-extensions section] [-engine id]

选项:

-inform DER|PEM|NET

指定输入文件的格式,默认为PEM格式。

-outform DER|PEM|NET

指定输出文件格式,默认为PEM格式。

-keyform

指定私钥文件格式,默认为PEM格式。

-CAform

指定CA文件格式,默认为PEM格式。

-CAkeyform

指定CA私钥文件格式,默认为PEM格式。

-in filename

指定输入文件名。

-out filename

指定输出文件名。

-passin

指定私钥保护密钥来源,参考req说明,比如:-passin file:pwd.txt。

-serial

显示证书的序列号。

-subject_hash

显示持有者的摘要值。

-issuer_hash

显示颁发者的摘要值。

-hash

显示证书持有者的摘要值,同-subject_hash。

-subject

显示证书持有者DN。

-issuer

显示证书颁发者DN。

-email

显示email地址。

-enddate

显示证书到期时间。

-startdate

显示证书的起始有效时间。

-purpose

显示证书用途。

-dates

显示证书的有效期。

-modulus

显示公钥模数。

-pubkey

输出公钥。

-fingerprint

打印证书微缩图。

-alias

显示证书别名。

-noout

不显示信息。

-ocspid

显示持有者和公钥的OCSP摘要值。

-trustout

输出可信任证书。

-clrtrust

清除证书附加项里所有有关用途允许的内容。

-clrreject

清除证书附加项里所有有关用途禁止的内容。

-addtrust arg

添加证书附加项里所有有关用途允许的内容。

-addreject arg

添加证书附加项里所有有关用途禁止的内容。

-setalias arg

设置证书别名。

-days arg

设置证书有效期。

-checkend arg

显示证书在给定的arg秒后是否还有效。

-signkey filename

指定自签名私钥文件。

-x509toreq

根据证书来生成证书请求,需要指定签名私钥,如:

openssl x509 -in ca.pem -x509toreq -signkey key.pem

-req

输入为证书请求,需要进行处理。

-CA arg

设置CA文件,必须为PEM格式。

-CAkey arg

设置CA私钥文件,必须为PEM格式。

-CAcreateserial

如果序证书列号文件,则生成。

-CAserial arg

由arg指定序列号文件。

-set_serial

设置证书序列号。

-text

打印证书信息。

-C

用C语言格式显示信息。

-md2|-md5|-sha1|-mdc2

指定使用的摘要算法,缺省为MD5。

-extfile filename

指定包含证书扩展项的文件名,如果没有,那么生成的证书将没有任何扩展项。

-clrext

删除证书所有的扩展项。当一个证书由另外一个证书生成时,可用此项。

-nameopt option

指定打印名字时采用的格式。

-engine e

采用硬件引擎e。

-certopt arg

当采用-text显示时,设置是否打印哪些内容,arg可用是:compatible、no_header、no_version、no_extensions和ext_parse等等,详细信息请参考x509命令的帮助文档。

示例:

openssl x509 -in cert.pem -noout -subject -nameopt RFC2253

openssl x509 -in cert.pem -inform PEM -out cert.der -outform DER

openssl x509 -req -in req.pem -extfile openssl.cnf -extensions v3_usr -CA cacert.pem -CAkey key.pem --Cacreateserial

相关推荐
我是苏苏5 小时前
C#高级:程序查询写法性能优化提升策略(附带Gzip算法示例)
开发语言·算法·c#
sali-tec6 小时前
C# 基于halcon的视觉工作流-章56-彩图转云图
人工智能·算法·计算机视觉·c#
黑岚樱梦9 小时前
代码随想录打卡day23:435.无重叠区间
算法
Kuo-Teng9 小时前
Leetcode438. 找到字符串中所有字母异位词
java·算法·leetcode
gihigo199810 小时前
MATLAB使用遗传算法解决车间资源分配动态调度问题
算法·matlab
墨染点香10 小时前
LeetCode 刷题【138. 随机链表的复制】
算法·leetcode·链表
却道天凉_好个秋11 小时前
目标检测算法与原理(一):迁移学习
算法·目标检测·迁移学习
兮山与12 小时前
算法24.0
算法
晓北斗NorSnow12 小时前
机器学习核心算法与学习资源解析
学习·算法·机器学习