
SSL(Secure Sockets Laye来自r 安全套接层)协议,及其继任燃电如目鸡者TLS(Transport Layer Security传输层安全)协议,是为网络通父千信提供安全及数据完整性的一种安全协议。T360百科LS与SSL在传输层对网络连接进行加密,用于保障网络数据传输安全,利用数据加密技术,确出轮两财胜波保数据在网络传输过程中不会被截取及窃听。SSL协议已成为全球化标准,所有主要的浏览器和WEB服务器程序都支持SSL协议,可通过安装SSL证书激活SSL协议。
SSL 证书就是遵守 SSL协议的服务器数字证书,由受信任的证书颁发机构(CA机构),验证服务器身份后战织知论颁发,部署在服务器上,具有网站身份验证和加密传输双重功能。
- 中文名称 SSL_CTX_check_private_key()
- 函数原型 int SSL_CTX_check_private_key(SSL_CTX *ctx)
简介
S星群构号SL:(Secure Socket Layer,安全套接层协议),SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL通过互相认证、使用数字签名确保来自完整性、使用加密确保机密性,以实现客户端和服务器之间的安全通讯。该协议由两层组成:SSL记录协普台接曾基倒约把斤把型议和SSL握手协议。
Secure Socket Layer是Netscape于1994年开发的,目前有三个版本:S360百科SL2.0、SSL3.0、SSL3.1,最常用的是1995年发布的第3版,已被广泛地用于Web屋烟回胞尼激浏览器与服务器之间的身份认证和加密数据传输。
TLS:(Transport LayerSecurity,传输层安全协议),是IETF(工程任务组)制定的一种新的协议血仍需吃烈需电独随,它建立在SSL 3.0协议规范之上,是SSL 3.0的后续版本,目前述客呢开钢运已安有TLS 1.0,TLS1.际何呼要1,TLS1.2等版本切界强击。
SSL协议已成为全球化标准,所有主要的浏览器和WEB服务器程序都支持SSL协议,可通过安装SSL证轴尔也语历影宜相书激活SSL协议。
主要作世病儿用
SSL协议提供的服务主要有:
1.认证用户和服务器,确保数据发送到正确的客户机和服务器;
积吃搞学空块之探2.加密数据以防止数据中途被窃取;
3.维护数据的完整性,确保数据在传输过程中不被改变。

工作流程
SS来自L协议的工作流程:
服务器认证阶段
1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;
2)服务器根据掌周混化少客户的信息确定是否需要生成新的主密钥,如需要则360百科服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;
3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;
4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息秋理,以此让客户认证服务器。
用笑但显未混果养户认证阶段
在此之前,服务器已经通过了客给出座远德上号应户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回(数字)签名后的提问和其公开密钥,从而向服务器提供认证。
体系结构
SSL协议位于营供教外编TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。S跑SL协议可分为两层:
SSL记录协议(SSL RecordProtocol):建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。
SSL握手协议(SSL HandshakePr参选六溶然范练改otocol):建立在SSL记录协议之上,用于在实始装兵化热度际的数据传输开始前,通讯双方二仍终树拉笔顺季特担功进行身份认证、协商加密算法、交换加密密钥等。
指剂族米编尽根皮机 SSL协议实际上是SSL握手协议、SSL修改密文协议、SSL警告协议和SSL记录协议组成的一个协议族。

定义
SSL记录协议为SSL连接提供两种服务:机密性和报文完整性。
在SSL协议中,所有的传输数据都被封装在记录中。记录是由记录头和记录数据(长度不为0)组成的。所有业应秋的SSL通信都使用SSL妈记录层,记录协议封装上层的握手协议、报警协议、修改密文协议。SSL记录协谁拉倒建对态为价议包括记录头和记录数据格式八鲜查间微的规定。
SSL记录协议定苏并绍程南视美密界介义了要传输数据的格律冲待米仍式,它位于一些可靠的传输协议之上(如TCP),用于各种更高层协议的封装。主要完成分组和组合、压缩和解压缩,以及调场电行坏消息认证和加密等。
主要操作流程

图中的五个操作简单介绍如下:
1)每个上层应用数据被分成214字节或更小的数据块。记录中包含类型、版本号、长度和数据字段。
2)压缩是可选的,并且是无损丝明原缺钢已川跟压缩,压缩后内容长度的增加不能超过1024字节。
3)在压缩数据上计算消息认证MAC。
4)对压缩数据及MAC进行加密。
5)增加SSL记录。

SSL记录协议字段结构主要由内容类型、主要版本、次要版本、压缩长度组成,简介如下:
1)内容类型(8位):封装的高层协议。
2)主要版本(8位):使用的SSL主要版本。对于SSL v3已经定义的内容类型是握手协议、警告协议、改变密码格式协议和应用数据协议。
3)次要版本(8位):使用的SSL次要版本。对于SSLv3.0,值为0。
4)压缩长度(16位):明文数据(如果选用压缩则是压缩数据)以字节为单位的长度。
报警协议
SSL报警协议是用来为对等实体传递SSL的相关警告。如果在通信过程中某一方发现任何异常,就需要给对方发送一条警示消息通告。警示消息有两种:
1)Fatal错误,如传递数据过程中发现错误的MAC,双方就需要立即中断会话,同时消除自己缓冲区相应的会话记录。
2)Warning消息,这种情况,通信双方通常都只是记录日志,而对通信过程不造成任何影响。SSL握手协议可以使得服务器和客户能够相互鉴别对方,协商具体的加密算法和MAC算法以及保密密钥,用来保护在SSL记录中发送的数据。
修改密文协议
为了保障SSL传输过程的安全性,客户端和服务器双方应该每隔一段时间改变加密规范。所以有了SSL修改密文协议。SSL修改密文协议是3个高层的特定协议之一,也是其中最简单的一个。在客服端和服务器完成握手协议之后,它需要向对方发送相关消息(该消息只包含一个值为1的单字节),通知对方随后的数据将用刚刚协商的密码规范算法和关联的密钥处理,并负责协调本方模块按照协商的算法和密钥工作。
握手协议
SSL握手协议被封装在记录协议中,该协议允许服务器与客户机在应用程序传输和接收数据之前互相认证、协商加密算法和密钥。在初次建立SSL连接时,服务器与客户机交换一系列消息。
这些消息交换能够实现如下操作:
认证服务器
允许客户机与服务器选择双方都支持的密码算法
可选择的服务器认证客户
使用公钥加密技术生成共享密钥
建立加密
SSL握手协议报文头包括三个字段:
类型(1字节):该字段指明使用的SSL握手协议报文类型。
长度(3字节):以字节为单位的报文长度。
内容(≥1字节):使用的报文的有关参数。
SSL握手协议的过程

配置https
HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议。
它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS实际上应用了Netscape的完全套接字层=(HTTPS使用端口443,而不是象HTTP那样使用端口80来和TCP/IP进行通信。)SSL使用40 位关键字作为RC4流加密算法,这对于商业信息的加密是合适的。HTTPS和SSL支持使用X.509数字认证,如果需要的话用户可以确认发送者是谁。。
https是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,https的安全基础是SSL,因此加密的详细内容请看SSL。
它是一个URI scheme(抽象标识符体系),句法类同http:体系。用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。这个系统的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于万维网上安全敏感的通讯,例如交易支付方面。
想要支持HTTPS加密通信,必须要申请并安装服务器SSL证书,服务器SSL证书可以从证书颁发机构(CA机构)申请。
安全限制
它的安全保护依赖浏览器的正确实现以及服务器软件、实际加密算法的支持.
一种常见的误解是“银行用户在线使用https:就能充分彻底保障他们的银行卡号不被偷窃。”实际上,与服务器的加密连接中能保护银行卡号的部分,只有用户到服务器之间的连接及服务器自身。并不能绝对确保服务器自己是安全的,这点甚至已被攻击者利用,常见例子是模仿银行域名的钓鱼攻击。少数罕见攻击在网站传输客户数据时发生,攻击者尝试窃听数据于传输中。
商业网站被人们期望迅速尽早引入新的特殊处理程序到金融网关,仅保留传输码(transaction number)。不过他们常常存储银行卡号在同一个数据库里。那些数据库和服务器少数情况有可能被未授权用户攻击和损害。