一、 OpenSSL 简介
SSL 是 Secure Socket Layer(安全套接层协议)的缩写,可以在 Internet 上提供秘密性
传输。Netscape 公司在推出第一个 Web 浏览器的同时,提出了 SSL 协议标准,目前已有 3.0
版本。SSL 采用公开密钥技术。其目标是保证两个应用间通信的保密性和可靠性,可在服务
器端和用户端同时实现支持。目前,利用公开密钥技术的 SSL 协议,已成为 Internet 上保
密通讯的工业标准。安全套接层协议能使用户/服务器应用之间的通信不被攻击者窃听,并
且始终对服务器进行认证,还可选择对用户进行认证。SSL 协议要求建立在可靠的传输层
协议(TCP)之上。SSL 协议的优势在于它是与应用层协议独立无关的,高层的应用层协议
(例如:HTTP,FTP,TELNET 等)能透明地建立于 SSL 协议之上。SSL 协议在应用层协议
通信之前就已经完成加密算法、通信密钥的协商及服务器认证工作。在此之后应用层协议
所传送的数据都会被加密,从而保证通信的私密性。
通过以上叙述,SSL 协议提供的安全信道有以下三个特性:
1. 数据的保密性
信息加密就是把明码的输入文件用加密算法转换成加密的文件以实现数据的保密。加
密的过程需要用到密匙来加密数据然后再解密。没有了密钥,就无法解开加密的数据。数
据加密之后,只有密匙要用一个安全的方法传送。加密过的数据可以公开地传送。
2. 数据的一致性
加密也能保证数据的一致性。例如:消息验证码(MAC),能够校验用户提供的加密信
息,接收者可以用 MAC 来校验加密数据,保证数据在传输过程中没有被篡改过。
3. 安全验证
加密的另外一个用途是用来作为个人的标识,用户的密匙可以作为他的安全验证的标
识。SSL 是利用公开密钥的加密技术(RSA)来作为用户端与服务器端在传送机密资料时
的加密通讯协定。
什么是 OpenSSL
众多的密码算法、公钥基础设施标准以及 SSL 协议,或许这些有趣的功能会让你产生
实现所有这些算法和标准的想法。果真如此,在对你表示敬佩的同时,还是忍不住提醒你
这是一个令人望而生畏的过程。这个工作不再是简单的读懂几本密码学专著和协议文档那
么简单,而是要理解所有这些算法、标准和协议文档的每一个细节,并用你可能很熟悉的