OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,并提供豐富的應用程序供測試或其它目的使用。
openssl是一個功能豐富且自包含的開源安全工具箱。它提供的主要功能有:SSL協議實現(包括SSLv2、SSLv3和TLSv1)、大量軟算法(對稱/非對稱/摘要)、大數運算、非對稱算法密鑰生成、ASN.1編解碼庫、證書請求(PKCS10)編解碼、數字證書編解碼、CRL編解碼、OCSP協議、數字證書驗證、PKCS7標準實現和PKCS12個人數字證書格式實現等功能。
這里給您提供的是openssl 中文手冊,通過學習openssl,用戶能夠學到PKI方面的各種知識,其重要性不言而喻。
以下為學習openssl的方法,供參考。
1) 建立學習環境
建立一個供調試的openssl環境,可以是windows平臺,也可以是linux或者其他平臺。用戶需有在這些平臺下調試源代碼的能力。
2)學習openssl的命令
通過openssl命令的學習,對openssl有基本的了解。
3) 學習openssl源代碼并調試
主要的源代碼有:
apps目錄下的各個程序,對應于openssl的各項命令;
demos下的各種源代碼;
engines下的各種engine實現;
test目錄下的各種源代碼。
對于openssl函數的學習,主要查看openssl自身是如何調用的,或者查看函數的實現。對于openssl中只有實現而沒有調用的函數,讀者需要自己寫源碼或研究源代碼去學習。
4) 學會使用openssl的asn.1編解碼
openssl中很多函數和源碼都涉及到asn1編解碼,比如數字證書申請、數字證書、crl、ocsp、pkcs7、pkcs8、pkcs12等。
5) 查找資料
Linux下主要用man就能查看openssl命令和函數的幫助。Windows用戶可用到www.openss.org去查看在線幫助文檔,或者用linux下的命令man2html將幫助文檔裝換為html格式。用戶也可以訪問openssl.cn論壇來學習openssl。
6) 學習openssl相關書籍
讀者可以參考《OpenSSL與網絡信息安全--基礎、結構和指令》、《Network Security with OpenSSL》(OReilly出版)和《OpenSSL for windows Developer’s Guide》。
- PC官方版
- 安卓官方手機版
- IOS官方手機版