第一個:OpenSSL
C語言實現,整個軟件包大概可以分成三個主要的功能部分:密碼算法庫、SSL協議庫以及應用程序。OpenSSL的目錄結構自然也是圍繞這三個功能部分進行規划的。 作為一個基於密碼學的安全開發包,OpenSSL提供的功能相當強大和全面,囊括了主要的密碼算法、常用的密鑰和證書封裝管理功能以及SSL協議,並提供了豐富的應用程序供測試或其它目的使用。代碼量比較龐大,使用起來不是很方便。支持跨平台。
第二個:crypto++
C++語言實現,代碼龐大且復雜, 使用起來不方便。支持跨平台。
第三個:CyaSSL
C語言實現,該軟件包是一個快速的、具有雙協議實現的SSL ,主要適用嵌入式的設備。它包含一個SSL 的客戶端和服務器端的時間,支持兼容OpenSSL 的多個API 方法,支持TLS 1.1 以及AES, 3DES, RC4, HC-128, and RABBIT 等加密方法。
第四個:jsCrypto和Crypto-JS和pidCrypt
java script實現的加密解密庫。jsCrypto 是一個實現了一些常用加密方法的JavaScript 庫,支持的算法包括:AES, SHA-1, HMAC, BASE64, RSA, ECC and IBE,這個庫也可以在ActionScript 下使用。Crypto-JS 為JavaScript 提供了各種各樣的加密算法,目前已支持的算法包括:MD5,SHA-1,SHA-256,AES,Rabbit,MARC4,HMAC 。
pidCrypt 是JavaScript 的一個模塊化的加密庫,支持: AES (CBC & CTR Mode), RSA, MD5, SHA-1, SHA-256, SHA-384, SHA-512, ASN.1, Base64, UTF-8. The AES-CBC mode is compatible to OpenSSL.
第五個:xyssl
C語言實現,使用方便簡單。實現了常用的大部分加密解密算法。下載地址為 :http://xyssl.sourcearchive.com/downloads/0.9/xyssl_0.9.orig.tar.gz
摘自 張老師的專欄
