时间:2022-10-04 18:05:56
绪论:在寻找写作灵感吗?爱发表网为您精选了8篇ssl协议,愿这些内容能够启迪您的思维,激发您的创作热情,欢迎您的阅读与分享!
[关键词] 网络安全 VPN ssl 体系结构 工作模式
VPN(Virtual Personal Network,虚拟专用网)是通过一个私有的通道将远程用户、公司分支机构、公司业务伙伴等与公司的企业网连接起来,构成一个扩展的公司企业网,通过在公共网络中建立专用网络,数据通过安全的“加密通道”在公共网络中传播。SSL VPN是一种新的VPN的实现方法,是可靠安全地构建VPN的一种模式。
一、SSL协议
1.SSL概述
SSL(Secure Socket Layer,安全套接层)协议是 Netscape 公司于1994年提出的一个网络安全通信协议,是一种在两台机器之间提供安全通道的协议。它具有保护传输数据,以及识别通信机器的功能。SSL最初是通过加密HTTP连接为Web浏览器提供安全而引入的。
SSL在TCP上提供一种通用的通道安全机制,任何可以在TCP上承载的协议都能够使用SSL加以保护。在TCP或IP四层协议族中,SSL协议位于传输层与应用层之间,基于可靠传输协议TCP,服务于各种应用层协议,如HTTP、POP、TELNET等,它们在SSL协议上运行分别被称作HTTPS、POPS、TELNETS协议等,分别对应的端口号为443、995、992等。
图1 SSL协议结构图
2.SSL体系结构
SSL协议在结构上分为两个层次:底层为记录层协议(Record Protocol),负责封装高层协议(包括握手协议)的数据,保证SSL连接的数据保密性和完整性;高层为握手层,由四个并行的协议构成:握手协议(Handshake Protocol)、修改密码参数协议(Change Cipher Spec Protocol)、报警协议(Alert Protocol)、应用数据协议(Application data Protocol),高层协议需要记录层协议支持,其中握手协议与其他的高层协议不同,主要负责在交换应用层数据之前进行协商加密算法与密钥,其他高层协议属于应用开发的范畴,而要得到握手协议的支持,而握手协议则是SSL底层实现必须具有的功能,因为记录层协议的完成也由它来保证。
二、基于SSL协议的VPN技术研究
1.SSLVPN概念
SSL VPN是指一种基于数据包封装技术的,利用SSL或TLS协议结合强加密算法和身份认证技术的,可靠安全地构建VPN的一种方法。它作为一种新的VPN的实现方法,SSL VPN可以用来构建外联网、内联网和远程接入访问。它通过数据包封装的隧道技术来实现虚拟专用网的私有性,通过PKI技术和密码学技术来鉴别通信双方的身份和确保传输数据的安全。
2.SSL VPN的工作模式
(1)基于Web模式的SSL VPN系统
客户端使用浏览器通过SSLVPN 服务器来访问企业局域网的内部资源。SSLVPN 服务器相当于一个数据中转站,Web浏览器对WWW服务器的访问经过SSL VPN服务器的处理(解密、身份鉴别、访问控制)后转发给WWW服务器,从WWW服务器发往Web浏览器的数据经过SSL VPN服务器处理(过滤、加密)后送到Web浏览器。
图2 基于Web模式的SSL VPN系统
(2)基于客户模式的SSL VPN
用户在客户端安装一个SSL VPN客户端程序,当客户端访问企业内部的应用服务器时,需要经过SSL VPN客户端程序和SSL VPN服务器之间的保密传输后才能到达。从而在SSLVPN客户端和 SSLVPN服务器之间,由SSL协议构建一条安全通道,保护客户端与SSLVPN服务器之间的数据传输。此时,SSLVPN服务器充当服务器的角色,SSL VPN客户端充当客户端的角色。
图3 基于客户端模式的SSL VPN系统
(3)局域网到局域网模式的SSL VPN系统
在网络边缘都安装和配置了SSLVPN服务器。当一个局域网内的终端要访问远程网络内的应用服务器时,需要经过两个SSL VPN服务器之间的保密传输后才能到达。从而在两个SSLVPN服务器之间,由SSL协议构建一条安全通道,保护局域网之间的数据传输。此时,SSL VPN服务器充当安全网关的角色。
图4 局域网到局域网模式的SSL VPN系统
参考文献:
[1]徐家臻陈莘萌:基于IPSec与基于SSL的VPN的比较与分析[J].计算机工程与设计,2004,(04)
关键词:SSL协议;安全套接层;安全性
中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)12-2726-03
当前,互联网技术的不断更新和发展,给我们的生活带来了很多便利。但与此同时也带来了很多网络信息安全性的威胁。随着信息网络的发展,信息安全越来越引起人们的关注。如当今流行的电子商务、电子政务、电子邮件等,除了其业务本身,人们更加关心的是其安全性。这样我们需要保证信息的保密性、完整性,通信双方的认证等,这正是过去网络所缺乏。这就有了安全套接层(Security Socket Layer Protocol,简称SSL协议)。它是现在互联网上保证信息安全传输的一种网络协议。
1概述
SSL是由Netscape公司设计的一种开放性协议,利用数据加密技术,保证数据在公开网络中传输不被截取及窃听修改,以保障互联网信息的安全传输。SSL协议是介于传输层和应用层之间的,为应用层提供数据保密服务。其优势在于它与应用层协议独立无关。这样SSL协议可以透明的为应用层协议提供服务。应用层协议在通信之前,SSL协议就将传输的数据加密、完成通信密钥的协商,以及服务器认证工作等。之后,应用层所传输的数据都是被加密的,从而保证通信的安全性。SSL协议目前已经有2.0和3.0版本。现在它已被广泛地用于Web浏览器与服务器之间的身份认证和加密数据传输。
SSL协议提供的安全信道有以下三个特性。
1)私密性:从应用层经过SSL协议的数据,所有的消息都是被加密后才到传输层的。
2)确认性:服务器端是被认证的。
3)可靠性:所有传输的消息都是经过完整性检查的。
2 SSL协议结构
SSL协议的目标在于在TCP的基础上提供安全可靠的传输服务。在SSL的体系结构中包括了SSL握手协议层和SSL记录协议层两个协议子层。这两大协议完成了SSL的大部分工作。SSL握手协议层建立在SSL记录协议层之上。建立在SSL记录协议层上的还有密码参数修改协议、报警协议、应用数据协议等子协议。
图1 SSL体系结构图
2.1 SSL记录协议
SSL记录协议限定了所有要传输的数据的打包,所有的传输数据都被封装在记录中。它提供了通信、身份认证功能。由上层传来的数据信息,将在记录协议层,划分数据分段。依据握手协议中协商的加密算法,给分段的数据压缩、计算MAC值、对数据加密处理,将数据变成记录。添上记录头后,传递到下层的TCP协议。
SSL记录头格式
SSL记录头包括记录头长度、记录数据长度的信息,及记录数据中是否填充数据。当最高位为1时,则不含有填充数据,记录头为两字节,记录数据最大长度为32767字节;当最高位为0时,则含有填充数据,记录头为三个字节,记录数据的最大长度为16383字节。当记录头长度是为三个字节时,次高位有特殊的含义。当次高位为1时,标识所传输的记录是普通的数据记录;当次高位为0时,标识所传输的记录是安全空白记录(被保留用于将来协议的扩展)。
SSL记录数据格式
SSL的记录数据包含三个部分:MAC数据、实际数据和填充数据(若是需要的话)。MAC数据为密钥,实际数据,填充数据,序号的拼接后的散列值。用于检查数据的完整性。
2.2 SSL握手协议层
SSL握手协议层包括握手协议(Handshake Protocol)、密码参数修改协议(SSL Change Cipher Spec Protocol)、应用数据协议(Application Data Protocol)和报警协议(Alert Protocol)。握手协议主要负责协商客户端和服务器端所有使用的参数,包括采用协议版本、加密算法、密钥等;建立独立的安全会话连接,认证双方的身份。密码参数修改协议主要负责协商双方修改密码参数,并指示记录层把即将读/写状态编程当前读/写状态。客户端和服务器均可发送此类消息,通知对方记录将使用新的协商密码说明和密钥。报警协议主要是负责通知对方警告信息。例如关闭通知、错误记录、解压失败、握手失败、无证书、错误证书等等。应用数据协议主要负责将应用数据直接传递给记录协议。
3 SSL协议工作过程
1)由客户端向服务器端发送“ClientHello”信息,以便开始一个新的安全对话连接。信息中将表明客户端密码能力。例如SSL版本,使用的加密算法、签名算法、密钥交换算法、可接受的压缩算法等。
2)由服务器回应客户端发送“SeverHello”信息(如果可以接受其回应的话,否则握手失败。注:客户端和服务器端必须要至少支持一个公共密码对,否则握手将会失败)。“ServerHello”消息将告知服务器的相关安全参数。
3)由服务器向客户端发送它使用的证书和密钥交换信息。若服务器端需要对客户端认证,则还会向客户端发出“数字证书”的请求消息。
4)服务器发出“ServerHello Done”消息并等待客户端响应。
5)客户端收到了“ServerHello Done”以后,将对服务器发送过来的数字证书验证,并检查服务端的安全参数是否可以接受。如果服务器端需要客户端的数字证书的话,则客户端将要发送它的数字证书。如果客户端没有数字证书可有,则发送一个警告信息表明没有数字证书,但将会导致本次握手失败(如果客户端数字证书认证是强制性的话)。
6)客户端发送“客户端密钥交换”消息。消息中包含有“预-主密钥”和消息认证代码( MAC )密钥(消息使用了服务器端公钥加密,故此消息只有服务器可以用私钥解密)。
7)客户端将计算出“主密钥”。然后,客户端发“更改密码规范”消息给服务器,以确定本次传输使用的加密套件和密钥。
8)服务器确定了本次传输使用的加密套件和密钥。完成本次握手。
9)此后的传输的数据都将加密后才传输。
图2 SSL协议工作过程
(标有括号的表示服务器需要验证客户端的情况)
4 SSL安全性分析
1)算法安全性。SSL协议v2/v3均支持的算法有RC2、RC4、IDEA、DES、3DES等。认证算法采用X.509电子证书标准,使用RSA算法进行数字签名。SSL协议通过使用数字证书来完成客户端和服务器端之间的身份验证。通过SSL握手,双方使用非对称密码体制协商并确定本次对话所要使用的加密算法和会话密钥。这样不仅保证了会话密钥协商过程的安全性,而且又克服了非对称密码加密速度慢的缺陷。SSL协议所提供的混合密码体制,可使SSL使用的加密算法和会话密钥适时的变更。此外,协议还提供完整性的检查,保证数据不被篡改。
2)抵抗重放攻击。SSL协议使用了序列号,序列号经加密后传输。在每一次握手都使用了一个随机数来标示本次握手,从而阻止了重放攻击。
5 SSL存在的问题和改进
1)加密强度问题。由于美国对加密技术出口的限制,SSL支持的对称加密算法受到了影响。如密钥长度朝超过40位的对称加密算法RC4、DES等不能用于SSL的数据加密。一般的,使用同一加密算法,密钥位数越高其安全性越强。尽管SSL所支持的加密算法的安全强度都比较高,但出口到我国的仅支持低位密钥算法,削弱了加密算法的安全性。此外加密数据的安全性还取决于密码管理的安全性。同样的,美国对密码技术出口的限制,如在SSL规范中限定RSA算法和DH算法采用512位的密钥。非对称算法如果要保证其安全性,一般是需要1024位以上的。这样使得密钥交换的安全性得不到保证。所以,首先在算法选择上,应当把一些不安全的算法如DES等移去。在实现中选择对称加密算法3DES、IDEA、AES等。在实现SSL时,都应该限定交换密钥长度必须为1024位或更多位。或者可以选用椭圆曲线算法。这样不仅可以密钥比较短,而且处理速度比较快。
2)签名问题。SSL协议不能数字签名。虽然SSL可很好保证数据传输的机密性和完整性,但缺乏数字签名是其在电子商务应用中一大缺憾。而事实上,SSL本身就有对消息进行数字签名和验证的潜力。因为原有的公私钥只是使用在服务器端和客户端之间密钥的交换,并由使用其来签名。基本的思路是,将签名服务作为SSL协议一个可选独立扩展功能,保证其向下兼容性;对发送的所有信息进行签名;利用原有的密码资源;
6结束语
SSL虽然存在一些缺陷,但也不失为一套完善安全的网络通信协议。在其广泛的实践中也证明了其高度的安全性。当然,它只是网络安全的一种工具。而要做到真正的安全还需要多方面的结合,这样才可以打造一个全面的、完善的、安全可靠的网络环境。
参考文献:
[1]方勇.信息系统安全理论与技术[M].北京:高等教育出版社,2008.
[2]卿斯汉.密码学与计算机网络安全[M].北京:清华大学出版社,2001.
ssl协议在传输层与应用层之间对网络连接加密。
SSL及其继任者传输层安全是为网络通信提供安全及数据完整性的一种安全协议。用以保障在Internet上数据传输的安全,利用数据加密技术,可确保数据在网络上的传输过程中不会被截取及窃听。一般通用的规格为40bit的安全标准,美国则已推出128bit的更高安全标准。只要3.0版本的I.E或Netscape浏览器即可支持SSL。
SSL协议可分为两层。SSL记录协议它建立在可靠的传输协议之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。SSL握手协议它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
(来源:文章屋网 )
关键词:SSL;电子商务;数据安全
1 引言
随着计算机技术和Internet的飞速发展,商业活动实现了电子化,从而发展成为电子商务。电子商务借助互联网、企业内部网和增值网等计算机与网络和现代通信技术,按照一定的标准,利用电子化工具,将传统的商业活动的各个环节电子化、网络化,从而以数字化方式来进行交易活动和相关服务活动。
电子商务包括电子货币交换、供应链管理、电子交易市场、网络营销、在线事务处理、电子数据交换(EDI)、存货管理和自动数据收集系统。电子商务完全不同于传统的商务活动,它是一种以网络为载体的新的商务运作方式。
(1)SSL不能提供交易的不可否认性。SSL协议是基于Web应用的安全协议,它只能提供安全认证,保证SSL链路上的数据完整性和保密性。却不能对电子商务的交易应用层的信息进行数字签名,因此,SSL不能提供交易的不可否认性,这可以说是SSL在电子商务中最大的缺陷。
(2)SSL只能提供客户机到服务器之间的两方认证,无法适应电子商务中的多方交易业务。
(3)SSL易遭受Change Cipher Spec消息丢弃攻击。由于SSL握手协议中存在一个漏洞:在finished消息中没有对变换加密的说明消息进行认证处理,在接收到该消息前,所有的密码族都不做任何加密处理和MAC保护,只有在接收到Change Cipher Spec消息之后,记录层才开始对通信数据进行加密和完整性保护。这种处理机制使得SSL易遭受Change Cipher Spec消息丢弃攻击。
(4)SSL无法避免通信业务流分析攻击。由于SSL位于TCP/IP的协议层之上,因此,无法对TCP/IP协议头部进行保护,导致潜在的隐患。攻击者通过获取IP地址、URL请求的长度以及返回的Web页面的长度等信息,可以分析出用户访问的目标,再加上SSL协议只支持对 块密码的随机填充,没有提供对流式密码算法的支持,使得SSL无法阻止这类攻击。
4 总结
电子商务正飞速地发展。用于保障电子商务活动的安全协议主要有S-HTTP、STT、IKP、SET和SSL。其中SSL协议是目前电子商务采用的主要的网上交易协议。SSL协议采用了加密、认证等安全措施,结合了Hash算法,较好地保证了数据在传输过程中的保密性、可靠性和完整性,在一定程度上放置了欺骗、篡改、重放等攻击。本文在介绍SSL协议栈及其工作原理和机制的基础上,对基于SSL的电子商务的安全性进行了分析。
参考文献:
[1] 邢双慧.浅谈电子商务与SSL协议[J].硅谷,2010(01):37
[关键词] 电子支付 安全 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
关键词:Web服务;端到端安全;SSL;ESSL
中图分类号:TP309文献标识码:A文章编号:1009-3044(2009)13-3383-02
1 引言
Web 服务是一个崭新的分布式计算模型,是Web上数据和信息集成的有效机制[3]。Web服务的新型构架,Web服务的高效执行方式,Web服务与其他成熟技术的有机结合以及Web服务的集成是解决现实应用问题的重要技术。但是,Web 服务的安全问题也日益的突出,并逐渐成为Web 服务向前发展的一个瓶颈。当然国内外,Web 服务安全的研究有也不少的成果。但是还是不能够完全满足Web服务的端到端的安全需求。本文讨论了SSL在保障Web服务安全方面不足,并在此基础上提出扩展的SSL,用以满足Web 服务端到端的安全需求,在最后对扩展的协议进行分析,说明了它的优势以及应用的意义。
2 SSL在Web 服务安全机制中的应用分析
2.1 Web 服务安全需求分析
作为典型的分布式应用,Web 服务的安全要求包括:数据的机密性、数据的完整性、不可否认性、身份认证、访问控制、审计和安全管理等多个方面,同时还具有自身的特点[1]。对于Web 服务来说,保障其安全需要end-to-end的安全。当然这并不是说point-to-point的安全机制以及其他的传统的安全不可以应用到Web 服务,恰恰相反,由于目前大多数哦Web 服务使用http作为其传输层,因此在依赖于http原来的安全机制都可以在Web services中使用[1],例如防墙、SSL等。Web 服务在实施的过程中也许需要point-to-point 和end-to-end其中的一种或两种的安全机制,这取决于受到的威胁的所处层次[1]。如果对于安全性要求不高或者威胁的层次比较低的话,像SSL、防火墙等都可以发挥很好的作用[1]。
2.2 SSL协议概述
SSL 协议(Secure Socket Layer)是Netscape 推出的一种安全通信协议,它提供Internet上保密通信的安全协议。SSL的Client和Server在正式交换应用数据之前,需要建立会话密钥以及有选择地进行身份验证。会话和连接是SSL的两个重要的贯穿始终的概念。连接建立在会话的基础上,每个连接与一个会话关联。Cipher Spec和master secret组成一个会话的主要加密参数,可被多个连接共享。每个连接有独立的会话密钥。
SSL的安全服务位于TCP和应用层之间,对应用层是透明的[2,5],可为应用层如:HTTP、FTP、SMTP等提供安全业务,服务对象主要是Web 应用,即客户浏览器和服务器。
SSL有三种验证模式[5]:
1) Client和Server都被验证;
2) 只验证Server、不验证Client;
3) 完全匿名。
SSL协议提供的服务可以归纳为如下三个方面[5]:
1) 连接是保密的,对称加密用于加密数据;
2) 实体的身份通过公钥加密得到验证;
3) 连接是可靠的,带密钥的MAC用于保证信息的完整性。
2.3 和SSL在Web服务中的应用分析
尽管SSL在Web 服务中能够提供一定的安全保障,但是它只能够提供点对点的安全,如图1所示,而无法保障端到端的安全,如图2所示,在高要求或者威胁层次较高的时候,它就无法满足要求。在Web 服务的典型应用中,SOAP消息往往不仅仅只是在两个节点间传输,更多的情况下是要经过很多的中间节点[6-7],而且每个中间节点都可能会对SOAP消息进行处理。虽然SSL可以确保SOAP消息在两个相邻的节点之间的安全,但是由于在节点内部SOAP消息是以明文出现的,所以,一旦其中一个节点受到了攻击或者恶意的修改SOAP消息,都会造成SOAP消息的泄漏或异常。因此,SSL对于SOAP消息的端到端的安全性是不够的[4],必须有一种更高级级别的安全机制作为保障。
3 扩展的ESSL
为了解决上面我们提到SSL协议在保障Web服务安全中的不足,对SLL进行扩展,称之为扩展的SSL协议(Extended SSL,简称ESSL),这个改进保留了SSL原有的安全特性,又可以满足Web服务的end-to-end的安全需求。(ESSL术语只在本文中适用)
3.1 相关标记
为了准确表达,我们使用下面标记:
Ii:第i个节点,其中I1是消息的原始发送者(Requester/Provider),In是消息最终收到的消息的(Requester/Provider),0
info:原始的信息
infoi:经过Ii修改后的信息,由Ii加密后发送给Ii+1
Ceri:Ii的证书
h():使用安全的hash函数进行对消息的摘要
ski:Ii的私钥
pki:Ii的公钥
sgni:Ii数字的签名
Sign(ski,m):Ii用自己的私钥对消息m进行数字签名
Rec(pki,s):用Ii的公钥对签名s进行验证
E(pki,m):用Ii的公钥加密消息m
D(ski,s):Ii用自己的私钥解密加密的消息s
ki:Ii随机生成的对称密钥
E(ki,m):用ki进行加密
D(ki,s):用ki进行解密
3.2 协议的流程的详细描述
首先要说明的是,两个相互通信的节点,在进行消息的传递之前要进行握手,在握手的过程主要是交换相互的数字证书以及协商相关的加密算法等。
协议的流程如下:
1) I1:生成签名:sgn1=Sign(sk1,h(info)),加密信息:E(k1,info),生成数字信封:E(pk2,k1),I1把(sgn1,E(k1,info),E(k1,info),E(pk2,k1),(sgn1,Cer1))发送给下一个通信节点。
2) 中间节点Ii(1
3) In:收到消息(sgnn-1,E (kn-1,infon-1), E (kn-1,info),E(pkn,kn-1),(sgn1,Cer1,)),In首先解开数字信封D(skn,E(pkn,kn-1)),获得对称密钥kn-1,然后获取信息info=D(kn-1,E(kn-1,info))和infon-1= D(kn-1,E(kn-1,infon-1)),验证In-1的签名Rec (pkn-1,sgnn-1)=h(D(kn-1,E(kn-1,infon-1)))?,然后在验证I1的签名和原始信息的完整性Rec (pk1,sgn1)=h(D(kn-1,E(kn-1,info)))?。如果验证通过就进行下一步的操作,如果没有就终止通信。
协议中对消息的解密以及验证的流程如图3所示。
协议中对消息加密处理的流程图如图4所示。
说明:当i=1的时候,虚线框中的处理过程就不需要了,因为info1=info
4 ESSL协议的分析
4.1 安全性分析
从ESSL的流程可以看出,SSL原有的安全机制都被包含,同时由于在消息中加入原始信息发送者对原始信息的签名以及它的数字证书,另外在原始信息和修改后的信息都被发送到最终接收者In那里,这样最终的接收者In不仅能够看出来中间节点对原始信息的修改,同时还可以验证原始的信息及其签名和消息的完整性。另外,协议使用原来的数字信封以及对称加密,使得消息的机密性也有了保障。(下转第3397页)
(上接第3384页)
综上所述,使用ESSL可以保证Web服务端到端的安全。
4.2 速度分析
为了能够达到端到端的安全需求,ESSL多发送了很多“冗余”的信息并且做了附加的加密和验证,这样对于传送的速度以及验证速度势必有所影响。但是,为了信息的安全或者特殊的安全需要,可以用性能换取高安全。
5 结束语
该文分析了Web服务的安全需求,指出了现有的SSL在保障Web服务安全中存在的不足,并在SSL协议的基础上做出了改进,提出了ESSL,使其达到Web服务端到端的安全需求,从而能够保障Web 服务的端到端的安全。另外,在其它要求端到端安全的环境中,ESSL也有着广泛的用途。
参考文献:
[1] Web Services Architecture[EB/OL].(2004-02)./2002/ws/.
[2] 宋志敏,王卫京,南相浩.SSL V3.0及其安全性分析[J].计算机工程与应用2000(10):145-147.
[3] 岳昆,王晓玲,周傲.Web 服务核心支撑技术:研究综述[J].软件学报,2004,15(3):428-442.
[4] IBM Corporation.Web Service Conceptual Architecture (WSCA1.0) [EB/OL]./developerworks/cn/views/webservices/libraryview.jsp.
[5] 范红,冯登国.安全协议理论与方法[M].北京:科学出版社,2003.
[6] 钱权,严家德.Web Service的安全机制[J].计算机工程,2007,33(22):190-192.
[7] 石伟鹏,杨小虎.基于SOAP协议的Web Service安全基础规范(WS-Security)[J].计算机应用研究,2003(2):100-102.
关键词:TLS1.2;安全协议;计算模型
中图分类号:TP393
文献标识码:A 文章编号:1672-7800(2015)005-0154-04
作者简介:牛乐园(1990-),女,河南许昌人,中南民族大学计算机科学学院硕士研究生,研究方向为信息安全。
0 引言
人类建立了通信系统后,如何保证通信安全始终是一个重要问题。伴随着现代通信系统的建立,人们利用数学理论找到了一些行之有效的方法来保证数字通信安全。简单而言就是将双方通信的过程进行保密处理,比如对双方通信的内容进行加密,这样可有效防止偷听者轻易截获通信内容。SSL(Secure Sockets Layer) 及其后续版本 TLS(Transport Layer Security)是目前较为成熟的通信加密协议,常被用于在客户端和服务器之间建立加密通信通道。TLS是安全传输层协议,用于在两个通信应用程序之间提供保密性和数据完整性。截至目前其版本有1.0,1.1、1.2[1],由两层协议组成:TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。
1 TLS协议结构
TLS协议是对SSL协议规范后整理的协议版本,建立在可靠的传输层上,如TCP(UDP则不行)。应用层可利用TLS协议传输各种数据,来保证数据的安全性和保密性[2]。
安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成:TLS 记录协议(TLS Record)和TLS握手协议(TLS Handshake)。较低层为 TLS记录协议,位于某个可靠的传输协议(如TCP)上。
TLS记录协议是一种分层协议。每一层中的信息可能包含长度、描述和内容等字段。记录协议支持信息传输、将数据分段到可处理块、压缩数据、应用 MAC、加密以及传输结果等,并对接收到的数据进行解密、校验、解压缩、重组,然后将它们传送到高层客户机。
TLS记录层从高层接收任意大小不间断的连续数据。密钥计算:记录协议通过算法从握手协议提供的安全参数中产生密钥、IV 和 MAC 密钥。TLS 握手协议由3个子协议组构成,允许对等双方在记录层的安全参数上达成一致、自我认证、例示协商安全参数、互相报告出错条件。
TLS握手协议由3种协议封装,包括改变密码规格协议、警惕协议、握手协议。TLS协议结构如图1所示。
2 TLS1.2消息流程
在整个通讯过程中,为实现TLS的安全连接,服务端与客户端要经历如下5个阶段[3]:①Client申请链接,包含自己可以实现的算法列表以及其它信息;②Server回应链接,回应中确定了这次通信所使用的算法,将证书发送给对方,证书中包含了自己的身份和公钥;③Client在收到消息后会生成一个秘密消息ClientKeyExchange――(此秘密消息经处理后,将用作加密密钥(会话密钥)),用Web服务器的公钥加密并传至Server;④Server再用私钥解密秘密消息ClientKeyExchange,并进行处理,生成会话密钥(用于之后的数据加密),会话密钥协商成功;⑤Client和Server得到会话密钥,并用此会话密钥进行数据加密。
TLS1.2在传输层协议的消息主要包含8条消息,消息结构如图2所示,分别是ClientHello版本协商、ServerHello版本协商、Server Certificate证书消息、HelloDone接收结束标识、 ClientKeyExchange即Client交换密钥消息、Client的Finished消息、CertificateVeri验证证书消息、Server的Finished消息。
2.1 ClientHello和消息
ClientServer
client_version|| client_random|| session_id|| cipher_suites|| compression_methods|| extensions
消息描述:该消息包括客户端的版本号client_version,用于告知服务器client可以支持的协议最高版本,来协商安全协议版本。client_random是client产生的一个随机数,由client的日期和时间加上28字节的伪随机数组成,用于后面的主密钥计算。session_id由服务连接得到,发送给server来建立一个新的会话连接。cipher_suites是client提供给server可供选择的密码套件,用于协商密钥交换,数据加密以及散列算法。compression_methods是客户端支持的压缩算法。extensions是客户端的扩展域。
client_version: Protocol version(协议版本),该字段表明了客户能够支持的最高协议版本3.3。
random:它由客户的日期和时间加上28字节的伪随机数组成,该客户随机数将用于计算master secret(主秘密)和prevent replay attacks(防止重放攻击)。
session_id:一个会话ID标识一个可用的或者可恢复的会话状态。一个空的会话ID表示客户想建立一个新的TLS连接或者会话,而一个非空的会话ID表明客户想恢复一个先前的会话。session_id有3个来源:①之前的会话连接;②当前连接,客户端仅仅想通过更新random结构得到连接值时使用;③当前激活的连接,为了建立几个独立的连接而不再重复发起连接握手。
2.2 ServerHello消息
ServerClient:
server_version||server_random|| session_id|| cipher_suites|| compression_methods|| extensions
消息描述:该消息包含6个消息项,server_version取客户端支持的最高版本号和服务端支持的最高版本号中的较低者,本文所用的是TLS1.2。server _random是服务端生成的随机数,由服务器的时间戳加上28字节的伪随机数组成,也用于主密钥的生成。session_id提供了与当前连接相对应的会话的标识信息。从客户端处接收到会话标识后,服务器将查找其缓存以便找到一个匹配的session_id。
server_version: Protocol version(协议版本),取客户端支持的最高版本号和服务端支持的最高版本号中的较低者。TLS版本为3.3。random:它由客户的日期和时间加上28字节的伪随机数组成,该客户随机数将用于计算master secret(主秘密)和prevent replay attacks(防止重放攻击)。session_id:该域提供了与当前连接相对应的会话的标识信息。如果从客户端接收到的会话标识符非空,则服务器将查找其缓存以便找到一个匹配。
2.3 Server Certificate消息
ServerClient:
version||serialNumber||algorithmIdentifier||issuer||utcTime||subject_name||subject_key_info|| signature
消息描述:该项消息为可选项,证书主要包含4部分内容,version是证书版本,文章统一定为X509v3。主体名称指明使用该证书的用户为server_subject。subject_key_info是证书包含的公钥信息,该消息项有两项内容:一个是证书的公钥,发送给client后用于加密client生成的预主密钥,并把密文信息发送给server。server收到该密文信息后可以使用自己的私钥解密得到预主密钥;另一个是所用的散列算法。signature:证书验证签名信息,用以验证证书。version:证书版本号,为X.509V3。subject_name:证书主体名称。
subject_key_info:标识了两个重要信息:①主体拥有的公钥的值;②公钥所应用算法的标识符。证书私钥对证书的所有域及这些域的Hash值一起加密。
2.4 ServerKeyExchange消息
ServerClient:
KeyExchangeAlgorithm|| ServerDHParams
KeyExchangeAlgorithm:密钥交换算法,文章定义的密钥交换算法为RSA。ServerDHParams:Diffi-Hellman参数,若交换算法为RSA,则此项为空。
2.5 CertificateRequest消息
ServerClient:
certificate_types|| supported_signature_algorithms|| certificate_authorities
消息描述: 可选消息项,该消息是Server服务器向Client请求验证证书信息。在一般应用中只对Server服务器进行认证,而Server服务器要允许只有某些授权的Client才能访问服务器,此时需要用到该消息对Client进行认证。Client认证是通过Server服务器给Client发送一条 CertificateRequest消息而开始,如果Server发送这条消息,则Client必须向server发送自己的证书。客户端收到该消息后,发送一条 Certifcate 消息(与服务器传送证书的消息一样)和一条 CertificateVerify 消息予以应答。
certificate_type:客户端提供的证书类型,该处为rsa_sign。supported_signature_algorithms:可以验证server的散列/签名算法对。certificate_authorities:可以接受证书消息的特定名称。
2.6 Client Certificate消息
ClientServer:
version||serialNumber||algorithmIdentifier||issuer||utcTime||subject_name||subject_key_info|| signature
消息描述:可选消息项,该证书主要包含4部分内容,version是证书版本,文章统一定为X509v3。主体名称指明使用该证书的用户为server_subject。subject_key_info是证书包含的主要公钥信息,该消息项有两项内容:一个是证书的公钥,另一个是所用的散列算法。signature是证书验证签名信息,用以验证证书。
version:证书的版本号,为X.509V3。subject_name:证书主体名称。subject_key_info:标识了两个重要信息:①主体拥有的公钥的值;②公钥所应用的算法的标识符。算法标识符指定公钥算法和散列算法(如RSA和SHA-1)。signature:用证书私钥对证书的所有域及这些域的Hash值一起加密。
2.7 ClientKeyExchange消息
ClientServer:
KeyExchangeAlgorithm|| EncryptedPreMasterSecret
消息描述:该消息是密钥交换消息。之前的消息协商中规定密钥交换算法为RSA算法,所以该消息中KeyExchangeAlgorithm的内容为RSA。此时,client随机生成一个48字节的预主密钥,用从server证书得来的公钥来加密这个预主密钥,加密算法为RSA算法。client加密预主密钥并在ClientKeyExchange消息中将密文EncryptedPreMasterSecret发给server,使server得到预主密钥。
KeyExchangeAlgorithm:算法选择为RSA。EncryptedPreMasterSecret:客户端生成一个48字节的预主密钥,用从server证书得来的公钥来加密该预主密钥,加密预主密钥消息并发送密文。
2.8 CertificateVerif消息
ClientServer
handshake_messages[handshake_messages_length]
消息描述:可选消息项,如果服务器请求验证客户端,则该消息完成服务器验证过程。客户端发送一个certificate_verify消息,其中包含一个签名,对从第一条消息以来的所有握手消息的HMAC值(用master_secret)进行签名。handshake_messages指所有发送或接收的握手消息,从clienthello消息开始到CertificateVerif消息之前(不包括CertificateVerif消息)的所有消息集合,包括握手消息的类型和变长字段。这是到目前为止HandShake结构的整合。
3 Blanchet演算模型建立流程
Blanchet演算模型主要包括类型定义、时间定义、方法定义、通道定义、时间声明、初始化进程描述[4]、客户端进程描述与服务端进程描述。TLS1.2最主要的功能体现在客户端与服务端的消息传递。
3.1 协议事件声明
在Blanchet演算中首先要声明要证明的事件。TLS1.2协议的消息流程中最重要的就是认证性和密钥的保密性[5]。认证性包括客户端对服务端的认证和服务端对客户端的认证,保密性是对会话密钥的秘密性进行认证。表示server事件发生之前client事件一定发生,用来验证服务端用户。在更严格的定义下进行服务端验证,事件声明代码如下。
event server(output).
event client(output).
query x:output;
event server(x)==>client(x).
query x:output;
event inj:server(x)==>inj:client(x).
query secret premastersecret.
3.2 初始化进程
协议模型初始化进程如下所示,ClientProcess表示客户端进程[6],ServerProcess表示服务端端进程,表示多个ClientProcess进程并发执行,集中一次模拟现实协议执行。
process
in(start,());
new seedone:rsakeyseed;
let pkeyrsa:rsapkey=rsapkgen(seedone) in
let skeyrsa:rsaskey=rsaskgen(seedone) in
new seedtwo:keyseed;
let signpkey:pkey=pkgen(seedtwo) in
let signskey:skey=skgen(seedtwo) in
new keyhash:hashkey;
out(c,(pkeyrsa,signpkey,keyhash));
((! N ClientProcess) |
(! N ServerProcess) )
3.3 客户端和服务端进程
客户端的消息流程包括版本协商、算法协商、密钥协商、密钥交换和请求验证。版本协商是协商客户端、服务端可以通用的版本[7],一般是客户端和服务端都支持的最高版本,密钥协商完成后Client向Server发送verifydata认证请求消息,内容包括username、servicename、methodname,method_specific,请求Server验证身份,并在此定义对客户端的验证事件client(verifydata)。
服务端进程首先接收客户端进程发送的版本信息[8],并与自己的版本信息匹配协商得到协商版本client_version。版本信息协商完成后接收客户端所支持的算法信息,至此算法协商完成。进入密钥协商阶段,首先Server接收Client发送的密钥参数信息c_s_random_s,用来计算hash验证;Server收到Client的验证请求后对Client进行验证并接收Client发来的验证消息,用所收到的所有消息计算验证信息。在此插入事件event server(verifydata_fc)来验证客户端。
3.4 验证结果
本文在介绍TLS1.2协议的基础上对其数据流程进行分析[9],使用Blanchet建立模型并分析其安全性和认证性。经过一系列的流程跟进并使用自动化证明工具Cryptoverif对TLS1.2进行模型建立,经过一系列的Game转换得出分析结果如图3所示[10]。结果证明,TLS1.2协议的会话密钥具有安全性,在认证阶段能够对客户端通过消息签名进行验证。
4 结语
为了研究TLS1.2协议在应用中的安全性,本文对TLS1.2协议的消息流程进行了分析。通过对每一步消息流中消息项的研究分析,得出TLS1.2协议的整体消息结构,最终实现服务端对客户端的验证流程分析。基于Blanchet演算对分析的消息流程应用一致性对服务端认证客户端和客户端对服务端的验证建立模型。协议模型通过协议转换工具转换为CryptoVerif的输入代码TLS1.2.cv,使用CryptoVerif对模型进行分析,并证明了TLS1.2协议的安全性与认证性。后续研究中将给出TLS1.2协议的Java安全代码,并分析其安全性。
参考文献:
[1] 陈力琼,陈克非.认证测试方法对TLS协议的分析及其应用[J].计算机应用与软件,2008,25(11):6-7.
[2] 于代荣,杨扬,马炳先,等.基于身份的TLS协议及其BAN逻辑分析[J].计算机工程,2011,37(1):142-144.
[3] MORRISSEY P, P SMART N,WARINSCHI B.The TLS handshake protocol: a modular analysis[J]. Journal of Cryptology,2010,23(2):187-223.
[4] 卢敏,申明冉.基于RSA签名的TLS协议的新攻击发现及其改进[J].消费电子,2013(14):69-70.
[5] 高志伟,耿金阳.基于优先级策略的 TLS 握手协议研究[J].石家庄铁道大学学报:自然科学版,2014(3):69-74.
[6] 唐郑熠,李祥.Dolev-Yao攻击者模型的形式化描述[J].计算机工程与科学,2010(8):36-38.
[7] 邵飞.基于概率进程演算的安全协议自动化分析技术研究[D].武汉:中南民族大学,2011.
[8] 朱玉娜.密码协议符号分析方法的计算可靠性研究[D].郑州:信息工程大学,2008.
本文通过着重阐述对HONEYWELL PKS 和S7-200的modbus rtu 通讯的各种参数的设置,以实现HONEYWELLPKS 和S7-200之间的通讯。
主要参数设备:S7-200CPUMBUS_INIT MBUS_SLAVE终端服务器 交换机等
中图分类号:TP368文献标识码: A
引言:
在鞍山热能研究院碳素总厂针状焦工程中,通过一年多的工作,我们通过在HONEYWELL PKS 的画面与下位机的编程调试过程中,接触了多种通讯协议,使我对HONEYWELL PKS 和S7-200之间的通讯有个更深刻的认识,以下是我对HONEYWELL PKS与S7-200之间MODBUS RTU从站协议通讯的论述。
在S7-200中MODBUS RTU从站指令库只支持CPU上的通信0口(Port0), 是通过S7-200的自由口通信模式实现,它支持 STEP 7-Micro/WIN32 V3.2以上版本的编程软件,通讯前我们要检查Micro/WIN的指令树中是否存在MODBUS RTU从站指令库,库中应当包括MBUS_INIT和MBUS_SLAVE两个子程序。如果没有,必须安装Micro/WIN32 V3.2的Instruction Library(指令库)软件包,如图:
在编程时,我们一般使用SM0.1 来初始化MBUS_INIT,使用SM0.0来调用MBUS_SLAVE。
在我们对MBUS_INIT和MBUS_SLAVE进行编程设置时,我们一定要先明白每个管脚的意义与作用,下面我们对管脚逐一的剖析认识一下。
图1
在MBUS_INIT中,Mode模式选择:启动/停止MODBUS, 1=启动;0=停止
Addr 从站地址:MOUBUS从站地址,取值1~247
Baud 波特率:可选1200,2400,4800,9600,19200,38400,57600,115200
Parity奇偶校验: 0=无校验;1=奇校验;2=偶校验
Delay 延时:附加字符间延时,缺省值为0
MaxIQ最大I/Q位:参与通信的最大I/O点数,S7-200的I/O映像区为128/128,缺省值为128
MaxAI最大AI字数:参与通信的最大AI通道数,可为16或32 MaxHold最大保持寄存器区:参与通信的V存储区字(VW)
Holdst~保持寄存器区起始地址:以&VBx指定(间接寻址方式)
Done : 初始化完成标志:成功初始化后置1
Error :初始化错误代码
在MBUS_SLAVE中,Done :MODBUS执行:通信中时置1,无MODBUS通信活动时为 0
Error : 错误代码:0=无错误
MaxHold和HoldStart指定的保持寄存器区,是在S7-200 CPU的V数据存储区中分配,此数据区不能和库指令数据区有任何重叠,否则在运行时会产生错误,不能正常通信。我们一定要注意Modbus 中的保持寄存器区是按“字”寻址,即MaxHold规定的是VW而不是VB的个数。在图1的例子中,规定了 MODBUS 保持寄存器区从 VB700开始(HoldStart = VB700,保持区不一定要从VB0开始),并且保持寄存器为500个字(MaxHold=500),因保持寄存器以字(两个字节)为单位,实际上这个通信缓冲区占用了VB700~VB1699共1000个字节。因此分配库指令保留数据区时不能在VB700~VB1699之内。同时我们要注意的是V存储区大小与CPU型号有关,不同型号的CPU的V数据存储区大小不同,所以我们应根据需要选择MODBUS保持寄存器区域的大小.在这里我们对MBUS_INIT和MBUS_SLAVE进行如图1的设置。
我们通过一个终端服务器来实现485通讯转换为以太网通讯,如图2:
485通讯电缆
以太网通讯电缆
以太网通讯电缆
图2
注意:用以太网线连接终端服务器和交换机时,要注意它们连接的端口间的传输速率是否相同,不相
同一定要把它们设为相同的传输速率,这样终端服务器和交换机之间才能进行通讯。
在S7-200与MODBUS的地址转换中我们参照如图3:
Modbus地址 S7-200数据区
00001 ~ 00128 Q0.0 ~ Q15.7
10001 ~ 10128 I0.0 ~ I15.7
30001 ~ 30032 AIW0 ~ AIW62
40001 ~ 4xxxx T ~ T + 2 * (xxxx -1)
图3
T代表S7-200中的起始地址的数值,如图1中HoldStart = VB700,T就等于700.对应的MODBUS地址就是40001.
在HONEYWELLPKS中,我们要在QuickBuilder (CONFIGURATIONSTUDIOCONTROLSTRATEGYSCADACONTROL)中对通道、控制器、点进行设置,如图4
图4
在进入下面的画面时,我们单击图5标栏中的“+”会弹出一个窗口如图6:
图5