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库中加密算法的性能。

你可能感兴趣的:(工具使用,https,ssl,网络协议)