openssl是一個開放源代碼的軟件庫包軟件。
應用程序可以使用這個軟件庫包來進行安全通信,避免竊聽,同時確認另一端連接者的身份。這個軟件庫包廣泛被應用在互聯網的網頁服務器上。
作為一個基于密碼學的安全開發包,openssl提供的功能相當強大和全面,囊括了主要的密碼算法、常用的密鑰和證書封裝管理功能以及ssl協議,并提供了豐富的應用程序供測試或別的目的使用。
openssl整個軟件庫包大概可以分成三個主要的功能部分,分別是ssl協議庫、應用程序以及密碼算法庫。openssl的目錄結構自然也是圍繞這三個功能部分進行規劃的。
openssl特點:
1、數據保密性。信息加密就是把明碼的輸入文件用加密算法轉換成加密的文件以實現數據的保密。加密的過程需要用到密鑰來加密數據然后再解密。沒有了密鑰,就無法解開加密的數據。數據加密之后,只有密鑰要用一個安全的方法傳送。加密過的數據可以公開地傳送。
2、數據完整性。加密也能保證數據的一致性。例如:消息驗證碼,能夠校驗用戶提供的加密信息,接收者可以用MAC來校驗加密數據,保證數據在傳輸過程中沒有被篡改過。
3、安全驗證。加密的另外一個用途是用來作為個人的標識,用戶的密鑰可以作為他的安全驗證的標識。ssl是利用公開密鑰的加密技術來作為用戶端與服務器端在傳送機密資料時的加密通訊協定。