《精通PKI网络安全认证技术与编程实现》 读书笔记二
2014-01-04 18:20
253 查看
第二章 OpenSSL入门
1、openssl实现了SSL/TLS协议,提供了对SSLlv1,SSLv2,SSLv3和TLS的支持。
2、openssl包含3部分:SSL协议、密码算法库、应用程序。其中密码库是基础,应用程序把密码算法库和SSL协议应用于实际开发中,也是丰富的openssl指令集。
openssl包含关系:密码算法库 ->SSL协议->应用程序(指令)。
3、SSL协议:完全实现和封装了SSL协议的3个版本(SSLv1~SSLv3)和TLS协议(TLS1.0),linux下库文件为libssl.a, windows下库文件为ssleay32.lib/ssleay32.dll。
4、密码算法库:包括公开密钥(非对称)算法、对称加密算法、信息摘要算法、x509数字证书标准、pkcs12个人信息交换语法标准、pkcs7加密消息语法标准、ocsp在线证书状态查询协议、crl证书吊销列表等标准。同时openssl提供Engine机制:利用Engine可将加密卡、加密机等外部硬件算法模块无缝集成到openssl中。linux下库文件为libcrypto.a, windows下库文件为libeay32.lib/libeay32.dll。
openssl支持的密码算法有:
(1)8种对称算法,其中7种为分组加密算法,1种为流加密算法。分组加密有:AES、DES、Blowfish、CAST、IDEA、RC2、RC5。流加密:RC4。
(2)4种公开密钥算法:DH、RSA、DSA、EC(椭圆曲线算法)。
(3)5种信息摘要算法:分别为MD2、MD5,MDC2,SHA(SHA1),RIPEMD。
5、应用程序部分主要包括以下内容:
(1)各种算法的加密程序;
(2)各种类型密钥的产生程序,如RSA,MD5,Enc等;
(3)证书签发和验证程序,如Ca,x509,Crl等;
(4)SSL连接测试程序,如S_Client和S_Server等;
(5)其他的标准应用程序,如PKCS12和Smime等。
6、openssl的优缺点:
(1)优点:c语言开发,支持多种操作系统,移植性好;功能全面,支持大部分主流密码算法,相关标准协议和ssl协议;开源;具备应用程序(即openssl指令),既可以直接使用也可以二次开发;免费使用,适合商用和非商用;
(2)缺点:虽然采用c语言开发,但结构较为复杂庞大,不容易剥离;文档不全面,增加使用困难。
7、openssl对全球的pki发展贡献突出。
1、openssl实现了SSL/TLS协议,提供了对SSLlv1,SSLv2,SSLv3和TLS的支持。
2、openssl包含3部分:SSL协议、密码算法库、应用程序。其中密码库是基础,应用程序把密码算法库和SSL协议应用于实际开发中,也是丰富的openssl指令集。
openssl包含关系:密码算法库 ->SSL协议->应用程序(指令)。
3、SSL协议:完全实现和封装了SSL协议的3个版本(SSLv1~SSLv3)和TLS协议(TLS1.0),linux下库文件为libssl.a, windows下库文件为ssleay32.lib/ssleay32.dll。
4、密码算法库:包括公开密钥(非对称)算法、对称加密算法、信息摘要算法、x509数字证书标准、pkcs12个人信息交换语法标准、pkcs7加密消息语法标准、ocsp在线证书状态查询协议、crl证书吊销列表等标准。同时openssl提供Engine机制:利用Engine可将加密卡、加密机等外部硬件算法模块无缝集成到openssl中。linux下库文件为libcrypto.a, windows下库文件为libeay32.lib/libeay32.dll。
openssl支持的密码算法有:
(1)8种对称算法,其中7种为分组加密算法,1种为流加密算法。分组加密有:AES、DES、Blowfish、CAST、IDEA、RC2、RC5。流加密:RC4。
(2)4种公开密钥算法:DH、RSA、DSA、EC(椭圆曲线算法)。
(3)5种信息摘要算法:分别为MD2、MD5,MDC2,SHA(SHA1),RIPEMD。
5、应用程序部分主要包括以下内容:
(1)各种算法的加密程序;
(2)各种类型密钥的产生程序,如RSA,MD5,Enc等;
(3)证书签发和验证程序,如Ca,x509,Crl等;
(4)SSL连接测试程序,如S_Client和S_Server等;
(5)其他的标准应用程序,如PKCS12和Smime等。
6、openssl的优缺点:
(1)优点:c语言开发,支持多种操作系统,移植性好;功能全面,支持大部分主流密码算法,相关标准协议和ssl协议;开源;具备应用程序(即openssl指令),既可以直接使用也可以二次开发;免费使用,适合商用和非商用;
(2)缺点:虽然采用c语言开发,但结构较为复杂庞大,不容易剥离;文档不全面,增加使用困难。
7、openssl对全球的pki发展贡献突出。
相关文章推荐
- (湖北)电信、移动、联通DNS
- socket INADDR_ANY
- [转]如何使用BackTrack破解WIFI无线网络的WEP密钥
- HttpModule的一些初步认识
- Sqlite 分页(http://www.cnblogs.com/shang53880/archive/2011/03/11/1981749.html)
- 六款小巧的HTTP Server[C语言]
- 【Android学习】http协议编程的三种方式
- 菜鸟必知之网络安全常识
- 网络编程
- 刘未鹏博客 http://mindhacks.cn/
- socketserver TCP and UDP and synchronous
- UNIX网络编程 卷2 源代码使用
- iOS用ASIHttpRequest上传
- linux3.11.10,mini2440移植DM9000,ping不通,丢包率大,网络不稳定
- 让.aspx同样实现.ashx文件的功能: IHttpHandler
- 从零开始搭建TestCpp工程
- C# WebRequest处理Https请求
- fatal: https://github.com/XXXX.git/info/refs?service=git-upload-pack not found: 解决
- java实现网络交互 get、post方法
- HTTP超文本传输协议-HTTP/1.1中文版