SSL是Secure Sockets Layer(安全套接層協(xié)議)的縮寫,可以在Internet上提供秘密性傳輸。其目標(biāo)是保證兩個應(yīng)用間通信的保密性和可靠性,可在服務(wù)器端和用戶端同時實現(xiàn)支持。OpenSSL是一個強(qiáng)大的安全套接字層密碼庫,其支持多種對稱、非對稱、摘要算法以及證書生成管理等功能,非常適合服務(wù)器等平臺使用,開發(fā)者只需要安裝完成Openssl后通過調(diào)用其API接口函數(shù)即可實現(xiàn)各種數(shù)據(jù)安全功能。對稱算法支持的分組加密算法包括SM4、AES、DES、Blowfish、CAST、IDEA、RC2、RC5,都支持電子密碼本模式(ECB)、加密分組鏈接模式(CBC)、加密反饋模式(CFB)和輸出反饋模式(OFB)四種常用的分組密碼加密模式。其中,AES使用的加密反饋模式(CFB)和輸出反饋模式(OFB)分組長度是128位,其它算法使用的則是64位。DES算法還支持三個密鑰和兩個密鑰3DES算法。非對稱算法支持的非堆成算法包括SM2算法,DH算法、RSA算法、DSA算法和橢圓曲線算法(ECC)。SM2算法為國密算法可實現(xiàn)數(shù)據(jù)的簽名驗簽和加解密、密鑰交換等功能,DH算法一般用于密鑰交換。RSA算法既可以用于密鑰交換,也可以用于數(shù)字簽名和加解密使用,DSA算法則一般只用于數(shù)字簽名。摘要算法支持的摘要算法包括SM3、MD2、MD5、MDC2、SHA和RIPEMD。OpenSSL是服務(wù)器端開發(fā)者的一把利器,后續(xù)文章會為大家介紹OpenSSL的安裝、安裝常見問題以及VS端調(diào)用方法。