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官方手机版