OpenSSL:互联网加密的底层基石
OpenSSL 在 GitHub 上拿到 30,307 Star。
这东西你每天都在用,只是你自己不知道。浏览器地址栏那把小锁、App 登录时的数据传输、服务器之间的 API 调用,背后几乎都有 OpenSSL 在撑着。它是目前使用最广泛的 TLS/SSL 协议实现,没有之一。

1、 它到底是什么
OpenSSL 是一套开源的加密工具包,核心由三部分组成:
- libssl:实现 TLS、DTLS、QUIC 协议
- libcrypto:通用加密库,可以独立使用
- openssl:命令行工具,证书管理、加解密、签名验证都能做
它最早脱胎于 Eric A. Young 和 Tim J. Hudson 开发的 SSLeay 库,经过二十多年迭代,现在是 Linux、macOS、Windows 等主流平台的标配加密组件。
2、 为什么到处都是它
互联网安全通信的核心是 TLS 协议,而 OpenSSL 是这个协议最完整的开源实现。
从 TLSv1.3 到 DTLSv1.2 再到 QUIC v1,它跟进了所有主流标准。加密库部分通过了 FIPS 验证,满足美国联邦政府的安全合规要求。
更关键的一点:它免费,Apache 2.0 协议,商用也没有法律障碍。对于需要加密能力的软件项目,OpenSSL 基本是绕不开的选项。

3、 命令行工具能干啥
OpenSSL 自带的命令行工具是个瑞士军刀,常用操作包括:
- 生成密钥和证书签名请求(CSR)
- 签发和管理 X.509 证书
- 计算消息摘要
- 加密和解密数据
- 测试 SSL/TLS/DTLS 连接
- 处理 S/MIME 签名或加密邮件
做运维的人经常拿它来排查证书问题、生成自签名证书、验证 HTTPS 配置。开发阶段做接口联调时也常常用到。
4、 怎么获取
大多数 Linux 发行版已经预装了 OpenSSL。macOS 自带的也有,但版本可能偏旧。
Windows 用户可以从项目维护的第三方二进制列表中获取。源码包可以从 openssl-library.org 下载,编译安装的话项目提供了覆盖 Unix、Windows、Android、OpenVMS 等平台的详细文档。
5、 什么人用得上
-
服务器运维和后端开发,处理证书和 TLS 配置是日常
-
做安全审计或密码学研究的人,OpenSSL 是核心参考实现
-
需要在项目里集成加密能力的开发者
-
做安全审计或密码学研究的人,OpenSSL 是核心参考实现
-
需要在项目里集成加密能力的开发者

4120

被折叠的 条评论
为什么被折叠?



