OpenSSL Windows 安装与使用教程 – wiki基地


OpenSSL 在 Windows 上的安装与使用教程:从入门到实践

引言:为何需要在 Windows 上使用 OpenSSL?

在现代网络世界中,安全性是至关重要的。数据加密、身份验证和安全通信是构建信任和保护信息的基础。而 OpenSSL 正是实现这些安全功能的核心工具之一。

OpenSSL 是一个强大的、开源的加密工具包,实现了安全套接字层(SSL)和传输层安全(TLS)协议,并提供了丰富的密码学函数库。它广泛应用于服务器、客户端以及各种需要加密和安全通信的软件中。

虽然 OpenSSL 原生更常在 Linux/Unix 环境下被开发者和系统管理员使用,但在 Windows 系统下,许多场景也需要用到它。例如:

  • 生成 SSL/TLS 证书和密钥对: 为 Web 服务器(如 IIS、Apache 在 Windows 上运行的版本)、邮件服务器、VPN 服务等配置 HTTPS 或其他安全连接。
  • 处理证书文件: 转换证书格式(PEM, DER, PFX/PKCS12)、查看证书信息、验证证书链。
  • 数据加密和解密: 使用各种加密算法对文件或数据进行加密和解密。
  • 生成哈希值和数字签名: 验证文件的完整性,或对数据进行签名和验证。
  • 网络安全测试: 测试服务器的 SSL/TLS 配置、检查开放端口等。
  • 开发需求: 许多应用程序在 Windows 上开发时,会依赖 OpenSSL 库来实现安全功能。

然而,OpenSSL 的官方发行版主要针对源代码,在 Windows 上直接编译可能相对复杂。幸运的是,有许多第三方提供了编译好的 Windows 二进制版本,极大地简化了安装过程。

本篇文章将详细介绍如何在 Windows 系统上安装和使用 OpenSSL,重点讲解通过第三方二进制包进行安装,并提供一系列常用的命令行操作示例,帮助您快速掌握 OpenSSL 的基本使用。

第一部分:OpenSSL 在 Windows 上的安装

如前所述,直接在 Windows 上从源代码编译 OpenSSL 需要安装C/C++编译器(如 Visual Studio、MinGW 或 Cygwin)、Perl 解释器以及可能还需要 NASM 或 YASM 汇编器,过程相对繁琐且容易出错。因此,对于大多数用户而言,下载和安装由可信第三方提供的预编译二进制版本是最佳选择。

警告: 由于 OpenSSL 的重要性,务必从官方推荐或高度可信的第三方网站下载二进制文件,以避免下载到被恶意修改的版本。

推荐的第三方二进制版本来源:

  1. Shining Light Productions: (网址通常是 https://slproweb.com/products/Win32OpenSSL.html) 提供 32 位和 64 位的安装包 (.exe),是广泛使用的来源之一。
  2. OpenSSL for Windows by Win64OpenSSL: (网址通常是 https://github.com/openssl/openssl-win64) 这是 OpenSSL 官方推荐的另一个来源,提供 64 位版本。

本教程将以 Shining Light Productions 提供的版本为例进行讲解,因为其安装过程比较典型且提供了图形化安装向导。请根据您的 Windows 系统架构(32位或64位)选择对应的版本。现代 Windows 系统绝大多数都是 64 位。

安装步骤:

  1. 访问下载网站: 打开您选择的第三方提供商网站(例如 Shining Light Productions 的下载页面)。
  2. 选择合适的版本:
    • 查找与您的 Windows 系统架构匹配的版本(例如,Win64 OpenSSL 对应 64 位)。
    • 选择最新的稳定版本。通常会有两个版本系列,例如 1.1.1 和 3.x。OpenSSL 3.x 是最新系列,OpenSSL 1.1.1 是旧的长期支持(LTS)系列。对于新项目或新安装,推荐使用最新的 LTS 或稳定版本(如 3.x 系列)。
    • 通常会有两个下载链接:LightFullLight 版本通常不包含文档和一些不常用的组件,体积较小;Full 版本包含所有内容。对于大多数用途,Light 版本就足够了。如果您不确定,下载 Full 版本。
    • 点击下载链接(例如 Download Win64 OpenSSL v3.x.x Light)。
  3. 运行安装程序: 找到下载的 .exe 文件,双击运行它。您可能需要管理员权限来运行安装程序。
  4. 用户账户控制(UAC): 如果出现 UAC 提示,点击“是”允许程序运行。
  5. 选择安装语言: 选择您希望使用的安装向导语言(通常是英文)。
  6. 欢迎界面: 点击“Next”。
  7. 许可协议: 阅读许可协议,如果同意,选择“I accept the agreement”,然后点击“Next”。
  8. 选择安装目录:
    • 您可以选择默认的安装路径(通常在 C:\Program Files\OpenSSL-Win64C:\Program Files (x86)\OpenSSL-Win32)。
    • 重要: 默认路径通常包含空格,这在命令行操作中可能需要引号包围,略显不便。一些用户习惯将其安装到不含空格的路径,例如 C:\OpenSSL-Win64。您可以点击“Browse”更改安装路径。选择一个您容易记住且不含空格的路径是一个好的实践。
    • 选择好路径后,点击“Next”。
  9. 选择组件: 通常默认选择全部组件即可。如果您下载的是 Full 版本,这里可能会有文档等选项。点击“Next”。
  10. 选择添加到系统环境变量 (PATH): 这是最关键的一步! OpenSSL 是一个命令行工具,为了能在任意命令行窗口中直接输入 openssl 命令而不需要输入完整路径,您需要将其添加到系统的 PATH 环境变量中。安装程序通常会提供此选项。
    • 查找类似 “Add OpenSSL directory to the system PATH” 或 “Copy OpenSSL DLLs to the Windows system directory” 的选项。
    • 通常有两个选项:
      • “The OpenSSL binaries directory”: 强烈推荐选择此项。 这会将 OpenSSL 的 bin 目录添加到您的 PATH 环境变量中。这是最灵活且推荐的方式。
      • “The Windows system directory”: 不推荐此项。这会将 OpenSSL 的 DLL 文件直接复制到 Windows 的系统目录 (system32SysWOW64) 中。虽然这样也能让系统找到 DLL,但不利于管理和升级多个版本的库,且可能引起冲突。
    • 选择 “The OpenSSL binaries directory”,然后点击“Next”。
  11. 准备安装: 查看安装设置摘要,确认无误后,点击“Install”。
  12. 安装过程: 等待安装程序复制文件。
  13. 完成安装: 安装完成后,可能会弹出一些关于捐赠或 Readme 文件的信息。点击“Finish”退出安装程序。

安装后验证:

安装完成后,您需要验证 OpenSSL 是否已成功安装并添加到 PATH 环境变量中。

  1. 打开新的命令提示符或 PowerShell 窗口: 重要! 如果您在安装 OpenSSL 之前已经打开了命令行窗口,您需要关闭它们并重新打开,以便加载更新后的 PATH 环境变量。
  2. 输入命令: 在新的命令行窗口中,输入以下命令并按回车:
    bash
    openssl version
  3. 检查输出: 如果安装成功并且 PATH 配置正确,您应该会看到类似以下格式的输出,显示 OpenSSL 的版本信息:
    OpenSSL 3.0.9 30 May 2023 (Library: OpenSSL 3.0.9 30 May 2023)
    或者根据您安装的版本显示相应的版本号。
  4. 故障排除: 如果您看到错误信息,例如 'openssl' is not recognized as an internal or external command, operable program or batch file.(’openssl’ 不是内部或外部命令,也不是可运行的程序),这意味着 OpenSSL 的 bin 目录没有正确添加到 PATH 环境变量中。请参照下一节手动配置 PATH。

手动配置 PATH 环境变量(如果安装程序中未选择或选择错误):

如果 openssl version 命令无效,您需要手动将 OpenSSL 的 bin 目录添加到系统的 PATH 环境变量中。

  1. 找到 OpenSSL 安装目录: 打开文件浏览器,导航到您安装 OpenSSL 的目录(例如 C:\OpenSSL-Win64)。
  2. 找到 bin 目录: 在 OpenSSL 安装目录下,找到名为 bin 的子目录(例如 C:\OpenSSL-Win64\bin)。记住这个完整路径。
  3. 打开系统属性:
    • 在 Windows 搜索框中输入“环境变量”,然后选择“编辑系统环境变量”。
    • 或者,右键点击“此电脑”或“计算机”,选择“属性”,然后点击左侧的“高级系统设置”。
  4. 打开环境变量窗口: 在“系统属性”窗口的“高级”选项卡下,点击右下角的“环境变量”按钮。
  5. 编辑 PATH 变量:
    • 在“环境变量”窗口中,找到“系统变量”列表框。
    • 在列表中找到名为 Path 的变量,双击它进行编辑。
    • 在“编辑环境变量”窗口中,点击“新建”按钮。
    • 输入您找到的 OpenSSL bin 目录的完整路径(例如 C:\OpenSSL-Win64\bin)。
    • 确保新添加的路径条目被移动到列表的靠前位置(通常不需要,但有时候可以避免与其他冲突的程序路径混淆)。
    • 点击“确定”关闭“编辑环境变量”窗口。
    • 点击“确定”关闭“环境变量”窗口。
    • 点击“确定”关闭“系统属性”窗口。
  6. 重新验证: 关闭所有已打开的命令提示符或 PowerShell 窗口,然后重新打开一个新的窗口。再次运行 openssl version 命令进行验证。现在应该可以正常工作了。

至此,您已成功在 Windows 系统上安装了 OpenSSL,并配置了 PATH 环境变量,可以在命令行中直接使用 openssl 命令了。

第二部分:OpenSSL 的基本使用

OpenSSL 是一个功能丰富的命令行工具。其基本语法结构通常是:

bash
openssl <命令> <子命令> [选项] [参数]

例如,openssl genrsa 是使用 genrsa 子命令(用于生成 RSA 密钥),而 openssl x509 是使用 x509 子命令(用于处理 X.509 证书)。

您可以通过 openssl list-commands 查看所有可用的命令,或者通过 openssl <命令> --help 查看特定命令的使用帮助。

下面将介绍一些最常用 OpenSSL 命令及其应用场景。

1. 生成私钥 (Generating Private Keys)

私钥是密码学中的核心组件,用于数字签名、解密数据或生成公钥。常用的非对称加密算法有 RSA 和 ECC (椭圆曲线)。

a) 生成 RSA 私钥:

RSA 是最常见的非对称加密算法之一。生成 RSA 私钥通常使用 genrsa 命令。

bash
openssl genrsa -out private.key 2048

  • genrsa: 指定要执行的操作是生成 RSA 私钥。
  • -out private.key: 指定生成的私钥保存到名为 private.key 的文件中。文件格式通常是 PEM 格式。
  • 2048: 指定密钥的长度(模长),单位是比特。2048 位是目前常用的安全长度,4096 位提供更高的安全性,但生成和处理速度较慢。

执行此命令后,会在当前目录下生成一个 private.key 文件,其中包含您的 RSA 私钥。这个私钥是未加密的。

b) 生成加密的 RSA 私钥:

为了保护私钥不被泄露,通常会对其进行加密,设置一个密码(passphrase)。

bash
openssl genrsa -aes256 -out private.key 2048

  • -aes256: 指定使用 AES-256 算法对私钥进行加密。您也可以使用其他加密算法,如 -des3

执行此命令时,OpenSSL 会提示您输入一个 PEM pass phrase (加密密码),并再次输入进行验证。请务必记住这个密码,因为每次使用这个私钥时都需要输入它。

c) 生成 ECC 私钥:

ECC 是另一种高效的非对称加密算法,在移动设备和需要更高性能的场景中越来越流行。生成 ECC 私钥使用 genpkey 命令,并指定算法和曲线。

bash
openssl genpkey -algorithm EC -out ec-private.key -pkeyopt ec_paramgen_curve:prime256v1

  • genpkey: 生成一个私钥。
  • -algorithm EC: 指定算法为椭圆曲线。
  • -out ec-private.key: 输出文件名为 ec-private.key
  • -pkeyopt ec_paramgen_curve:prime256v1: 指定使用的椭圆曲线,prime256v1 (也称为 secp256r1) 是一个常用的标准曲线。您可以通过 openssl ecparam -list_curves 查看支持的曲线列表。

类似 RSA 私钥,ECC 私钥也可以加密。

d) 查看私钥信息:

您可以使用 rsapkey 命令查看私钥的内容和信息。

bash
openssl rsa -in private.key -text -noout
openssl pkey -in ec-private.key -text -noout

  • -in private.key: 指定输入文件是 private.key
  • -text: 以文本格式显示私钥的详细信息(如模数、指数等)。
  • -noout: 阻止输出私钥本身的编码内容,只显示信息。

如果私钥是加密的,会提示您输入密码。

2. 生成证书签名请求 (Generating Certificate Signing Requests – CSR)

CSR 是您向证书颁发机构 (CA) 申请 SSL/TLS 证书时需要提交的文件。它包含了您的公钥以及组织信息等,但不包含私钥。CA 会使用 CSR 中的信息颁发证书。

生成 CSR 使用 req 命令。

bash
openssl req -new -key private.key -out server.csr

  • req: 指定要执行的操作是证书签名请求或证书生成。
  • -new: 指示生成一个新的 CSR。
  • -key private.key: 指定使用哪个私钥来生成 CSR(CSR 中会包含与此私钥对应的公钥)。
  • -out server.csr: 指定生成的 CSR 保存到名为 server.csr 的文件中。

执行此命令后,OpenSSL 会进入一个交互式过程,要求您输入一系列信息:

  • Country Name (2 letter code) [AU]: 国家代码(两字母),例如 CN (中国), US (美国)。
  • State or Province Name (full name) [Some-State]: 省份或州的全称,例如 Beijing, California。
  • Locality Name (eg, city) []: 城市名称,例如 Beijing, San Francisco。
  • Organization Name (eg, company) [Internet Widgits Pty Ltd]: 组织名称,例如 My Company Ltd.。对于商业证书,这需要与您的注册信息一致。
  • Organizational Unit Name (eg, section) []: 组织单位名称(可选),例如 IT Department, Web Security。
  • Common Name (e.g. server FQDN or YOUR name) []: 这是最重要的字段。 对于 SSL/TLS 证书,这里必须是您要保护的域名或 IP 地址。例如 www.example.commail.example.com。如果您申请的是通配符证书,输入 *.example.com。对于代码签名证书或客户端证书,这里通常是您的姓名或组织名称。
  • Email Address []: 联系邮箱(可选)。
  • A challenge password []: 质询密码(可选)。通常在申请 SSL 证书时留空。
  • An optional company name []: 可选的公司名称(可选)。

填写完所有信息后,OpenSSL 会生成 server.csr 文件。您可以将这个文件内容(文本格式)复制并提交给 CA 来申请证书。

查看 CSR 信息:

bash
openssl req -in server.csr -text -noout

这个命令会显示 CSR 中包含的所有信息,包括公钥和您输入的主题信息 (Subject)。

3. 生成自签名证书 (Generating Self-Signed Certificates)

自签名证书是由您自己的私钥签发的证书,而不是由一个受信任的 CA 签发。它们主要用于测试环境、内部系统或您自己可以控制所有客户端的场景(您需要将此自签名证书安装到客户端的信任根证书列表)。在公共互联网上使用自签名证书会导致浏览器或客户端发出安全警告。

生成自签名证书也使用 req 命令,但需要加上 -x509 选项。

bash
openssl req -x509 -new -key private.key -out selfsigned.crt -days 365

  • -x509: 指示生成一个 X.509 证书(而不是 CSR)。
  • -new: 指示生成新的请求和证书。
  • -key private.key: 使用指定的私钥。
  • -out selfsigned.crt: 指定生成的证书保存到 selfsigned.crt 文件中。常用的证书文件扩展名有 .crt, .cer, .pem
  • -days 365: 指定证书的有效期,单位是天。这里设置为 365 天。

执行此命令时,也会提示您输入与生成 CSR 类似的主题信息。输入方式与生成 CSR 相同。

查看证书信息:

bash
openssl x509 -in selfsigned.crt -text -noout

  • x509: 指定操作对象是 X.509 证书。
  • -in selfsigned.crt: 指定输入文件是 selfsigned.crt
  • -text: 以文本格式显示证书的详细信息,包括颁发者、主体、有效期、公钥、指纹等。
  • -noout: 阻止输出证书本身的编码内容。

4. 证书格式转换

证书和密钥文件有多种格式,常见的有 PEM, DER, PFX/PKCS12。OpenSSL 可以实现这些格式之间的转换。

  • PEM 格式 (.pem, .crt, .cer, .key): Base64 编码,文本文件,通常以 “—–BEGIN…” 开头,以 “—–END…” 结尾。这是 OpenSSL 最常用的格式。
  • DER 格式 (.der, .cer): 二进制编码,通常用于 Java 或 Windows 环境。
  • PFX/PKCS12 格式 (.pfx, .p12): 一个二进制文件,可以同时包含私钥、对应的证书以及中间证书链。常用于在 Windows IIS 服务器或导入到浏览器/操作系统中。

a) PEM 转 DER:

bash
openssl x509 -in certificate.pem -outform DER -out certificate.der # 转换证书
openssl rsa -in private.pem -outform DER -out private.der # 转换未加密私钥
openssl pkey -in private.pem -outform DER -out private.der # 转换加密或未加密私钥 (更通用)

  • -inform PEM: 指定输入格式是 PEM (通常是默认,可省略)。
  • -outform DER: 指定输出格式是 DER。

b) DER 转 PEM:

bash
openssl x509 -in certificate.der -inform DER -out certificate.pem
openssl rsa -in private.der -inform DER -out private.pem # 转换未加密私钥
openssl pkey -in private.der -inform DER -out private.pem # 转换加密或未加密私钥 (更通用)

  • -inform DER: 指定输入格式是 DER。
  • -outform PEM: 指定输出格式是 PEM (通常是默认,可省略)。

c) 生成 PFX/PKCS12 文件 (PEM 到 PFX):

这通常用于将 PEM 格式的私钥和证书打包成一个文件,方便导入。

bash
openssl pkcs12 -export -out certificate.pfx -inkey private.key -in certificate.crt -certfile intermediate.crt -name "My Certificate"

  • pkcs12: 指定操作 PKCS#12 格式文件。
  • -export: 指示要创建一个 PKCS#12 文件。
  • -out certificate.pfx: 指定输出的 PFX 文件名。
  • -inkey private.key: 指定输入的私钥文件 (PEM 格式)。
  • -in certificate.crt: 指定输入的证书文件 (PEM 格式)。
  • -certfile intermediate.crt: (可选) 如果您的证书是由中间 CA 颁发的,您可能需要包含中间 CA 证书链。此选项用于指定中间证书文件。可以多次使用 -certfile 来包含多个中间证书。
  • -name "My Certificate": (可选) 给导出的证书设置一个友好的名称。

执行此命令时,OpenSSL 会提示您为导出的 PFX 文件设置一个导入密码(Export Password)。

d) 从 PFX/PKCS12 文件中提取私钥和证书 (PFX 到 PEM):

bash
openssl pkcs12 -in certificate.pfx -nocerts -out private.pem
openssl pkcs12 -in certificate.pfx -clcerts -nokeys -out certificate.pem
openssl pkcs12 -in certificate.pfx -cacerts -nokeys -out ca-bundle.pem # 提取 CA 证书链

  • -in certificate.pfx: 指定输入的 PFX 文件。
  • -nocerts: 提取私钥,不包含证书。
  • -clcerts: 提取客户端(即您的)证书。
  • -cacerts: 提取 CA 证书链。
  • -nokeys: 提取证书,不包含私钥。
  • -out ...: 指定输出文件。

执行这些命令时,如果 PFX 文件设置了导入密码,OpenSSL 会提示您输入该密码。提取出的私钥默认是加密的,您可以加上 -nodes 选项来提取未加密的私钥(小心使用,未加密私钥风险高)。

5. 文件加密与解密 (Symmetric Encryption)

OpenSSL 可以使用各种对称加密算法对文件进行加密和解密。

“`bash

加密文件

openssl enc -aes256 -salt -in plaintext.txt -out encrypted.txt

解密文件

openssl enc -aes256 -d -in encrypted.txt -out decrypted.txt
“`

  • enc: 执行加密/解密操作。
  • -aes256: 指定使用 AES-256 算法。OpenSSL 支持多种算法,您可以通过 openssl list -cipher-commands 查看。
  • -salt: (推荐) 使用一个随机的 salt 值,增加安全性。
  • -in plaintext.txt: 指定要加密的输入文件。
  • -out encrypted.txt: 指定加密后的输出文件。
  • -d: 在解密时使用此选项。
  • -in encrypted.txt: 指定要解密的输入文件。
  • -out decrypted.txt: 指定解密后的输出文件。

执行加密或解密命令时,OpenSSL 会提示您输入一个加密密码 (passphrase)。请记住这个密码,解密时需要使用相同的密码。

6. 计算文件哈希值 (Hashing)

计算文件的哈希值可以用于验证文件的完整性。OpenSSL 支持多种哈希算法(如 MD5, SHA-1, SHA-256, SHA-512 等)。

bash
openssl dgst -sha256 filename.txt

  • dgst: 执行摘要(哈希)计算。
  • -sha256: 指定使用 SHA-256 算法。您可以替换为 -md5, -sha1, -sha512 等。
  • filename.txt: 指定要计算哈希值的文件。

命令会输出文件的 SHA-256 哈希值。

7. 其他常用命令

  • 查看支持的算法列表:
    bash
    openssl list-commands # 列出所有命令
    openssl list-cipher-commands # 列出支持的对称加密算法
    openssl list-message-digest-commands # 列出支持的哈希算法
    openssl list-standard-curves # 列出支持的 ECC 曲线

  • 验证证书链:
    bash
    openssl verify -CAfile ca.crt server.crt

    验证 server.crt 是否由 ca.crt 签发。对于完整的证书链验证,您可能需要构建一个包含根证书和所有中间证书的文件。

  • 测试 SSL/TLS 连接:
    bash
    openssl s_client -connect example.com:443

    连接到指定服务器的指定端口,显示连接使用的协议、加密套件以及服务器证书信息。按下 Q 并回车退出。

第三部分:OpenSSL 配置与高级话题简介

OpenSSL 的行为可以通过配置文件进行控制,通常是 openssl.cnf 文件。在 Windows 上,这个文件通常位于 OpenSSL 安装目录下的 bin 目录或父目录中。您可以通过设置环境变量 OPENSSL_CONF 来指定配置文件的路径。

配置文件可以用来设置默认的密钥长度、哈希算法、证书模板信息等。对于复杂的证书颁发机构 (CA) 搭建和管理,配置文件的作用尤为重要。

一些高级话题包括:

  • 搭建简易 CA: 使用 openssl.cnf 和一系列命令(ca 命令系列)来模拟一个简单的证书颁发机构,用于内部测试或私有网络。
  • 使用 Engines: OpenSSL 支持硬件加密模块或其他外部库(称为 Engines)来加速或增强密码学操作。
  • 编程接口: OpenSSL 不仅是命令行工具,更是一个强大的库。许多编程语言(如 C/C++, Python, PHP, Java 等)都有绑定或接口来调用 OpenSSL 的功能。

这些高级主题超出了本入门教程的范围,但了解它们的存在有助于您在未来需要时进行深入学习。

第四部分:常见问题与故障排除

  1. 'openssl' is not recognized... (命令未找到):
    • 原因: OpenSSL 的 bin 目录未添加到系统的 PATH 环境变量中,或者添加后没有重新打开命令行窗口。
    • 解决方法: 手动添加 OpenSSL 的 bin 目录到 PATH 环境变量(参照前文的手动配置步骤),然后关闭并重新打开命令行窗口。
  2. DLL 文件错误 (例如提示缺少 libcrypto-*.dlllibssl-*.dll):
    • 原因: OpenSSL 的 DLL 文件没有被系统找到。这可能是 PATH 变量设置不正确,或者您选择了将 DLL 复制到系统目录但操作失败。
    • 解决方法: 确保 OpenSSL 的 bin 目录已正确添加到 PATH 中。如果您选择了复制 DLL 到系统目录,检查安装日志或重新运行安装程序。有时候,安装 Microsoft Visual C++ Redistributable 包可以解决某些依赖问题(通常 OpenSSL 的二进制提供商会说明依赖)。
  3. 权限错误 (例如 Permission denied):
    • 原因: 您尝试在没有写入权限的目录下生成文件,或者尝试访问没有读取权限的文件。
    • 解决方法: 切换到您有权限的目录执行命令,或者右键以管理员身份运行命令提示符/PowerShell。
  4. 命令语法错误:
    • 原因: 命令、子命令、选项或参数拼写错误,或顺序不正确。
    • 解决方法: 仔细检查您输入的命令。使用 openssl <command> --help 查看正确的使用方法和选项。 OpenSSL 的错误信息有时比较晦涩,请耐心阅读。
  5. 输入密码时没有回显:
    • 原因: 这是正常的安全设计。当您输入私钥密码或文件加密密码时,命令行不会显示您输入的字符(包括星号或其他占位符)。
    • 解决方法: 只管输入密码并按回车即可。

结论

OpenSSL 是一个功能强大且用途广泛的加密工具包,在 Windows 环境下同样可以发挥重要作用。通过本文详细介绍的第三方二进制安装方法,您可以轻松地在 Windows 系统上获得并运行 OpenSSL。

掌握 openssl 命令的基本用法,如生成密钥、CSR 和自签名证书,进行文件格式转换和简单的文件加密,将大大提高您在处理证书管理和基本安全任务时的效率。

虽然 OpenSSL 的命令选项众多,功能深入,但通过勤加练习和查阅官方文档(如果使用 Full 版本或在线资源),您可以逐步掌握更高级的应用。希望本教程能帮助您迈出在 Windows 上使用 OpenSSL 的第一步!

现在,打开您的命令提示符或 PowerShell,开始您的 OpenSSL 探索之旅吧!


发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部