OpenSSL

在-{zh-tw:電腦網路;zh-cn:计算机网络}-上，OpenSSL是一個開放原始碼的軟體函式庫套件，應用程式可以使用這個套件來進行安全通訊，避免竊聽，同時確認另一端連線者的身份。這個套件廣泛被應用在網際網路的網頁伺服器上。

其主要函式庫是以C語言所寫成，實作了基本的加密功能，實作了SSL與TLS協定。OpenSSL可以運行在OpenVMS、 Microsoft Windows以及絕大多數類Unix作業系統上（包括Solaris，Linux，Mac OS X與各種版本的開放原始碼BSD作業系統）。

雖然此軟體是開放原始碼的，但其3.0以前版本的授權條款與GPL有衝突之處，故GPL軟體使用OpenSSL時（如Wget）必須對OpenSSL給予例外。

歷史
OpenSSL計劃在1998年開始，其目標是發明一套自由的加密工具，在網際網路上使用。OpenSSL以Eric Young以及Tim Hudson兩人開發的SSLeay為基礎，隨著兩人前往RSA公司任職，SSLeay在1998年12月停止開發。因此在1998年12月，社群另外分支出OpenSSL，繼續開發下去。

OpenSSL管理委員會目前由7人組成，有13個開發人員具有提交權限（其中許多人也是OpenSSL管理委員會的一部分）。只有兩名全職員工（研究員），其餘的是志願者。

該項目每年的預算不到100萬美元，主要依靠捐款。 TLS 1.3的開發由Akamai贊助。

主要版本发布

算法
OpenSSL支持许多不同的加密算法：
 加密
 AES、Blowfish、Camellia、Chacha20、Poly1305、、、DES、IDEA、、RC4、RC5、TDES、、SM4
 密碼雜湊函數
 MD5、MD4、MD2、SHA-1、SHA-2、SHA-3、RIPEMD-160、、、BLAKE2、、SM3
 公开密钥加密
 RSA、DSA、ECDSA、ECDHE、迪菲-赫爾曼密鑰交換、椭圆曲线密码学、X25519、、、、GOST R 34.10-2001、SM2
（从1.0版开始，橢圓曲線迪菲-赫爾曼金鑰交換用于支持前向安全性）)

心脏出血漏洞

OpenSSL 1.0.1版本（不含1.0.1g）含有一个严重漏洞，可允许攻击者读取服务器的内存信息。该漏洞於2014年4月被公諸於世，影响三分之二的活跃网站。

分支

Agglomerated SSL 

在2009年，OpenSSL API受挫之后，当时的OpenBSD开发人员Marco Peereboom创建了分支Agglomerated SSL（assl），它重新使用OpenSSL API，但提供了更简单的外部接口。

LibreSSL 

2014年4月的心脏出血漏洞事件之后，OpenBSD项目成员以OpenSSL 1.0.1g作为分支，创建一个名为LibreSSL的项目。在缩减OpenSSL的代码库的第一周，将超过90,000行的C语言代码从分支中删除。

BoringSSL 

2014年6月，Google发布了自己的OpenSSL分支BoringSSL，计划与OpenSSL和LibreSSL的开发者合作。

GmSSL 
GmSSL支持SM2/SM3/SM4/SM9/ZUC等商用密码，主要使用SM2替代RSA/Diffie-Hellman/ECDSA/ECDH，SM3替代MD5/SHA-1/SHA-256，SM4替代DES/AES，SM9替代PKI/CA体系，所有代码在GitHub上开源，并由北京大学信息安全实验室开发和维护。此项目获得2015年度中国Linux软件大赛二等奖（一等奖空缺）。

参见 
 加密
 OpenSSH
 TLS的应用对比
 WolfSSL

註記

参考

外部連結 
 OpenSSL官方網站
 SSLeay文件庫
 OpenSSL License vs GPL
 wget's readme file，including the GPL with exception
 mICQ COPYING file，citing the GPL and including the exception
 OpenSSL FAQ entry on interaction between the OpenSSL and GNU licenses
  OpenSSL Quick Reference Guide 
  OpenSSL Cookbook - A Short Guide to the Most Frequently Used OpenSSL Features and Commands By Ivan Ristić 

加密软件
C函式庫
自由安全软件
傳輸層安全協議