时间:2023-03-15 15:05:14
序论:写作是一种深度的自我表达。它要求我们深入探索自己的思想和情感,挖掘那些隐藏在内心深处的真相,好投稿为您带来了七篇ssl协议范文,愿它们成为您写作过程中的灵感催化剂,助力您的创作。
SSL(SecureSocketsLayer安全套接层)协议,及其继任者TLS(TransportLayerSecurity传输层安全)协议,是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密,用于保障网络数据传输安全,利用数据加密技术,确保数据在网络传输过程中不会被截取及窃听。SSL协议已成为全球化标准,所有主要的浏览器和WEB服务器程序都支持SSL协议,可通过安装SSL证书激活SSL协议。
SSL证书就是遵守SSL协议的服务器数字证书,由受信任的证书颁发机构(CA机构),验证服务器身份后颁发,部署在服务器上,具有网站身份验证和加密传输双重功能。
(来源:文章屋网 )
SSL及其继任者传输层安全是为网络通信提供安全及数据完整性的一种安全协议。
TLS与SSL在传输层对网络连接进行加密。
解决方法:
1、首先打开浏览器,找到工具,Internet选项。
[关键词] 电子商务SSL浏览器客户端服务器数字证书CA
一、 引言
随着计算机网络技术的飞速发展,电子商务开始蓬勃发展起来,通过Internet进行的网上购物、在线交易、网上银行等业务虽然为人们的工作和生活提供了极大的便利。但是,由于Internet本身具有的开放性、灵活性、共享性等特点,也为信息安全带来了巨大威胁。所以,电子商务的安全问题是事关能否正常开展电子商务的首要问题。
目前,世界上提出了很多加强网上交易安全性的协议,如SSL、SET等。由于SET协议非常复杂,实现比较困难,而且执行效率比较低,所以目前大部分网上交易都是采用SSL协议来实现。当前,网上银行等大型电子商务交易系统一般都采用HTTP和SSL相结合的方式,即在服务器端采用支持SSL的WWW服务器,在客户端采用支持SSL的浏览器,双方共同协作来实现安全的网络通信。
二、SSL协议的介绍
安全套接层协议(Secure Sock Layer Protocol,简称SSL)是在电子商务发展初期发展起来的,最早由Netscape公司设计开发,它是在TCP/IP上实现的一种安全协议,其采用了不对称加密技术。它为C/S(客户端/服务器)通信安全提供面向连接的机制,建立安全通道,通过在安全通道上传输信用卡卡号的方式,可以构建电子商务支付系统。SSL安全通道能使客户端/服务器应用之间的通信不被第三者窃听,并且始终对服务器进行身份认证,还可选择对客户端进行认证。目前,大部分Web浏览器(Netscape Navigator和Microsoft IE)和Web服务器都已内置了SSL协议,SSL已成为在电子商务中应用最广泛的安全协议之一。
SSL协议要求建立在可靠的传输层协议(例如:TCP)之上。SSL协议的优势在于它是与应用层协议独立无关的。高层的应用层协议(例如:HTTP,FTP,TELNET)能透明地建立于SSL协议之上。SSL协议在应用层协议通信之前就已经完成了加密算法、通信密钥的协商以及服务器认证工作。应用层协议所传送的数据都会被加密,从而保证通信的机密性。
SSL协议主要由SSL记录协议和SSL握手协议两部分组成。
1.SSL记录协议。SSL记录协议位于SSL协议的底层,用于封装上层的协议。其规定了会话中传递的所有数据项的基本格式,提供压缩数据、生成数据的完整性校验值(MAC)、对数据进行加密、标示数据长度、填充、流水作业号,并支持不同的加解密和杂凑算法。
2.SSL握手协议。SSL握手协议使得服务器和客户端能够相互认证对方的身份、传送所需的数字证书、建立所需的会话密钥。SSL握手协议是较SSL记录协议更高层的协议,必须先执行握手协议后,才可能实现SSL记录协议中的加密和完整性校验。SSL协议通过在应用程序进行数据交换前交换SSL初始握手信息来实现有关安全特性的建立。SSL握手过程一般分为4个阶段:
(1)建立安全能力:该阶段是用来初始化逻辑连接,并建立与之相关的安全能力。交换在客户端发起,客户端发送Client_hello消息,并包含以下数据(SSL版本、初始随机参数、会话ID、密码组参数、压缩方法),在发送了Client_hello消息之后,客户端将等待包含与Client_hello消息参数一样的Server_hello消息。
(2)服务器身份认证和密码交换:服务器发送自己的数字证书给客户端,该证书带有证书授权中心(CA)的数字签名和服务器的公钥以及其数字签名,可以证明自己的合法性,然后开始密钥交换。如果服务器要求认证客户端,则要请求客户端数字证书。该阶段以Hello消息段结束,之后服务器等待客户端的响应。
(3)客户端认证和密钥交换:在这一阶段,客户端认证服务器数字证书的合法性。如果服务器要求客户端的数字证书,客户端应提供其数字证书,供服务器认证客户端的合法性。此外,还要发送交换密钥。
(4)完成:该阶段完成安全通道的建立,该消息并不被认为是握手协议的一部分,而是改变密码规格协议发送的。至此,客户端和服务器完成了握手协议,可以开始交换应用层的数据了。
三、SSL协议在服务器上的应用
实现SSL协议,首先要在服务器上加装SSL,其步骤为先在“Internet服务管理器”的“识别码管理器”上填入网站的相关信息,以它为内容产生一组公钥,识别码管理器还会将以上信息都写入文件,接下来就可以用这份数据向证书授权中心(Certification Authority)申请SSL服务器数字证书了。CA是一个公开而且公正的组织单位,其专门负责受理数字证书的核准,发放,注销等管理工作(例如:VeriSign)。不同的CA有不同的申请方法。当申请好数字证书后,选择识别码管理器下的安装识别码认证,输人密码和数字证书文件的位置,就把数字证书安装好了。然后就是指定哪些页面需要用到SSL功能,打开Internet服务管理器,单击所要设置的页面目录后按右键,单击“属性”,再选择“目录安全设定”下“安全通信”,按下编辑按键后在“当存取这个资源必须使用安全通道”选项上打上勾,表示当客户端存取这个目录时就会激活SSL功能。
服务器通过SSL服务器数字证书的两个必要功能来建立电子商务信任体系。SSL服务器数字证书的两个必要功能是:
1.SSL服务器认证:服务器数字证书允许用户确认Web服务器的身份。Web浏览器自动检查服务器数字证书和公共ID是有效的并已经被CA(如:VeriSign)所,包括在可信任的内嵌于浏览器中的CA列表。SSL服务器认证对安全的电子商务交易是至关重要的。例如,用户通过网络发送信用卡号并想校验接收服务器的身份。
2.SSL加密:SSL服务器数字证书建立了一个安全通道,在用户浏览器和Web服务器之间传送的所有信息由发送软件加密、接收软件解密,从而保护私有信息不被第三方所窃取。
四、SSL协议在客户端的应用
1.客户连接一个站点和访问一个安全的URL,即受服务器ID所保护的网页。
2.客户的浏览器自动向服务器发送浏览器的SSL版本号、密码设置、产生的随机数和服务器需要和客户用SSL通信的其他信息。
3.服务器做出反应,自动向浏览器发送站点的数字证书,包括服务器的SSL版本号、密码设置等等。
4.客户的浏览器检查包含在服务器数字证书中的信息并校验。
(1)服务器数字证书是否有效,日期是否有效。
(2)服务器数字证书的CA是否被可信任的CA所签名,可信任的CA证书已嵌入浏览器中。
(3)嵌入浏览器中的CA的公钥是否使者的数字签名有效。
(4)服务器数字证书所指定的域名与服务器的真实域名是否匹配。
如果服务器不能通过认证,那么用户就会接收到警告信息,从而不能建立SSL安全通道。
5.如果服务器通过认证,客户浏览器就会产生一个唯一的“会话密钥”来加密所有与服务器的通信内容。
6.客户的浏览器用服务器数字证书中的公钥加密“会话密钥”发送给服务器。这样就可以确保只有服务器才能读出“会话密钥”。
7.服务器用自己的私钥解密“会话密钥”。
8.浏览器向服务器发送信息,表明以后从客户端发送的信息都将用“会话密钥”加密。
9.服务器向浏览器发送信息,表明以后从服务器发送的信息也将用“会话密钥”加密。
10.这样,在客户端与服务器就建立了一个SSL安全通道。之后,所有通信内容就在SSL安全通道内用“会话密钥”来加密和解密信息。
11.一旦本次会话结束,“会话密钥”也就随之失效。
上述过程只要花费几秒钟的时间,且不需要客户的干涉。
另外,用户还可以通过以下情况来确认是否已经和正在访问的服务器建立了SSL安全通道:
> 在浏览器窗口的URL中以HTTPS://开头
> 在Netscape中,在窗口左下角的挂锁是关闭的,而不是打开的。
> 在IE中,挂锁出现在窗口状态条的右下角。
五、SSL在现实中的应用
以中国工商银行“个人网上银行”为例。首先访问工商银行首页(省略/)。单击“个人网上银行登录”图标。然后填入必要的信息,之后单击同意按钮就可以打开“个人网上银行”。
首次使用时,会弹出一个要求安装SSL数字证书的对话框,单击“是”按钮即可。在安装好SSL数字证书之后,在IE浏览器的右下方就会出现一把闭合的黄色小锁,其代表浏览器正在使用SSL加密传输的资料,从而避免敏感信息在传输的过程中被窃取或者篡改。用户可以通过双击这把小锁来查看服务器SSL数字证书的详细内容。
值得一提的是个别浏览器只支持40位以下的加密算法。这对于传输重要信息是远远不够的。在IE浏览器中,只要将鼠标指向浏览器右下方的黄色小锁,就可以看到SSL加密的位数。假如不是128位的话,可以通过单击浏览器“帮助”菜单下的“关于Internet Explorer”。如果显示的密钥长度小于128位,则可以单击“工具”菜单上的“Windows Update”,然后依据提示将浏览器更新为最新版本,使其支持128位的SSL加密算法。
六、SSL的功能及SSL的局限性
1.信息加密。SSL所采用的加密技术既有对称加密技术,如DES;也有不对称加密技术,如RSA。具体来说,客户端与服务器在进行数据交换之前,先交换SSL握手信息,在SSL握手信息中采用了各种加密技术对其加密,以保证其机密性和数据的完整性,并且用数字证书进行认证。
2.信息完整。SSL提供了信息完整服务,以建立客户端与服务器之间的安全通道,使所有经过SSL协议处理的业务能全部准确无误地到达其目的地。
3.身份认证。客户端和服务器都有各自的识别号,这些识别号由公开密钥进行编号。为了验证用户是否合法,SSL协议要求在握手交换数据前进行认证,以此来确保用户的合法性。 SSL坚持对服务器进行身份认证,还可选择性的对客户端进行认证。
然而,SSL当初并不是为支持电子商务而设计的,所以其在电子商务系统的应用中还存在很多弊端。它只是简单地在双方之间建立了一条安全通道,在涉及多方的电子交易中,只能提供交易中客户端与服务器之间的双方认证。而电子商务往往是用户、网站、银行三方协作完成,SSL协议并不能协调各方之间的安全传输和信任关系;另外还有购物时用户要输入通信地址,这样将有可能使得用户收到大量的垃圾信件。 此外,SSL协议不能防止心术不正的商家的欺诈,因为该商家掌握了客户的信用卡号。商家欺诈是信用卡业发展所面临的最严重的问题之一。但是,SSL除了传输过程以外不能提供任何安全保证,它并不能使客户确信此公司接受信用卡支付是得到授权的。再者,SSL协议的最大不足之处在于,其不对应用层的消息进行数字签名,因此SSL不能提供交易的不可否认性。
关键词:IPSec VPN;AH;ESP;SSL VPN;IKE
中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)24-6652-03
Security Research of VPN Based on IPSec
GUO Xu-zhan
(Computer and Information Technology College, Xinyang Normal University, Xinyang 464000, China)
Abstract: SSL VPN and IPSec VPN security technology principles are introducedin this paper. Andcarried out a detailedstudy and research on the encryption, authentication, key management of IPSec, research the security of IPSec VPN.
Key words: IPSec VPN; AH; ESP; SSL VPN; IKE
随着经济的不断发展,企业的信息化进程也在逐渐加快,为了保证企业机密信息在远距离传输过程中的安全,可以采用专线式广域网络传输数据,但是这样的方案耗资巨大,不符合成本-效益原理。因此VPN (虚拟专用网络)技术应运而生。VPN是以Internet为平台,建立起在安全技术保护下的虚拟专用网络,并且此虚拟网络提供与专用网络相同的功能、安全性、易于管理等特点,是原有专用网络的替代方案,更为符合成本-效益原理。通过VPN可以帮助远程用户、公司分支机构、商业伙伴及供应商等外部用户透过公用网与公司的内部网建立可信的安全连接,并保证数据的安全传输。将企业专用网上的数据加密封装后,透过虚拟专用网络进行传输,可以防止敏感数据被窃。VPN技术发展非常迅速,目前组建技术多种多样,比较常见的有SSL、IPSec、L2TP等。只有在充分了解这些协议的基础上,才能根据需求组建不同保护功能地VPN。
1 SSL安全协议
SSL[1-2]协议工作在传输层,它分为两层:SSL握手协议和SSL记录协议。使用SSL协议组建的VPN称为SSL VPN。
1.1 SSL握手协议
SSL握手协议[3]用于在通信双方建立安全传输通道,可以实现以下功能:
1) 在客户端验证服务器,SSL协议采用公钥方式进行身份认证;
2) 在服务器端验证客户(可选);
3) 客户端和服务器之间协商双方都支持的加密算法和压缩算法,可选用的加密算法包括:IDEA、RC4、DES、3DES、RSA、DSS、MD5等;
4) 产生对称加密算法的会话密钥;
5) 建立加密SSL连接。
1.2 SSL记录协议
SSL记录协议[4]从高层接收到数据后要经过分段、压缩和加密处理,再发送出去。在SSL协议中,所有的传输数据都被封装在记录中,SSL记录协议规定了记录头和记录数据的格式。每个SSL记录包含以下信息:1) 内容类型:指SSL的高层协议;2) 协议版本号:指所用的SSL协议版本号;3) 长度:指记录数据的长度,最大长度为16383字节;4) 数据有效载荷:将数据进行压缩和加密处理后的结果;5)MAC:MAC在有效数据被加密之前计算出来并放入SSL记录中,用于进行数据完整性检查。
SSL VPN 最大的好处就是不需要安装客户端程序,由于只通过 443 端口作为唯一的传输通道,因此管理员不需要在防火墙上作任何修改,从而最大限度的减少了分发和管理客户端软件的麻烦,降低了系统部署成本和 IT 部门日常性的管理支持工作费用。SSL VPN 能保证在任何地方访问基于 TCP 应用程序的安全,包括 Web 和 C/S 应用,传统的应用程序,网络文件传输和共享,终端服务,电子邮件服务以及 PDA 等手持无线设备。
然而SSL VPN也有其缺点:它不适用做点对点的 VPN,后者通常是使用 IPsec 技术,SSL VPN 需要开放网络防火墙中的 HTTPS 连接端口,以使 SSL VPN 网关流量通过,SSL VPN 通常需要其他安全配置,例如用第三方技术验证“非信任”设备的安全性(包括其他信息站或家用计算机)。
2 IPsec 协议与隧道技术
2.1 隧道技术简介
隧道[5]是网络通信常用的一种模式,在公用网络中,通信两端之间建立的虚拟专用网络,就是一种隧道技术的运用。隧道技术包括封装、传输及解除封装等几个方面。目前常见的隧道技术有IPsec 隧道模式、IPX 隧 道、点对点隧道协议PPTP和第二层隧道协议L2TP等。其中效果最好,应用最广泛的就是IPsec。
隧道由用户终端及服务器端构成,两端必须使用相同的隧道协议(tunnel protocol)。隧道传输协议用来传送数据,隧道维护协议用于管理隧道。隧道工作于OSI 参考模型的第二层或第三层,第二层对应到数据链路层,以帧为单元交换信息。PPTP、 L2TP都是第二层的隧道协议,数据被封装在点对点通讯协议 (PPP)帧中,再以隧道协议封装,继而通过网络传送。第二层隧道协议可以实现如下功能:用户验证、动态地址指派、数据压缩、数据加密等。第三层对应到网络层,以信息分组为信息交换单位,包括IPX及 IPsec 隧道模式,IP 信息分组被处理(如压缩、加密)后,封装上额外的 IP标头,然后再通过 IP网络传送。
2.2 IPSec的基本概念
IPSec 协议定义了通过公共网络时实现安全通信的规范,通过在 IP 数据包中增加字段来保证 IP 数据包的完整性、私有性和真实性以及采用的加密方法。IPsec协议集合了多种安全技术,从而能确保建立一个安全的通信隧道。
IPSec 提供以下几个方面的网络安全服务:
(1) 私有性:IPSec 通过加密数据包,保证数据的安全性。
(2) 完整性:IPSec 能在目的地验证数据包,保证数据包没有被替换。
(3) 真实性:IPSec 端验证所有加密数据包,保证加密正确。
(4) 反重复:IPSec 通过序列号防止数据包被捕捉。
IPSec协议实现过程如图1所示。
IPsec实施方案主要包括以下几个组件:
1) IPSec 基本协议:包括ESP 和AH,用于处理数据包头,通过与SPD和SADB交互,决定为数据包提供的安全措施。
2) SPD:SPD决定了对数据包是否采用安全措施以及外来数据包的安全措施是否符合策略配置。
3) SADB:SADB 为数据包的出入处理维持一个活动列表。以确保数据包的安全受到IPSec的保障。SADB由各个SA 聚集构成,通常由IKE 等自动密钥管理系统来进行。
4) IKE: IKE 代表IPSec 对SA 进行协商,并对SADB 数据库进行填充。
5) 策略和SA 管理:对策略和SA 进行管理。
2.3 IPSec 组件功能
IPsec 安全体系结构中包括了三个最基本的协议:AH协议,为 IP 包提供信息源验证和完整性保证;ESP协议,提供加密保证;密钥管理协议ISAKMP,提供双方交流时的共享安全信息。ESP和 AH 协议具备相关的一系列支持文件,规定了加密和认证的算法。信息分组通过这两种转换协议得以加密保护。其实现方式分为隧道模式(Tunnel Mode)和传输模式(Transport Mode)两 种 。IPSec的组件构成如图2所示。
2.3.1 AH 与 ESP
确认性标头AH [6](Authentication Header)用来保证IP包的信息的完整性和准确性。AH 既可以单独使用,也可在隧道模式下和 ESP联用。AH支持传输模式(Transport Mode)和隧道模式(Tunnel Mode)。AH利用在 Header 和信息分组之间添加验证链接,来验证该信息分组的发送用户身份。AH协议不加密所保护的数据包,它只为IP数据流提供高强度的密码认证,以确保被修改的数据包可以被检查出来。为此AH必须包含对 HMAC的支持(Keyed-Hashing for Message Authentication)。
植入安全载荷ESP[7] (Encapsulating Security Payload)主要用来处理对 IP 信息分组的加密,同时也可进行认证。为了保证通信中的互操作性, ESP规范规定要强制实现56位的DES 加密算法,同时ESP与具体的加密算法是相互独立的,几乎可以支持各种对称密钥加密算法,例如DES,Triple DES,RC5 等。ESP在隧道模式和传输模式中的作用是不同的,在隧道模式中,整个IP数据包都被ESP封装和加密。真正的IP源地址和目的地址被隐藏为Internet发送的普通数据。而在传输模式中,只有更高层协议帧(TCP、UDP、ICMP等)被放到加密后的IP数据报的ESP负载部分,在这种模式中,源和目的IP地址以及所有的IP包头域都是不加密发送的。
ESP 协议数据单元格式由三部分组成:头部、加密数据、可选尾部。头部有两个域:安全策略索引(SPI)和序列号SN (Sequence Number)。使用 ESP 进行安全通信之前,通信双方需要先协商加密策略,包括使用的算法、密钥以及密钥的有效期等。安全策略索引用来标识发送方的加密策略,接收方可采用相应策略对收到的 IP 信息分组处理。“序列号”用来区分不同信息分组。加密数据部分除了包含原 IP 信息分组的有效负载, 填充域 (用来保证加密数据部分满足块加密的长度要求),其余部分在传输时都是加密过的。ESP结构如图3所示。
2.3.2 IKE
自动密钥交换IKE[8](IPsec Key Exchange)用于动态验证IPSec通信双方的身份、协商安全服务以及生成安全密钥。有了IKE ,密钥在使用一段时间后可以作废,并重新生成密钥。这样,限制了每个密钥所保护的数据量,增强了IPSec 的安全性。IKE协商的参数同协议本身是分隔开的,在IPsec协议中IKE协商的参数被归于一个单独的IKE参数文档内。
IKE 定义了两个阶段的协议:第一阶段生成 IKE 自身的加密和验证标头,第二阶段 IKE 快速生成和刷新IPsec 的加密和验证标头。 IPsec 和 IKE 通过接口层进行交互,IPsec 通过接口层向 IKE 发出生成或刷新 IPsec 的加密和验证标头的请求,IKE通过接口层向 IPsec 传送加密和验证标头。
2.3.3 密钥管理协议 ISAKMP
IPSec采用ISAKMP[9](Internet Security Association and Key Management Protocol)作为管理协议的框架。ISAKMP 是一个应用层协议,它不仅可管理 IPSec协议所辖的安全联结和密钥,而且也适应于其他网络安全协议。ISAKMP 协议定义了通信双方的认证过程,安全联结的建立、修改和删除过程及相应的报文格式。一次 ISAKMP 会话分为两个阶段:
第一阶段,会话双方协商建立一个ISAKMP 的安全联结,用来保护它们自身的通信。会话双方通过基于公钥加密算法的数字签名完成相互认证。具体的认证步骤由相应的认证协议来规定,ISAKMP定义了一个认证时应遵循的报文格式。
第二阶段,双方协商建立其他安全联结。IPSec 使用因特网密钥交换协议 IKE(Internet Key Exchange)来完成会话密钥的生成。IKE 规定了自动验证 IPSec 对等实体、协商安全服务和产生共享密钥的标准。IKE 采用 ISAKMP 报文格式,并综合了 Oakley 和 SKEME 密钥交换协议的优点,使用 Diffie-Hellman 算法来生成会话密钥。
3 IPSec 安全特点
IPsec 产生于 IPv6 的制定过程中,用于提供 IP 层的安全性。由于所有支持TCP/IP 协议的主机进行通信时,都要经过 IP 层的处理,所以提供了 IP 层的安全性就相当于为整个网络提供了安全通信的基础。在IPSec 协议中,一旦IPSec 通道建立,所有在网络层之上的协议在通信双方都经过加密,如TCP、UDP、SNMP、HTTP、POP 等,而不管这些协议构建时所采用的安全和加密方法如何。IPsec 协议弥补了 IP 层的安全缺陷,定义了针对 IP 分组(信息分组)的加密标头和验证标头,以及如何添加和拆分这些标头。同时IPSec支持各种对称密钥加密算法,这就使得数据传输的加密保护灵活多样,提高了数据的安全性。
4 结束语
通过以上分析,可以看出IPSec因其安全性和灵活性,已经成为构建VPN的首选。IPSec能对IP数据包的安全提供足够的保护,大大加强了Internet传输信息的安全性,为VPN的建立提供了坚实的基础,同时大大降低了网络费用。未来的VPN技术将在IPSec的基础上得到更大的发展。
参考文献:
[1] 李塑京.SSL的原理和应用[J].微型机与应用,2000,11:34-35.
[2] 冯登国.计算机通信网络安全[M].北京:清华大学出版社,2001.
[3] 金仑,谢俊元.基于SSL协议的可信应用及实现[J].计算机应用研究,2006,(1):103-105.
[4] 马英杰,肖丽萍,何文才,李彦兵.SSL协议分析及其在Web服务应用中的改进[J].微处理机,2005,12:31-33.
[5] 刘铁民,孙伟.VPN网络隧道技术的研究[J].电信工程技术与标准化,2003(12):55-57.
[6] S. Kent, R. Atkinson. IP Authentication Header. RFC2402 IETF[S].1998,11:1-68.
[7] S. Kent, R. Atkinson, IP Encapsulating Security Payload. RFC2406 IETF[S].1998,11:1-57.
随着Internet的普及和应用的扩展,越来越多的政府、企业希望在网上开展工作。然而Internet原先是建立在可信的基础上,从原理上不能保证通信的安全性。如何既能充分利用Internet的便利资源又可以保障通信的安全,成为人们最为关注的问题,虚拟专用网络(VPN)也就应运而生。
VPN是一种充分利用隧道、认证、加密等技术手段,使用户可以利用现有的Internet公共网络,安全地远程访问内部网络资源的网络系统。同传统的私有网络相比,VPN技术大大降低了成本,提高了灵活性。正是由于其具有的优点,近年来VPN已成为网络安全领域的一个热点。
作为一种加密协议,IPSec为数据通过公用网络(如因特网)在网络层进行传输时提供安全保障。通信双方要建立IPSec通道,首先要采用一定的方式建立通信连接。
因为IPSec协议支持几种操作模式,所以通信双方先要确定所要采用的安全策略和使用模式,这包括如加密运算法则和身份验证方法类型等。一旦IPSec通道建立,则通信双方的所有通信协议(如TCP、UDP、HTTP等)都要经过加密。IPSec VPN工作在OSI网络模型的网络层,从而使用户访问内部资源时,就像采用专线方式与公司网络直接物理连接一样。
基于SSL的VPN
SSL是网景(Netscape)公司提出的基于Web应用的安全协议。SSL协议指定了一种在应用程序协议(如HTTP TELENET、SMTP和FTP等)和TCP/IP协议之间提供数据安全性分层的机制,它为TCP/IP连接提供数据加密服务器认证、消息完整性以及可选的客户机认证。
SSL提供的加密和身份验证的安全方法与IPSec非常类似。但SSL协议只对通信双方所进行的应用通道进行加密,而不是对从一个主机到另一个主机的整个通道进行加密。
SSL VPN的技术特点面对IPSec VPN在市场上的强势地位,SSL VPN凭借其技术优势越来越受到人们的关注,应用正逐渐呈上升趋势。SSL安全通道则可以在客户到所访问的资源之间建立。确保端到端的真正安全。无论在内部网络还是在因特网上。数据都不是透明的。如图1所示。
图1 SSL VPN支持端到端的安全
SSL与IPSec安全协议一样,也可提供加密和身份验证安全方法。
但是不管怎样,SSL协议只对通信双方所进行的应用通道进行加密,而不是对从一个主机到另一主机的整个通道进行加密。因为绝大多数客户应用,是不必加密从一个系统到另一个系统的整个通道的,仅加密应用数据这一方案更显恰当。
“加密”和“安全”协议都是属于传输协议,它们是用来确保重要数据的安全传输。加密是任何安全协议的核心技术,它相对采用明文密码加密或者不经过加密数据有三方面的优势:
数据的私密性:在传输过程中可以使数据保持隐藏,不被非法查看;
数据的真实性和完整性: 因为在有关数字加密、安全协议有关的技术可以确保数据在传输过程中不被修改或者损坏;
连接的可靠性:数据加密的另一个数学特征是可以证明事件的发生。
在使用SSL协议的通信中,每一个应用是一个安全的独立体,而不像IPSec那样,操作与应用脱节。
要使用SSL协议进行VPN通信,则所进行的远程通信应用必须能识别SSL技术,不过现在常见的应用一般都能识别SSL技术的,如IE、Netscape浏览器,OutLook、Eudora邮件应用等。
改进SSL VPN的新技术
SSL的一个运算法则是RSA,用来在客户端和服务器端传递密钥。
SSL加速技术
举例来说.一个Modem拨号的Web服务器,大约每秒可以接受75个新的SSL连接。每一个新的连接RSA都必须完成翻译和检验工作。如果系统每秒所有接受超过75个,CPU的利用率就会超过可接受极限而停止对新的网络连接请求进行响应。
为了提高服务器的接受能力,SSL VPN可以采用SSL加速器技术。一个SSL加速器就像一个核心处理器。用来完成RSA的解密功能以及密码交换和生成的过程。
其大致可分为三种类型:其一,使用协处理器,即使用专门的处理器来处理网络相关的操作,任何加密报文被收到后,直接交给协处理器处理,从而加速整个过程;其二,采用内置的安全处理器大幅度加速处理过程,这种方法速度很快,但是安全处理器的功能和网络处理器有重复;其三,是在网络处理器中直接集成加密等安全功能,这种方法可以最大限度地降低成本,并获得线性加速性能。
对于电子商务而言,SSL加速器可以有效提高交易的速度,所有的交易信息都是以符合安全机制的加密方式进行传递。通过加速后,一部智能完成接受75个SSL连接的服务器,就可打到接受每秒800个以上连接的性能。
SSL技术
SSL分为客户端和服务器端两种,对于SSL VPN而言,起作用的是服务器端的SSL。SSL客户端与Web服务器建立连接时,实际上先与SSL建立连接,SSL在客户端和Web服务器之间提供信息转发服务,同时进行加解密操作。
在公共网络上,SSL客户端与SSL之间建立安全的SSL连接,传递密文信息,在私有网络上,SSL与Web服务器可以建立SSL连接,也可以直接传递明文信息,这取决于用户对安全性的要求。对于SSL客户端来讲,SSL是SSL服务器,对于Web服务器来讲,SSL又是客户端。
SSL技术在通信中可提高VPN服务器通信的安全性能和身份验证能力,主要表现在以下两个方面:
提高安全性能 从原理上来说,SSL在外部访问者和内部服务器之间提供了一个缓冲地带,远程访问的连接实际上只能到达SSL VPN网关,从而实现了保护内部网络资源的目的。通过对连接请求的统计信息进行分析,制定并执行适当的安全策略,SSL在公共的因特网和私有的局域网之间建立了一道安全岗哨。SSL还可以通过查询外部认证服务器或者策略服务器,或者通过用户提供的证书,赋予不同的用户以不同的访问权限。
增加身份验证强度 SSL协议自身的验证方法包括在服务器端和客户端进行的密码身份验证,但这种安全基于一个前提:客户端的私钥密码被安全地保管。如果这个密钥遭到破坏或者丢失,客户端就不可能再得到信任。
许多Web服务器自身并不支持比SSL更加强大的身份验证方法,这就需要SSL提供更加强大的身份验证,如Radius第三方认证,USB key加PIN码的双因素认证等。
SSL虚拟通道技术 虚拟通道技术是利用对用户透明的SSL VPN客户端,把远程客户端和内部网络连接成一个虚拟网络的技术。在这个虚拟通道上,可以让受信任的用户登录到整个内部网络,支持任意基于IP的应用,如图2所示。
虚拟网卡驱动程序对于操作系统而言就像一块真正的物理网卡,操作系统可以对其进行所有真正物理网卡可以进行的控制,如收发数据包,禁用、启用、挂起、查询状态和绑定TCP/IP、IPX协议等。将虚拟网卡技术与SSL加密技术结合起来,建立SSL虚拟通道,用户可以通过操作系统在该通道上正常使用HTTP、FTP、Telnet等Internet服务和网络邻居等局域网应用。
图2 虚拟通道技术结构示意图
客户端可做成Applet或者ActiveX的形式,当用户通过认证后,自动从VPN网关下载,在整个安装和配置过程中,不需要用户干预。客户端安装成功之后,用户点击建立虚拟通道即可,无需输入任何配置信息。
简便易行的SSL协议
安全套接层SSL协议是一种对计算机之间整个会话进行加密的协议,最初是由Netscape推出的一种安全通信协议,它通过密钥技术能够为信用卡和个人信息提供较强的安全防护。在SSL协议中采用了公开密钥和私有密钥两种加密方式。Web信息通过协议传输时,先在传送端被加密,然后在接收端被解密,从而为机器之间提供安全连接。
SSL协议是两层协议,建立在TCP传输控制协议之上、应用层之下,并且与上层应用协议无关,可为应用层协议如HTTP、FTP、SMTP等提供安全传输,通过将HTTP与SSL相结合,Web服务器就可实现客户浏览器与服务器间的安全通信。
通过用户和服务器的合法性认证、加密数据、保护数据完整性三个方面的服务,SSL协议为电子商务连接提供这样的交易流程:当顾客想从Web站点购买某个产品时,顾客和Web站点都要进行认证。顾客通常是以提供名字和密码的方式来认证其本人;Web站点通过交换一块签名数据和一个有效的X.509证书来认证它自己。顾客通过浏览器验证该证书并用所附的公用密钥验证签名数据,一旦双方都认证了,交易就可以开始了。
简便易行是SSL协议的最大优点,但与此同时其缺点也是显而易见的。首先,在交易过程中,客户的信息先到达商家那里,这就导致客户资料安全性无法保证;其次,SSL只能保证资料传递过程的安全性,而传递过程是否有人截取则无法保证;再次,由于SSL协议的数据安全性是建立在RSA等算法上,因此其系统安全性较差。
除这些缺点外,由于SSL协议不对应用层的消息进行数字签名,因此不能提供交易的不可否认性,这就造成了SSL协议在电子银行应用中的最大不足。
安全可靠的SET协议
安全电子交易SET协议是1997年由美国Visa和MasterCard两大信用卡组织提出、应用于Internet上、以信用卡为基础的电子支付系统协议。它采用公钥密码体制和X.509数字证书标准,主要应用于B to C模式中保障支付信息的安全性。
SET协议主要是为了解决用户、商家和银行之间通过信用卡支付的交易而设计的,以保证支付信息的机密、支付过程的完整、商户及持卡人的合法身份以及可操作性。可以说,SET协议是PKI框架下的一个典型实现,其核心技术主要有公开密钥加密、数字签名、电子信封、电子安全证书等。通过这些手段,SET协议在电子交易环节上为用户提供更大的信任度、更完整的交易信息、更高的安全性和更少受欺诈的可能性。
由于SET提供了消费者、商家和银行之间的认证,确保了交易数据的安全性、完整可靠性和交易的不可否认性,特别是保证不将消费者银行卡号暴露给商家等优点,因此它成为目前公认的信用卡/借记卡的网上交易的国际安全标准。
在整个交易过程中,数字认证(CA)扮演了系统中很重要的角色。SET协议重点就在于利用CA实现交易安全及隐秘性,数字证书为其核心,它提供了简单的方法来确保进行电子交易的人们能够互相信任。在交易中,信用卡组织提供数字证书给发卡银行,然后发卡行再提供证书给持卡人;同时,信用卡组织也提供数字证书给收单银行,然后收单银行再将证书发给特约商店。在进行交易的时候,持卡人和特约商店两边利用符合SET协议规格的软件,在资料交换前分别确认双方的身份,也就是检查由授权的第三者所发给的证书。
在整个交易过程中,SET协议的安全保障主要来自于:将所有报文文本用非对称的方式加密;增加两类保密键(公钥和单钥)的字长;采用联机动态的授权和认证检查,以确保交易过程的安全可靠性。
安全可靠是SET协议最大的优点,但在实际应用中,SET协议依然存在以下不足:
1.协议没有说明收单银行给商家付款前,是否必须收到客户的货物接受证书。一旦客户对货物的质量标准提出疑义,而收单银行已把货款付给了商家,谁承担责任将无法定义。
2.协议没有担保“非拒绝行为”,这意味着在线商店没有办法证明订购是不是由签署证书的客户发出的。
3.SET技术规范没有提及在事务处理完成后如何安全地保存或销毁此类数据;
4.利用SET协议实施电子支付,交易过程复杂,使用成本高。
两种协议比较
SET是一个多方的消息报文协议,它定义了银行、商家、持卡人之间必需的报文规范,而SSL只是简单地在两方之间建立了一条安全连接。SSL是面向连接的,而SET允许各方之间的报文交换不是实时的。SET报文能够在银行内部网络或者其他网络上传输,而基于SSL协议之上的支付卡系统只能与Web浏览器捆绑在一起。两者间的差别主要表现在以下几个方面。
用户接口不同
在应用中,SSL协议已被浏览器与Web服务器内置,无须安装专门软件,用户通过网络就可直接应用;而SET协议中客户端须安装专门的电子钱包类软件,并且在商家服务器和银行网络上也须安装相应的软件,不同银行间系统间的兼容性尚不够完善。
处理速度不同
SET协议非常复杂、庞大,处理速度慢。一个典型的SET交易过程须验证电子证书9次,验证数字签名6次,传递证书7次,进行5次签名,4次对称加密和4次非对称加密,整个交易过程可能需花费1.5~2min;而SSL协议则简单得多,处理速度比SET协议快。
认证要求各异
早期的SSL协议并没有提供身份认证机制,虽然在SSL 3.0中可以通过数字签名和数字证书实现浏览器和Web服务器之间的身份验证,但仍不能实现多方认证,而且在SSL协议中商家服务器的认证是必需的,客户端的认证则是可选的。相比之下,SET协议的认证要求较高,所有参与SET交易的成员都必须申请数字证书。SET协议还解决了客户与银行、客户与商家、商家与银行之间的多方认证问题。
安全性能差别大
安全性是网上交易中最关键的问题。SET协议由于采用了公钥加密、信息摘要和数字签名,可以确保信息的保密性、可鉴别性、完整性和不可否认性,且SET协议采用了双重签名来保证各参与方信息的相互隔离,使商家只能看到持卡人的订购数据,而银行只能取得持卡人的信用卡信息。
SSL协议虽也采用了公钥加密、信息摘要和MAC检测,可以提供保密性、完整性和一定程度的身份鉴别功能,但缺乏一套完整的认证体系,不能提供完备的防抵赖功能。因此,SET的安全性远比SSL高。
协议层次和功能各异
SSL属于传输层的安全技术规范,不具备电子商务的商务性、协调性和集成。而SET协议位于应用层,不仅规范了整个商务活动的流程,而且制定了严格的加密和认证标准,具备商务性、协调性和集成。
相比之下,SET协议从技术上和流程上都要相对优于SSL协议,功能上也更强,但这并不代表SET协议就会超过SSL协议的应用。
因为虽然SET通过制定标准和采用各种技术手段,解决了一直困扰电子商务发展的安全问题,但是SET协议要求在银行网络、商家服务器、顾客的PC机上安装相应的软件;SET协议要求必须向各方发放证书,使得应用SET协议要比SSL协议昂贵得多。这些都成了大面积推广使用SET协议的障碍。
【关键词】电子支付;密码技术;安全体系;数字证书
随着金融业务以及金融支付系统的电子化不断发展,为金融交易提了更为灵活简便的交易方式。电子支付系统正好可以完成电子商务交易过程。截止到目前,几乎每一种传统支付机制都己开发出相应的互联网版本,如电子现金、电子支票;IT技术公司也开发出多种完全基于互联网的创新支付机制,并在全球范围内己经对传统金融支付系统发起了挑战。
1.电子支付安全现状分析
随着互联网的快速发展,电子支付已成为网络交易中最常用的方式,但也存在信息泄露等安全问题。如:信息泄漏。在交易过程中,消费者是弱势群体。商家可以选择支付方式,而消费者在填完一大串信息后不知道这些信息将流向何方,很难杜绝信息的泄漏。再者电子支付业务大多通过网络进行,没有了以往的签字、盖章及纸质凭证。因此,对于各种交易信息可以随意修改,监管部门无法看到真实的账务情况,这是电子支付签字的安全隐患。
2.电子支付安全协议
Internet中的七层网络模型都有各自对应的协议,其中对话层的SSL(安全套接层)协议和应用层的SET(安全电子交易)协议与电子商务有着最密切的关系。
2.1 SSL安全协议
通常情况下,中间的计算机不会监听在源-宿之间传递的信息,但有时会监听信用卡以及网上银行的交易信息,很可能会泄露个人隐私,而且这些隐私信息很可能被一些人获取并更改。如何保证信息在传递过程中的安全问题,既能保密又能鉴别彼此身份,可以通过SSL协议来实现。以下为实现过程:服务器接受来自浏览器的SSL版本号、与Session有关的数据、加密参数以及其他信息;浏览器接收来自服务器的证书、浏览器SSL版本号、与Session有关的数据、加密参数以及其他信息;若服务器证书经客户端检查失败,则SSL连接无法建立。如果检查成功,则可以继续;用服务器公钥对浏览器生成的pre-master secret进行加密,并发送到服务器;假如需要客户身份鉴别,客户端需签名后与证书一同发到服务器;对于客户身份的鉴别,如果通过检查证明签署客户证书的CA可信,则服务器用私钥将收到的pre-master secret进行解密,如果不可信,则结束本次通话;服务器所使用的会话密钥与客户端相同,在服务器与客户端SSL握手结束后都要通过这个会话密钥来传递信息;客户端将使用会话密钥加密发送信息以及本次SSL成功握手的消息通知给服务器;服务器将使用会话密钥加密发送信息以及本次SSL成功握手的消息通知给客户端;SSL握手结束并建立会话后,服务器和客户端使用通过一个会话密钥对对信息进行加密和解密。
2.2 SSL协议使用的安全技术
系统的安全主要通过SSL协议来保障,具体包括压缩、消息摘要加密和解密等技术。SSL协议主要包括SSL握手协议和SSL记录协议。SSL记录协议为各种高层协议提供基本的数据安全服务,对高层协议传送来的数据进行分段/组合、压缩、附加消息摘要、加密等处理,然后把数据传送给低层的传输层协议发送。SSL记录协议为最底层协议,此外还有SSL警告协议、更改密码规则协议和握手协议三个高层协议,它们都是建立在SSL记录协议上的。SSL的会话和连接由这三个高层协议来进行管理。
2.3 SET安全协议
作为一个开放的协议,SET协议主要是为了保证信用卡交易的安全性,主要是为信用卡交易所设计的,SET协议已慢慢成为工业标准,被Microsoft、IBM、HP等大公司所认可,也得到了IETF(因特网工程任务组)的支持。
2.3.1 STE协议的支付系统
在SET协议支付系统的网络模型中持卡人和发卡行之间的虚线表示持卡人在发卡行开设有帐户,商家和收单行之间的虚线表示商家在收单行开设帐户。持卡人通过Internet与商家进行交易,为了保证持卡人和商家时合法主体,需要认证中心CA来对双方进行认证,通过认证可以维护电子商务交易双方所提供的信息具有完整性和真实性。
2.3.2 SET协议的安全体系结构
在SET协议中,身份认证通过双重签名、数字签名等技术来实现,封字签名通过RAS算法和SHA-1算法来实现,数据的加密通过RSA、DES加密算法来实现。
2.3.3 SET安全技术
SET通过使用加密解密和认证等技术实现传输的完整性、机密性以及不可否认性,主要包括数字信封、混合密钥加密技术、对称密钥加密技术以及非对称加密技术。
(1)数字信封:主要是通过数据接收者的公钥来加密,确保只有指定的收信人才能阅读信的内容。
(2)混合密钥加密技术:主要是指通过专用密钥技术和公共密钥相结合的加密技术,保证电子商务中的电子支付安全。
(3)对称密钥加密技术:之所以称为对称密钥加密,主要是因为在此种方法中使用相同的密钥对信息加密和解密。RC4、AES、DES是常用的几种对称加密算法。
(4)非对称密钥加密技术:与对称密钥加密技术最明显的区别就是采用不同的密钥对信息进行加密和解密,每个用户同时拥有私有密钥SK和公开密钥PK两给密钥,且必须配对使用。概率加密、椭圆曲线密码、Rabin密码、RSA是常用的非对称加密算法。
3.结束语
作为电子商务系统的重要组成部分,电子商务支付系统的安全问题得到广泛关注,人们将研究安全方便的电子支付系统作为电子商务发展的首要任务。然而,电子安全支付系统是一个复杂的系统工程,我们必须通过实践不断总结,探究完善的措施。
参考文献
[1] 张贤;;电子商务安全问题[J];中国科技信息;2006年03期.
[2] 马波;中国电子商务信用体系模型及应用研究[D];北京交通大学;2008年.