期刊大全 杂志订阅 SCI期刊 投稿指导 期刊服务 文秘服务 出版社 登录/注册 购物车(0)

首页 > 精品范文 > ssl协议

ssl协议精品(七篇)

时间:2023-03-15 15:05:14

ssl协议

ssl协议篇(1)

关键词:SSL协议;C/S结构;握手协议;TCP/IP协议

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)29-0304-03

SSL Protocol Analysis and Implementation

HU Xiao-ye1,LI Jun-yi2

(1.Baoji University of Arts and Sciences Equipment Department,Baoji 721007,China; 2.Dept. Comput. Sci. & tech., Shanxi Police Profession College,Xi'an 710043,China)

Abstract: Aim Discuss the configuration and working process of the SSL protocol,apply SSL to achieve internet security.Means First understand the system construction of SSL protocol,then understand the protocol's working process by SSL communicate and handclasp protocol process.Result SSL protocol is a security protocol base on the TCP/IP,SSL protocol settle the problem of security on internet,make up the shortage of TCP/IP,give us security of data transfer in internet.Conclusion Discussing the configuration and working process of the SSL protocol, make us to understand the SSL protocol all-around, and bring forward it's shortage and consummate it.

Key words: SSL protocol;C/S configuration;handclasp protocol;TCP/IP protocol

1 引言

目前,随着Internet的快速发展,互联网上的信息安全越来越引起人们的关注。特别是近年来基于互联网的网上银行、电子商务和电子政务的发展,如何保证传输信息,特别是网上交易信息的不可否认性、保密性、完整性已成为急待解决的问题。为此,人们发明了安全套接层SSL协议(Security Socket Layer Protocol,简称SSL),是Internet上使用广泛的保密通信的一种安全协议。

2 概述

SSL协议是由Netscape公司为制定数据安全性所开发的通信协议。1995年,Netscape公司提出了SSL2.0之后,很快就成为一个事实上的标准,并为众多的厂商所采用。1996年,Netscape公司了SSL3.0,该版本增加了对除了RSA算法之外的其他算法的支持和一些安全特性,并且修改了前一个版本中一些小的问题,相比SSL2.0更加成熟和稳定。1999年l月EITF基于SSL协议了TLS1.0(Transport Layer Security)版本,Netscape公司宣布支持该开放的标准。

SSL协议向基于TCP/护的客户/服务器应用程序提供了客户端和服务器的鉴别、数据完整性、及信息机密性等安全措施。该协议通过在应用程序进行数据交换前交换SSL初始握手信息来实现有关安全特性的审查。在SSL握手信息中采用了DES、MDS等加密技术来实现机密性和数据完整性,并采用X.509的数字证书实现鉴别。该协议已成为事实上的工业标准,并被关泛应用于Internet和Intranet的服务器产品和客户端产品中。如Netscape公司、微软公司、IBM公司等领导Internet/Intranet网络产品的公司已在使用该协议。

3 SSL协议的体系结构

SSL协议主要由两层组成,分别是握手协议层和记录协议层,握手协议建立在记录协议之上,此外还有警告协议、更改密码说明协议和应用数据协议等对话协议和管理提供支持的子协议。其组成如图所示:

握手协议HandshakeProtocol和记录协议Record Protocol是SSL协议的核心组成部分。其上是超文本协议HTTP、文件传输协议FTP和传输控制协议TELNET。它们控制文本的传输。支撑握手、记录协议的低层通信是用户数据报文和TCP/IP协议。

SSL发出消息是将数据分为可管理的块、压缩、使用MAC和加密并发出加密的结果。接受消息需要解密、验证、解压和重组,再把结果发往更高一层的客户。以下是两个主要协议的论述和分析。

1) 记录协议:具体实现压缩/解压缩、加密/解密、计算机MAC等与安全有关的操作。建立之上的还有:

更改密码说明协议:此协议由一条消息组成,可由客户端或服务器发送,通知接收方后面的记录将被新协商的密码说明和密钥保护,接收方得此消息后,立即指示记录层把即将读状态变成当前读状态,发送方发送此消息后,应立即指示记录层把即将写状态变成当前写状态。

警告协议:警告消息传达消息的严重性并描述警告。一个致命的警告将立即终止连接。与其他消息一样,警告消息在当前状态下被加密和压缩。警告消息有以下几种:

关闭通知消息、意外消息、错误记录MAC消息、解压失败消息、握手失败消息、无证书消息、错误证书消息、不支持的证书消息、证书撤回消息、证收过期消息、证书未知和参数非法消息等等。

应用数据协议:将应用数据直接传递给记录协议。

SSL记录协议原理如图2所示。

2) 握手协议:SSL握手协议是用来在客户端和服务器端传输应用数据而建立的安全通信机制。

―算法协商:首次通信时,双方通过握手协议协商密钥加密算法,包括数据加密算法和文摘算法。

―身份验证:在密钥协商完成后,客户端与服务器端通过证书交换,互相验证对方的身份,一般通过目录服务器的L DAP查询完成。

―确定密钥:最后使用协商好的密钥交换算法产生一个只有双方知道的秘密信息,客户端和服务器各自根据这个秘密信息确定数据加密算法的参数(一般是对称密钥)。

由此可见,SSL协议是端对端的通信安全协议,即数字通信安全管道。

4SSL协议的实现工作过程

4.1 SSL通信过程

基于OpenSSL的程序可以被分为两个部分:客户机和服务器,使用SSL协议使通信双方可以相互验证对方身份的真实性,并且能够保证数据的完整性和机密性。建立SSL通信的过程如图3所示。

SSL通信模型采用标准的C/S结构,除了在TCP层上进行传输之外,与普通的网络通信协议没有太大的区别,基于OpenSSL的程序都要遵循以下几个步骤:

1) OpenSSL初始化

在使用OpenSSL之前,必须进行相应的协议初始化工作,这可以通过下面的函数实现:

int SSL_library_int(void);

2) 选择会话协议

在利用OpenSSL开始SSL会话之前,需要为客户端和服务器制定本次会话采用的协议,目前能够使用的协议包括TLSv1.0、SSLv2、SSLv3、SSLv2/v3。

需要注意的是,客户端和服务器必须使用相互兼容的协议,否则SSL会话将无法正常进行。

3) 创建会话环境

在OpenSSL中创建的SSL会话环境称为CTX,使用不同的协议会话,其环境也不一样的。申请SSL会话环境的OpenSSL函数是:

SSL_CTX *SSL_CTX_new(SSL_METHOD * method);

当SSL会话环境申请成功后,还要根据实际的需要设置CTX的属性,通常的设置是指定SSL握手阶段证书的验证方式和加载自己的证书。制定证书验证方式的函数是:

int SSL_CTX_set_verify(SSL_CTX *ctx,int mode,int(*verify_callback),int(X509_STORE_CTX *));

为SSL会话环境加载CA证书的函数是:

SSL_CTX_load_verify_location(SSL_CTX *ctx,const char *Cafile,const char *Capath);

为SSL会话加载用户证书的函数是:

SSL_CTX_use_certificate_file(SSL_CTX *ctx, const char *file,int type);

为SSL会话加载用户私钥的函数是:

SSL_CTX_use_PrivateKey_file(SSL_CTX *ctx,const char* file,int type);

在将证书和私钥加载到SSL会话环境之后,就可以调用下面的函数来验证私钥和证书是否相符:

int SSL_CTX_check_private_key(SSL_CTX *ctx);

4) 建立SSL套接字

SSL套接字是建立在普通的TCP套接字基础之上,在建立SSL套接字时可以使用下面的一些函数:

SSL *SSl_new(SSL_CTX *ctx);

//申请一个SSL套接字

int SSL_set_fd(SSL *ssl,int fd);)

//绑定读写套接字

int SSL_set_rfd(SSL *ssl,int fd);

//绑定只读套接字

int SSL_set_wfd(SSL *ssl,int fd);

//绑定只写套接字

5) 完成SSL握手

在成功创建SSL套接字后,客户端应使用函数SSL_connect( )替代传统的函数connect( )来完成握手过程:

int SSL_connect(SSL *ssl);

而对服务器来讲,则应使用函数SSL_ accept ( )替代传统的函数accept ( )来完成握手过程:

int SSL_accept(SSL *ssl);

握手过程完成之后,通常需要询问通信双方的证书信息,以便进行相应的验证,这可以借助于下面的函数来实现:

X509 *SSL_get_peer_certificate(SSL *ssl);

该函数可以从SSL套接字中提取对方的证书信息,这些信息已经被SSL验证过了。

X509_NAME *X509_get_subject_name(X509 *a);

该函数得到证书所用者的名字。

6) 进行数据传输

当SSL握手完成之后,就可以进行安全的数据传输了,在数据传输阶段,需要使用SSL_read( )和SSL_write( )来替代传统的read( )和write( )函数,来完成对套接字的读写操作:

int SSL_read(SSL *ssl,void *buf,int num);

int SSL_write(SSL *ssl,const void *buf,int num);

7) 结束SSL通信

当客户端和服务器之间的数据通信完成之后,调用下面的函数来释放已经申请的SSL资源:

int SSL_shutdown(SSL *ssl);

//关闭SSL套接字

void SSl_free(SSL *ssl);

//释放SSL套接字

void SSL_CTX_free(SSL_CTX *ctx);

//释放SSL会话环境

4.2 SSL握手协议的工作过程

SSL协议的工作过程主要就是握手协议的工作过程。下面我们重点讲述握手协议的工作过程。图4是握手协议简化的握手顺序。

SSL协议具体握手过程描述如下:

―客户Client端发送ClientHello信息给服务器Server端,Server回答ServerHello。这个过程建立的安全参数包括协议版本、“佳话”标识、加密算法、压缩方法。另外,还交换两个随机数:ClientHello.Random和ServerHello.Random.用以计算机“会话主密钥”。

―Hello消息发送完后,Server会发送它的证书和密钥交换信息,如果Server端被认证,它就会请求Client端的证书,在验证以后,Server就发送H elloDone消息以示达成了握手协议,即双方握手接通。

―Server请求Client证书时,Client要返回证书或返回“没有证书的指示,这种情况用于单向认证,即客户端没有装证书,然后Client发送密钥交换消息。

―服务器Server此时要回答“握手完成“消息(Finished),以示完整的握手消息交换已经全部完成。

―握手协议完成后,Client端即可与Server端传输应用加密数据,应用数据加密一般是用第②步密钥协商时确定的对称加/解密密钥,如DE S、3DE等等,目前商用加密强度为128位。非对称密钥一般为RAS,商用强度1024位,用于证书的验证。

5 总结

SSL协议很好的解决了Internet上信息的安全传输,弥补了TCP/IP协议的不足,使得我们在网络上传输数据得到安全保障。SSL协议虽然得到了广泛的应用,但是它也存在了很多不足。SSL协议中引入了很多安全机制,如非对称密钥交换、数据加密、消息认证码MAC、身份认证等,因为用以保护数据的所有加密密钥都是通过masterSecret来产生的,故协议的所有安全几乎都依赖于masterSecret的保密,如果某个会话的masetrSecert被攻破的话,这个会话就会完全暴露于攻击之下。而且SSL协议不提供交易的不可抵赖性。对于电子商务应用来说,使用SSL可保证信息的真实性、完整性和保密性。但由于SSL不对应用层的消息进行数字签名,因此不能提供交易的不可否认性,这是 SSL在电子商务中使用的最大不足。有鉴于此,网景公司在从Communicator 4.04版开始的所有浏览器中引入了一种被称作"表单签名(Form Signing)"的功能,在电子商务中,可利用这一功能来对包含购买者的订购信息和付款指令的表单进行数字签名,从而保证交易信息的不可否认性。综上所述,在电子商务中采用单一的SSL协议来保证交易的安全是不够的,但采用"SSL+表单签名"模式能够提供较好的安全性保证。

参考文献:

[1] 顾兵.VPN技术在企业中的应用[J].中国海洋平台,2003(1):44-46.

[2] 懂洪伟,冯斌,杨开荞.VPN关键技术探讨[J].计算机工程,2002(11):159-161,177.

[3] Eric R.SSL and TLS Designing and Building Secure Systems[M].崔凯,译.北京:中国电力出版社,2002.

ssl协议篇(2)

关键词:SSL协议,中间人攻击,原理

 

SSL 是Security Socket Layer 的缩写,称为安全套接字,该协议是由Netscape 公司设计开发。使用SSL 可以对通讯内容进行加密,以防止监听通讯内容,主要用于提高应用程序之间的数据的传输安全。SSL协议分为三个子协议:

(1)握手协议,用于协商客户端和服务器之间会话的安全参数,完成客户端和服务器的认证。

(2)记录协议,用于交换应用数据,所有的传输数据都被封装在记录中,主要完成分组和组合,压缩和解压缩,以及消息认证和加密等功能。

(3)警告协议:用来为对等实体传递SSL的相关警告。

SSL协议的实现有Netscape开发的商用SSL包,还有在业界产生巨大影响的Open SSL软件包。目前在国内的金融系统中,广泛使用OPENSSL软件包进行应用开发。

网上银行因为考虑易用性,大部分采用单向SSL认证.单向认证 SSL 协议不需要客户拥有 CA 证书。X509数字证书是SSL的重要环节,CA证书的任务就是确保客户和服务器之间的会话,并且保证使用的密钥是正确的。缺少了这个重要的环节,SSL中间人攻击也就难免了。

现在的网上银行因为考虑易用性,大部分采用单向SSL认证,这正是SSL中间人攻击的理论依据。

对于SSL中间人攻击,以CAIN工具软件为例:

首先在SNIFFER窗口中进行一次本网段的扫描探测

很快找到所有当前跟在同一网段内的活动主机IP地址与其MAC地址的对应关系。今天我们要欺骗演示的实验对象是192.168.121.199,这是另一台的笔记本电脑IP地址。

获取到IP地址与MAC地址的对应关系后,继续到ARP的子窗口中,选择添加欺骗主机在窗口左边选中当前网络的网关IP地址就是192.168.121.129,窗口右边选中我们要欺骗的IP地址192.168.121.199,选中后直接确定生效。毕业论文,SSL协议。毕业论文,SSL协议。

然后在ARP-HTTPS的选择树中添加一个当前我们需要伪装的HTTPS站点,选择确定后CAIN会自动把这个站点的证书文件下载回来备用。毕业论文,SSL协议。

一切准备就绪后,就可以点击CAIN工具栏中的ARP模式开始工作了。毕业论文,SSL协议。CAIN软件在后台采用第一章的ARP欺骗攻击的方式将被欺骗主机与 HTTPS网站间的通讯切断,在中间插入我们伪造的证书给被欺骗主机,同时伪装成为中间人代替它与HTTPS站点通讯。CAIN在其中把所有的通讯数据包 进行加密解密再加密传递的过程,当然所有原始的访问行为在这一过程中都被我们获取到了。

对于被欺骗主机在实际打开IE访问中,感觉不到任何异常本地显示依然是安全的SSL128位加密,只是不知道所有的访问行为在CAIN中都可以VIEW的方式来查看到了。

在VIEW的窗口中我们可以查看到所有通讯的访问原始记录,包括此台笔记本的登陆帐号与口令信息。

网上银行存在的攻击风险归其原因是SSL协议使用不健全导致,安全的解决方案建立以PKI技术为基础的CA认证系统,加入已经在运行的可靠的CA。 CA体系建立或加入时,通过对网上交易系统的二次开发,将数字证书认证功能嵌入到整个网上交易过程中去,这将实现基于数字证书的身份认证、通信安全、数据安全和交易安全。

目前, USB Key存储证书的方式正逐步应用于国内的网银领域,也是公认的较为安全的身份认证技术。毕业论文,SSL协议。通过硬件USB Key进行证书的存储,加强对证书的安全保护,用户登录时必须将USB Key插入所操作的终端。毕业论文,SSL协议。利用USB KEY存储用户的私钥以及数字证书,实现对用户身份的安全认证。

ssl协议篇(3)

[关键词] 电子支付 安全 SSL协议 SET协议

网络和信息技术的不断发展和渗透,使得电子商务得到了飞速的发展。然而,电子商务在提供机遇和便利的同时,也面临着一个最大的挑战,即交易的安全问题。其中,安全协议是保证电子商务安全的核心所在。

目前,国内外使用的保障电子商务支付系统安全的协议包括:安全套接层协议SSL(Secure Socket Layer)、安全电子交易协议SET(Secure Electronic Transaction)等协议标准。

一、SSL协议

SSL协议是Netscape Communication公司推出在网络传输层之上提供的一种基于RSA和保密密钥的用于浏览器和Web服务器之间的安全连接技术。是对计算机之间整个会话进行加密的协议,提供了加密、认证服务和报文完整性。它是国际上最早应用于电子商务的一种由消费者和商家双方参加的信用卡/借记卡支付协议。

1.SSL协议提供的服务主要有

(1)用户和服务器的合法性认证;

(2)加密数据以隐藏被传送的数据;

(3)维护数据的完整性,确保数据能完整准确地传输到目的地。

该协议主要是使用公开密钥体制和X.509数字证书技术保护信息传输的机密性和完整性,它不能保证信息的不可抵赖性,主要适用于点对点之间的信息传输,常用Web Server方式,它包括:服务器认证、客户认证、SSL链路上的数据完整性和SSL链路上的数据保密性。对于电子商务应用来说,使用SSL可保证信息的真实性、完整性和保密性。

2.SSL协议的工作流程

(1)接通阶段:客户通过网络向服务商发送连接信息,服务商回应;

(2)密码交换阶段:客户与服务器之间交换双方认可的密码,一般选用RSA密码算法,也有的选用Diffie-Hellmanf和Fortezza-KEA密码算法;

(3)会谈密码阶段:客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;

(4)检验阶段:服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。

(5)客户认证阶段:服务器通过数字签名验证客户的可信度;

(6)结束阶段,客户与服务商之间相互交换结束的信息。SSL协议运行的基点是商家对客户信息保密的承诺。从SSL 协议所提供的服务及其工作流程可以看出,该协议有利于商家而不利于消费者。客户的信息首先传到商家,商家阅读后再传给银行,这样,客户资料的安全性便受到威胁。商家认证客户是必要的,但整个过程中,缺少了客户对商家的认证。在电子商务的初级阶段,由于运作电子商务的企业大多是信誉较高的大公司,因此这问题还没有充分暴露出来。但随着电子商务的发展,各中小型公司也参与进来,这样在电子支付过程中的单一认证问题就越来越突出。虽然在SSL3.0中通过数字签名和数字证书可实现浏览器和Web服务器双方的身份验证,但是SSL协议仍存在一些问题,比如,只能提供交易中客户与服务器间的双方认证,在涉及多方的电子交易中,SSL协议并不能协调各方间的安全传输和信任关系。在这种情况下,Visa和 MasterCard两大信用卡公组织制定了SET协议,为网上信用卡支付提供了全球性的标准。

二、Set协议

Set协议是1997年5月31日由VISA和MasterCard两大信用卡公司联合推出的一个基于开放网络的安全的以信用卡支付为基础的电子商务协议。它运用了RSA安全的公钥加密技术,具有资料保密性、资料完整性、资料来源可辨识性及不可否认性,是用来保护消费者在Internet持卡付款交易安全中的标准。现在,SET已成为国际上所公认的在Internet电子商业交易中的安全标准。

1.SET支付系统的组成

SET支付系统主要由持卡人(CardHolder)、商家(Merchant)、发卡行(Issuing Bank)、收单行(Acquiring Bank)、支付网关(Payment Gateway)、认证中心(Certificate Authority)等六个部分组成。对应地,基于SET协议的网上购物系统至少包括电子钱包软件、商家软件、支付网关软件和签发证书软件。

2.SET协议的工作流程如下

在SET协议介入之前,消费者通过因特网进行选货、下订单并与商家联系最终确定订单的相关情况、付款方式和签发付款指令。此时SET协议开始介入,进入以下几个阶段

(1)支付初始化请求和响应阶段。当客户决定要购买商家的商品并使用电子钱包支付时,商家服务器上POS软件发报文给客户的浏览器电子钱包,电子钱包要求客户输入口令然后与商家服务器交换“握手”信息,使客户和商家相互确认,即客户确认商家被授权可以接受信用卡,同时商家也确认客户是一个合法的持卡人。

(2)支付请求阶段。客户发出一个报文,包括订单和支付命令。在订单和支付命令中必须有客户的数字签名,同时利用双重签名技术保证商家看不到客户的账号信息。而位于商家开户行的被称为支付网关的另外一个服务器可以处理支付命令中的信息。

(3)授权请求阶段。商家收到订单后,POS组织一个授权请求报文,其中包括客户的支付命令,发送给支付网关。支付网关是一个Internet服务器,是连接Internet和银行内部网络的接口。授权请求报文通过支付网关到达收单银行后,收单银行再到发卡银行确认。

(4)授权响应阶段。收单银行得到发卡银行的批准后,通过支付网关发给商家授权响应报文。

(5)支付响应阶段。商家发送购买响应报文给客户,记录客户交易日志,以备查询。之后进行发货或提供服务,并通知收单银行将钱从消费者的账号转移到商店账号,或通知发卡银行请求支付。

三、SSL协议和SET协议的对比

1.SSL协议的优缺点

SSL协议是两层协议,建立在TCP传输控制协议之上、应用层之下,并且与上层应用协议无关,可为应用层协议如HTTP、FTP、SMTP等提供安全传输,通过将HTTP与SSL相结合,Web服务器就可实现客户浏览器与服务器间的安全通信。因此简便易行是SSL协议的最大优点,但与此同时其缺点也是显而易见的。首先,在交易过程中,客户的信息先到达商家那里,这就导致客户资料安全性无法保证;其次,SSL只能保证资料传递过程的安全性,而传递过程是否有人截取则无法保证;再次,由于SSL协议的数据安全性是建立在RSA等算法上,因此其系统安全性较差;最后,虽然SSL协议中也使用了数字签名来保证信息的安全,但是由于其不对应用层的消息进行数字签名,因此不能提供交易的不可否认性,这就造成了SSL协议在电子银行应用中的最大不足。

2.SET协议的优缺点

由于SET提供了消费者、商家和银行之间的双重身份认证,确保了交易数据的安全性、完整可靠性和交易的不可否认性,特别是保证不将消费者银行卡号暴露给商家等优点,因此它成为目前公认的信用卡/借记卡的网上交易的国际安全标准。但在实际应用中,SET协议依然存在以下不足:

(1)SET协议中仍存在一些漏洞。如:不可信的用户可能通过其它商家的帮助欺骗可信的商家在未支付的情况下得到商品;密钥存在被泄露的危险;存在冒充持卡人进行交易的隐患。

(2)SET协议的性能有待改进。如:单纯支持信用卡,需要进一步适应借计卡的使用;协议过于复杂,要求安装的软件包过多,处理速度慢,价格昂贵;由于该协议的每一个阶段都要进行多次数据加密解密、签名、证书验证等安全操作,因此协议的交易时间过长,不能满足实时交易要求。

3.总结

由于SSL协议的成本低、速度快、使用简单,对现有网络系统不需进行大的修改,因而目前取得了广泛的应用。但随着电子商务规模的扩大,网络欺诈的风险性也在提高,在未来的电子商务中SET协议将会逐步占据主导地位。

参考文献:

[1]徐震邓亚平:SET的安全性分析与改进[J].重庆邮电学院学报,2005,17 (6),745~748

[2]马瑞萍:SSL安全性分析研究[J];网络安全技术与应用; 2001,12期,17~20

ssl协议篇(4)

关键词 SSL技术;安全网站;运用

中图分类号:TP393 文献标识码:A 文章编号:1671-7597(2013)23-0038-02

随着计算机及信息技术的不断提升,全球信息化趋势越来越明显。计算机及网络对人们的生活及意识造成了很大的影响,再加上网络的运用层次也在不断地深入,应用领域及范围越来越广。安全成为影响网络效能的最为重要的问题。笔者结合自己学习及工作的经历和经验,对基于SSL的安全网站的理论与实践进行了较为系统的研究。

1 SSL技术概述

SSL是Security Socket Layer的缩写,翻译成中文是“加密套接字协议层”的意思。SSL其实是一种安全通信协议,具有RSA和保密密匙,位于HTTP协议层和TCP协议层之间。通过在客户和服务器之间建立加密通道的方式,取保用户的信息不在传输过程中被非法窃取。由此可以看出,这种协议可以很好地保护个人的信息。本质上来说,SSL的安全加密机制功能的实现,主要依靠的是数字证书的安全性。

SSL的特点主要表现在以下几个方面。首先SSL提供一个编程的界面,通过这个界面,客户可以方便地进行相关的操作。而且是向上提供相应的安全服务,通过对电子证书的有效使用,取保用户身份的合法性。也就是说用户只有通过了身份验证,才可以用保密密匙与其他工作人员进行会话。而且SSL得加密采用的是“对称”与“非对称”的加密方法,这样客户与电子商务器进行沟通交流的过程就会变得更加严谨。一般来说,在沟通的过程中客户都会产生一个Session Key,客户通过服务器终端的公匙对Session Key进行加密后,再重新传回给服务器终端。这样双方就都知道了Session Key,传输的数据也都是以Session Key进行加密与解密的。但是值得强调的是服务器端发给用户的公匙是公证过的。

2 SSL协议的体系结构

通过上面的分析可以看出,SSL协议是一种位于网络层与运用层之间的一种协议。SSL提供的协议可以保证数据传输及获取过程的安全性,因为其安全机制可以确保数据不被篡改或监听。由此也可以看出SSL的功能大部分都是由这个协议来完成的。所以本章重点介绍一些SSL协议的体系结构,为其实践运用提供一定的基础。SSL协议主要包括SSL协议记录协议以及SSL握手协议,也就是改变密码的规范协议和告警协议。其中SSL记录协议规定了数据传输的格式,SSL握手协议建立了用户与服务器之间的对应关系,他们之间可以通过握手协议相互确认对方的身份。SSL协议的大部分内容都集中在如何利用协商密匙协议设置出一份安全性很高的密匙,同时为信息交互双方,提供具有身份标志的数字证书技术,以认证对方的身份。另外,数据的传输形式也是要通过加密技术来保证传输过程的安全性。

3 基于SSL的安全网站实践

通过前面两章的分析可以看出,基于SSL的安全网站的实践对于保证信息传递的安全性,提高网络的运行的稳定性具有很重要的作用与意义。基于此本章主要对网站的实现流程以及具体的设计要求,做了较为系统的分析。

3.1 基于SSL的安全网站实现流程

基于SSL的安全网站的实现流程对于其实践研究具有很强的决定性,实现流程决定了实现的路径及方法,也严重影响着网站的实际使用效果。可以设想,当一台计算机试图使用SSL来建立连接的时候,必然会发生握手操作。在这个操作的基础上才能发送相关信息到服务器上。这个过程包括一个质疑、希望的连接或能够支持的加密体系。这样才能够保证握手操作的意义及目的的实现。服务器接受到相关信息后,会做相应的处理,并及时回答包括连接标识、密钥证书以及服务器等请求,这样可以有效地支持的加密体系功能的实现。另外,握手操作一般来说有三种不同的方式,客户可以根据自己的实际需求选择其中的一种。在客户选定了握手操作的方式之后,客户机检验服务器的公开密钥,会向服务器发送一条由系统自动产生的主密钥。主密钥的作用主要是通过与公开密钥的相互结合发挥出来。由此可以看出,这里采用的公开密匙就是常用的RSA等。通过服务器向用户机发射的消息主要包括被客户写密钥加密的连接标识。服务器发送的SEVER-VERIFY消息,包括一个被服务器写密钥加密的客户机的质疑。最后服务器发送SERVER-INISHED消息包括一个被服务器写密钥加密的新的对话标识。至此,一个安全的加密的服务器与客户机的通道已经建立起来此后的传输数据都经过加密。

3.2 基于SSL的安全网站实现设计

通过上面的分析可以看出,SSL是安全网站构建的核心。概括来说,SSL安全协议是目前国际上流行的为应用程序提供验证和加密机制的协议,鉴于网络安全机制的特殊性,我国国内现在还不能直接使用国外的SSL协议产品,必须进行自主开发。接下来的工作是要验证基于SSL的双服务模式的合理性和科学性,并应用于实际组网建网的过程中。

所以在SSL设计的过程中,一定要注意以下两个方面的问题。

1)SSL的密匙交换。设计者要知道SSL密匙交换的目的是为了创建一个通信双方都知道,但是其他人,尤其是攻击者不知道的会话密匙。所以在设计的过程中要通过RSA、DES、HASH等算法来交换用户与服务器会话的密匙,而且密匙交换和服务器验证是结合在一起的。

2)保证SSL可以有效地检测出外界对握手协议的攻击。一般来说,攻击者会试图改变握手协议中的信息,导致通信双方在身份验证的环节出现错误,误导他们选择不常使用的加密算法。这样会严重威胁到系统及操作的安全性。

SSL在设计的过程中,如果保证上面两个要求的实现,那么SSL的安全性能也基本可以保证。但如果要求高强度的SSL安全性的话,可以通过在服务器和浏览器端都增加SSL。因为如果一端没有的话,安全性相对来说会差很多。虽然较差的SSL协议也有效,但是很容易被窃听或窃取相关的信息。而采用SSL对称加密技术,就可以形成一个高安全性的SSL通道。因为这种信息在这种通道中传输,要经过压缩、加密后才能传输,相对于明文传输,安全性能明显会增加。服务器及浏览器端的SSL接口模块会对信息进行有效的参数配置。用户接口模块完成用户端的信息创建与管理,而且会根据网络状态对用户进行信息反馈,为用户调整与创建信息内容提供一定的依据。SSL模块所需的配置及管理功能主要是通过Client SSL模块来实现。具体的实现过程如下。

1)服务器端的密钥管理模块对密钥进行确认。

2)服务器端的加密库对收到的密文进行还原。

3)将还原的数据发送到服务器端。

4)加密库对信息明文进行加密处理。

5)获得Sever证书,并发送给浏览器。

通过上面的分析可以看出,如果这种安全实现结构的安全性能比较高,因为即便一方的安全失效了,只是安全性降低了,并不会导致信息的泄露。

通过证书来实现浏览器端和服务器端的相互认证,不仅保证了通信双方的可信性,同时提高了网站运行的稳定性及可靠性。虽然基于SSL的单服务模式能够在一定程度上解决WEB网络的安全性,但是一旦唯一的SSL协议模块发生错误,那么WEB网络的SSL安全性就降到了零,而双服务结构即使一方的安全失效了,但是另一端的SSL安全将仍然有效,这样就避免了WEB网络零安全性的危险。

4 结束语

综上所述,SSL协议能够有效地提高网站的安全性,具有很大的运用潜力。SSL协议不仅保证了通信双方的可信性,更保证了信息交互过程,具有更强的合理性及科学性。最后,希望论文的研究为相关的工作者及研究人员提供一定的借鉴与参考价值,也为基于SSL的安全网站的实践作出一定的贡献。

参考文献

[1]梁启明.基于SSL的网络安全应用研究[D].清华大学,2009:23-251.

[2]叶新,雷明,张焕国.PKI及其在基于SSL的Web安全中的应用实现[J].计算机工程与应用,2012(14):150-152.

[3](美)M.Shane Stigler等著.高效配置与管理IIS 4和Proxy Server 2[M].毛选等译.北京:电子工业出版社,2010.

[4]杨坚争.电子商务基础及应用(第三版)[M].西安电子科技大学出版社,2011:12-131.

ssl协议篇(5)

[关键词]网络安全;安全协议课程;实践教学

[DOI]10.13939/ki.zgsc.2016.02.111

构建安全网络、营造网络安全环境都需要网络安全协议。人们对应用于计算机中的安全协议做了大量的分析研究,就是为了提高网络信息传输的安全性,使之能从根本上保证网络安全,以免造成因网络安全等级不够而导致网络信息数据丢失或者文件信息丢失以及信息泄露等问题。网络安全协议课程包括对密码学和计算机网络的学习,网络安全协议比较复杂,无论是对于教师还是学生而言,难度都比较大,所以学生只有在加强自身的理解与应用能力之后,才能有利于新知识的继续学习。针对网络安全协议中的协议原理和细节,对于教师而言,如何让学生理解非常重要;对于学生而言,如何掌握并应用非常重要。所以,教师对于网络安全协议课程的实践教学设计不能马虎。

1实践教学设计总述

常用的网络安全协议包括Kerberos认证协议,安全电子交易协议SET、SSL、SHTTP、S/MIME、SSH、IPSec等。[1]这些安全协议属于不同的网络协议层次,能提供不同的安全功能。特别是在IPV6当中采用IPSec来加强网络的安全性。并且在开放系统互连标准中,网络协议被分为7层,其中物理层、数据链路层、网络层、传输层和应用层都是常用的。所以,由于每种网络安全协议内容丰富以及它们都有各自的优点和缺点,致使在实际应用中网络安全协议更具复杂性。教师需要通过实践教学设计来实现让学生全面理解和掌握协议中的原理和细节,并能够有效应用。首先要做到让学生由表及里的、由浅入深的认识和学习网络安全协议,其次要做到让学生能应用到网络安全协议,最后达到创新的目标。所以实践教学内容要划分为阶段性的,才能让学生逐步透彻地掌握网络安全协议中的方方面面。

2SSL协议的实践教学实施

2.1认知阶段

教师在本阶段的教学内容就是让学生认识SSL协议。需要掌握以下内容:

SSL采用公开密钥技术,其目标是保证两个应用间通信的保密性和可靠性,可在服务器和客户机两端同时实现支持。目前,利用公开密钥技术的SSL协议,已成为因特网上保密通信的工业标准。SSL协议中的SSL握手协议可以完成通信双方的身份鉴定以及协商会话过程中的信息加密密钥,从而建立安全连接。SSL握手协议如下图所示。

SSL握手协议

而在SSL协议中,获取SSL/TLS协议通信流量,直观地观看SSL/TLS协议的结构就需要使用Wireshark抓包分析工具软件。通过流量抓取分析来让学生掌握SSL/TLS的具体内容。

2.2体验阶段

经过初步的学习,要让学生体验SSL的应用范围,对SSL的应用过程有一个直观的感受和体验。学生用于数字证书生成、发放和管理需要完成CA的安装与配置,其次分别为IISWeb服务器和客户端申请、安装证书,再在服务器上配置SSL,通过以上步骤完成IIS服务器中的SSL/TLS配置来建立客户端和服务器的连接。[2]此阶段的具体应用会让学生深入的了解SSL/TLS中的有关内容。

2.3应用阶段

应用阶段的教学内容是前两阶段教学内容的升华,它会使学生具备利用SSL/TLS协议进行通信的编程能力。而要达到这点,就需要通过利用OpenSSL,实现一个简单的SSL服务器和客户端。这个阶段的工作量不小,学生需要在教师的指导下分组进行。进行过程中主要环节包括,首先,学生利用自己熟悉的系统和开发平台来完成OpenSSL的编译安装。其次,学生参考已有的源代码来完成VC++编译环境的设置。[3]再次,学生利用OpenSSL的证书生成命令性工具生成服务器和客户端数字证书。最后,通过完成简单的TCP握手连接和通信,并加入SSL握手功能来实现SSL/TLS编程。

2.4总结提高阶段

课堂上的理论教学和阶段性的实践教学对于学生熟悉掌握SSL协议具有很好的作用,但是还存在某些方面的不完整性。例如,通过研究和实际应用SSL/TLS协议的过程中,如何进一步改善SSL/TLS协议所存在的问题。这些都是需要学生去解决的。在解决过程中,学生就能具备进行高效学习的能力。教师可以采取向学生提问的方式来进行这一阶段的教学内容。问题可以是多方面的,例如通过前几阶段的认识和实践,SSL/TLS协议还存在哪些不足?并通过一个实际的SSL/TLS协议的应用案例,发现SSL/TLS协议还有哪些局限性,并解决这些局限所带来的问题。在此阶段内,学生和教师要进行不断的交流和讨论,并找出相关事实依据来论证自己的观点。例如,针对Heartbleed漏洞,学生需要了解漏洞产生的原因和危害,并提出解决措施。通过分析发现是OpenSSL开源软件包的问题导致了此漏洞出现,与SSL/TLS协议并无太大关系。经过对此问题的分析研究,我们可以发现,协议本身的安全并不代表能在实现协议过程中避免所有的不安全因素。

3实践教学效果评价

各个阶段的实践教学过程需要教师进行精心的设计和把握,并通过具体的实施实践才能验证实践教学设计的是否合理,是否有效。由于网络安全协议课程本身就非常复杂,再加上具体实施过程中内容、方法和难度有所不同,就需要根据学生的反馈情况来进行及时的调整。教师要从各项反馈指标进行自我反思,并与学生进行沟通。同时,在此过程中,也要认真检查对学生的作业布置,关注学生是否掌握了有关网络安全协议的技能,注重学生的完成情况和学生对于实践教学过程中不足之处的意见。

4结论

网络安全协议内容复杂,具体应用过程及各项技术操作也较为烦琐,因此,单单只是针对SSL/TLS协议的实践教学做了简要的设计并不能移植到所有的网络安全协议课程的教学中去。若要讲关于网络安全协议中链路层和网络层,那么第三阶段的实践教学内容就不具意义了。而要讲应用层的安全协议,第三阶段的实践教学内容相比于第一阶段和第二阶段就重要得多。对于信息安全专业的学生来说,只有掌握好计算机网络和密码学的课程内容,才能继续网络安全协议课程的学习。因为网络安全协议课程的理论性和实践性都非常强。在实践教学的实施过程中,不但要让学生充分品尝动手的乐趣,还要让学生掌握网络安全协议的具体知识。同时还要注重培养在网络安全协议方面的应用型人才。

参考文献:

[1]刘凯.网络安全协议课程的实践教学设计[J].计算机教育,2014(24):111-114,118.

ssl协议篇(6)

论文关键词:ssl;ssl vpn;远程接入

论文摘要:本文讨论了在远程安全接入领域的ssl vpn技术,通过对ssl协议的分析,全面衡量了ssl vpn远程接入方案在军队院校网络应用中的综合优势。

    1引言

    打造远程安全接入平台,一直是网络远程访问的迫切需求。当前,众多的安全协议(如pptp.l2tp.ipsec和mpls)各具特色并侧重于不同的方面,但能同时结合简易、安全两项特性的则非ssl莫属,ssl vpn是平衡访问自由度和安全性的出色解决方案。

    2 ssl

    安全套接层(secure sockets layer, ssl)是netscape于1994年提出的基于web应用的安全协议,它介于http及tcp之间,高层协议可以透明地运行在该协议之上,它指定了一种在应用程序协议和丁cp/ip协议之间提供数据安全性分层的机制,能为丁cp/ip连接提供数据加密、服务器认证、消息完整性以及可选的客户机认证。其安全连接基于握手协议、记录协议和警告协议来完成。

    3 ssl vpn主要特点

    (1)高安全性:ssl安全通道可确保端到端真正安全可靠的连接,能有效保证信息的真实性、完整性和保密性。

    (2)高易用性:无需客户端的安装和配置,对终端系统具有良好的兼容性。

    (3)高性价比:不需要配置,易于部署及管理,可有效降低网络配置成本。

    (4)高可扩展性和兼容性:可随时添加需要vpn保护的服务器,并适用于大多数设备。

    (5)高效的资源控制能力:可区分用户设置访问权限,实现区分对待的资源控制策略。

    4 ssl vpn应用优势

    随着军队院校网络信息化建设的推进,实际应用中面临着越来越多的跨地域、跨部门的数据传递,以及大量的远程访问内网的需求。例如跨地域的会商研讨、数据采集、资料检索、分支部门和下属机构的机要信息交换等。根据这些需求和实际情况,下面主要从ssl vpn和ipsec vpn对比出发,全面衡量ssl vpn的优势。

   (1)谨慎灵活的接入认证策略。在远程接入过程中,用户身份验证是整个过程的第一环,也是最重要的一环,如果不能有效识别用户的身份,使得非法用户接入,将给内部网络带来极大的安全隐患。ssl vpn提供对所传送数据的加密、认证和发送源的身份认证,支持将多种身份识别方式进行组合,一般包括usb-key、硬件特征码、数字证书、动态令牌、短信认证等,而且可以对访问权限进行严格的等级划分,实现不同用户对于不同应用程序的控制。

    (2)稳妥有效的数据保护策略。因为ssl vpn接入的是内部网络的应用,而不是整个网络,并限制了非web端口的访问,使得部分文件操作功能不易实现,这实际上也起到了相应的保护功能。同时,ssl网关隔离了内部服务器和客户端,客户端的大多数病毒木马感染不到内网服务器。而ipsec vpn实现的是ip级别的访问,使得局域网能够传播的病毒,通过vpn也能够传播,极易导致内部网络的防病毒策略形同虚设。一旦恶意ipsec vpn用户获得权限通过了网关,无疑会给内网带来灾难性的后果,但ssl vpn大大减弱了类似的风险。

ssl协议篇(7)

[摘要]电子商务是当前各国研究发展的热点,它以电子商务协议为构成框架,而电子商务协议的安全性是决定电子商务发展的关键因素。本文总结了两个主流的电子商务安全协议SSL和SET,对其安全性进行分析比较,以期对电子商务安全协议有清楚的认识和客观的评价。

[关键词]电子商务安全 SSL SET

[中图分类号]TP

[文献标识码]A

[文章编号]1009-5549(2010)05-0108-02

引 言

电子商务就是通过电信网络进行电子支付来得到信息产品或得到递送实物产品的承诺。传统电子商务采用EDI、符号技术、条形码、信用卡等。多采用基于增值网(vAN,value-Added-Network)的专用消息网的多存储转发方式。其缺点是耗时、成本高、连通性有限。但VAN也有其优点,如安全性好、可靠性高、收据能可靠地递到,这对商用十分重要。

新的Internet商务将利用世界范围连通的、无中心管理机构、可交互的Internet发展业务。它比VAN的成本要低,及时性和互通性好。

一、电子商务对信息安全的要求

(一)机密性:数据传输过程中,必须确保数据不外泄。(二)识别性:系统必须能识别所有用户和发送者。(三)完整性:数据在网络媒介的传送过程中,必须确保数据的完整性。(四)无法否认性:通过信息安全体系的设计,当数据送到对方,必须确定接受者不能否认其曾经接到该数据。

二、电子商务面临的安全威胁及解决技术

从目前的状况看,电子商务面临以下的安全威胁:

(一)病毒:电子商务离不开计算机网络,而病毒制造者通过传播计算机病毒来蓄意破坏联网计算机的程序、数据和信息,以达到某种非法目的。(二)恶意破坏程序是指会导致不同程度破坏的软件应用或者java小程序。(三)网络安全攻击:常见的有中断、介入、篡改和伪造。

这些技术的基础上又建立起更为复杂的安全协议和安全技术,例如SSL(安全套接字层)协议,SET(安全电子交易)协议等。

三、密码技术

本文讨论的是电子商务安全协议SSL和SET都运用了密码技术,它们是对称密码技术和非对称密码技术,本文对这两种密码技术进行简单的介绍。

(一)对称密码技术。对称密码技术是使用相同的密钥对数据进行加密和解密,发送者和接收者用相同的密钥。

(二)非对称密码技术。用于加密的密钥和用于解密的密钥不相同,且由其中一个推算不出另一个,这种密码体制叫非对称密码技术。非对称密码技术又称公钥密码技术,因为加密密钥是公开的,解密密钥是保密的,加/解密算法都是公开的。非对称密码技术中最为广泛应用的是RSA。

四、SSL协议及其安全性分析

(一)SSL简介。SSL(secure Socket Layer)是由Net scape首先发表的一种未来确保信息在网络上流通安全的网络数据安全传输协议。SSL是利用公开密钥的加密技术(RsA)来作为客户端与主机端在传送几门数据时的加密通讯协议的。

SSL协议位于TCP/IP层和应用层之间,代表高层协议使用TCP/IP层的服务,在OSI七层模型中处于会话层。

(二)SSL的功能。SSL协议的工作流程:服务器认证阶段:(1)客户端向服务器发送一个开始信息“Hello”以便开始一个新的会话连接;(2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器在响应客户的“Hello”信息时将包含生成主密钥所需的信息;(3)客户根据收到的服务器响应信息,产生一个主密钥,并用服务器的公开密钥加密后传给服务器;(4)服务器恢复该主密钥,并返回给客户一个用主密钥认证的信息,以此让客户认证服务器。用户认证阶段:在此之前,服务器已经通过了客户认证,这一阶段主要完成对客户的认证。经认证的服务器发送一个提问给客户,客户则返回数字签名后的提问和其公开密钥,从而向服务器提供认证。

(三)SSL协议的实现。SSL协议可分为两层:SSL记录协议:它建立在可靠的传输协议之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL握手协议:它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法等。

五、SET协议及其安全性分析

(一)SET简介。SET(secure ElectronicTransaction),用来保护消费者在开放型网络持卡付款交易安全的标准。由VISA、Netscape、IBM、SAIC等公司联合制订,运用RSA数据安全的公开密钥加密技术。保护交易数据的安全性和隐藏性。SET通过双重数字签名的应用,确保在开发式网络环境下,客户的交易信息不会被银行取得,而商店也无法知道客户的信用卡信息。

(二)SET协议的工作原理。整个电子支付的过程包括;浏览、购买、付款合法性验证以及获取付款等过程。信用卡持卡客户通过浏览器从商家的商品目录寻找所需商品,他拥有支付网关交换密钥的私人密钥,可以发送初始化请求给商家;商家收到客户的初始化请求后,为请求报文分配一个惟一的交易标识号,并用商家的私人密钥进行数字签名,然后将初始化响应报文与商家和支付网关的证书一起传给客户:客户收到该初始化响应后,验证商家和支付网关的证书,确认商家和支付网关的身份,再根据商家的公开密钥确认初始化响应中的商家签名私人密钥对订单信息和支付命令进行双重签名;并产生一个随机的对称密钥.然后,客户产生订单信息和支付命令,用双重签名后的支付命令加密,再用支付网关交换密钥的公开密钥对客户账号和对称密钥加密;客户将加密后的订单信息和支付命令发给商家;商家确认客户证书,用客户的公开密钥对订单信息上的双重签名解密,以确保订单在传输过程中无误,并且其中的签名是客户的;然后,商家处理订单信息请求,将支付命令传给支付网关并请求授权,同时还产生一个包括商家的签名证书和指明客户的订单已被接收等信息的购买响应报文,并对该报文数字签名后发给客户;客户用商家的公开密钥来证实购买响应上的签名是商家的,并保存收到的购买响应。如果交易被授权,商家将执行订单上规定的送货等服务。商家使用订货单,要求支付网关付款。

SET协议的SET的交易流程:(1)客户在网上商店看中商品后,和商家进行磋商,然后发出请求购买信息。(2)商家要求客户用电子钱包付款。(3)电子钱包提示客户输入口令后与商家交换握手信息,确认商家和客户两端均合法。(4)客户的电子钱包形成一个包含订购信息与支付指令的报文发送给商家。(5)商家将含有客户支付指令的信息发送给支付网关。(6)支付网关在确认客户信用卡信息之后,向商家发送一个授权响应的报文。(7)商家向客户的电子钱包发送一个确认信息。(8)将款项从客户账号转到商家账号,然后向顾客送货,交易结束。

六、SSL与SET的发展

友情链接