基于SSL协议在网络通信中的应用的探讨

2012-05-08 04:41张杨
电脑知识与技术 2012年7期
关键词:网络通信信息安全

张杨

摘要:SSL协议是为计算机之间提供安全通道的一种安全协议,数据在传输过程中是加密的。该文已无线视频监控系统为研究对象,在系统中引入SSL协议,把该协议应用在服务器和客户端的网络通信中,从而可以实现数据在传输的安全性、身份认证和信息的完整性。

关键词:SSL协议;信息安全;网络通信

中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)07-1540-02

SSL Protocol in the Network Communication of the Application

ZHANG Yang

(Liaoning University Computing Center, Shenyang 110036, China)

Abstract: SSL protocol is to provide a secure channel between computers a security protocol, data transmission is encrypted. This article has wireless video surveillance system for the study, the introduction of the SSL protocol in the system, the application of the protocol on the server and the clients network communication, which can achieve data transmission security, authentication and message integrity.

Key words: SSL protocol; information security; network communication

无线视频监控系统服务器和客户端之间采用的C/S模式组成的,实现对视频信号实时采集和压缩编码后,将图像传输到指定的视频服务器上。那么命令信息在传输过程中,数据的安全性是我们需要解决的重要问题。所以在该系统中引入了SSL协议,把SSL协议应用在服务器和客户端的网络通信中,通过数据加密提高信息的安全性。

1系统设计原则和目标

1.1系统设计原则

该系统的服务器和客户端都是在windows操作系统利用VC的socket建立连接,实现网络通信。考虑到服务器和客户端之间数据传输的安全性和有效性,设计过程中注意以下几个方面:

1)并发性:因为服务器和客户端之间建立联系,一般是一台服务器对应多个客户端进行通信的,每个终端优先级是平等的,为了实现客户端的并发性功能,在服务器端采用VC中的多线程技术,使得每个客户端都能和服务器同时产生通信。

2)安全性:该系统是服務器和客户端之间利用socket通信,客户端向服务器发送请求命令,服务器收到后回应请求,如果在通信过程中命令信息不加密,信息容易被非法窃取,直接通过TCP协议传输信息是不安全的,所以要引入SSL协议,使所有的命令信息是加密传输的,保证了信息的安全性。

3)实时性:由于视频监控系统对画面的实时性要求非常高的,如果图像也是通过加密传输的话,会严重影响图像的传输速率,也就失去了实时性的要求,所以,我们在处理图像传输时就不像命令信息一样通过SSL加密传输了,满足了图像的实时性要求。1.2系统设计的目标

该系统实现的目标就是服务器端和客户端建立连接,满足并发性的要求;在通信过程中,双方发送的命令信息通过SSL加密传输,提高安全性;图像传输通过TCP协议传输,满足视频传输的实时性。

2网络通信模块的设计

主要讨论的是服务器和客户端之间的网络通信问题,服务器和客户端之间有两种信息:服务器向客户端转发的视频流信息;服务器和客户端之间传输的命令信息。从信息的安全性考虑,在该系统中引入SSL加密协议,在数据传输过程中,即使数据被黑客窃取也不会将数据还原。确保了数据的安全性。

因为监控视频对图像的实时性要求非常高,不能有太长的时间延迟,而视频在传输过程中产生的流量非常之大,直接通过TCP协议传输视频信息可以有效降低时间延迟。

因此,通过SSL协议传输各种命令信息,我们可以把SSL通信模块封装成sslclient类和sslserver类,提供了接口函数,只需要调用对应的API就可以实现SSL加密通信。

3 SSL网络通信技术的实现

3.1 SSL通信模块的工作流程

该系统的整个结构可以分为服务器和客户端两个部分组成,而其中的SSL通信模块为现实这两个部分之间的数据通信的安全传输提供服务。主要从外部和内部两个方面来分析,从外部来看,系统包括初始化握手部分和数据传输部分两个部分内容,这两个部分的内容具体对应SSL协议的“握手协议”和“记录协议”。从内部来看,SSL模块可划分为初始化、SSL连接、身份认证和数据传输几个模块,初始化主要为SSL连接做准备工作,身份认证主要是验证对方数字证书以证明身份的有效性。如果服务器也要求进行客户端身份认证,会以同样的方法对客户端的证书进行验证。当服务器和客户端互相进行验证之后。会在两者之间成功建立SSL连接,形成一个安全数据传输通道,传输数据类似于TCP的套接字,直接写入或者读取数据。如图1所示。

图1 SSL通信模块的结构图

3.2实现的过程

在通信模块中,服务器实现的过程很简单,和客户端实现的过程类似,服务器等待客户端发送请求的连接,之后初始化一条SSL连接,它就从客户端读取或写入数据发送到客户端。按照功能也可以分为四部分:初始化过程、连接过程、身份认证过程和数据传输。

1)初始化过程:客户端的开发时调用openssl函数实现的,首先是初始化SSL库,在选择会话连接所使用的协议:ssl_method* sslv3_client_method();再去申请SSL会话的CTX:ssl_ctx* ssl_ctx_new(ssl_method* meth);,目的是连接对象进行SSL握手、数据的读写;最后是家在私有密钥和数字证书并设置加密套件。

然而服务器初始化过程和客户端初始化过程类似,不同只是服务器调用sslv3_server_method()函数来实现的。

2)连接过程:服务器调用listen函数开始监听客户端的TCP连接请求,调用accept函数接受客户端的TCP连接;申请一个BIO对象,把SSL绑在在这个对象上;调用SSL的accept函数接受客户端的SSL连接。

3)身份认证:由于系统采用双向身份认证机制进行身份认证,所以服务器和客户端的证书都要互相进行认证方可正常通信,二者进行信息对比,如果一致,表明验证通过,否则将关闭与客户端之间的连接。

4)数据传输:服务器与客户端建立连接后就可传输数据,所有数据是经SS加密处理后进行传输的。

4结束语

在当今信息化飞速发展的社会中,信息数据在日常生活和工作中显得越来越重要,所以信息安全的重要性也越来越受到人们的重视,数据在保存和传输过程中如何可以防止黑客窃取,正是该文研究的对象。该文以视频监控作为实例来研究,既要保证视频传输的实时性,又要保障数据的安全性,所以我们采用服务器和客户端之间采用灵活的双重连接制,通过SSL协议进行数据加密传输,提高了机密信息传输的安全性。

参考文献:

[1]付沙,何诚,文旭华.基于SSL协议的安全网络通信的理论和实现[J].计算机与现代,2006(11).

[2]曾强.网络安全协议SSL原理及应用[D].天津:天津大学,2005.

[3]唐玲.数字证书系统的设计研究[D].合肥:合肥工业大学,2004.

[4]韩澄宗.网络实验室中的视频监控系统[D].杭州:浙江大学,2006.

[5]张磊.应用层加密传输VPN的研究与实现[D].西安:西安电子科技大学,2007.

[6]李伟,张大勇.SSL安全传输协议在网络通信中的应用研究[J].计算机应用,2005(5).

[7]于瑞华.SSL协议实现与PKI体系的支持[J].中国人民公安大学学报:自然科学版,2004(1).

猜你喜欢
网络通信信息安全
《信息安全与通信保密》征稿函
基于网络通信的智能照明系统设计
信息安全专业人才培养探索与实践
基于CAN总线的网络通信信道的建模与研究
计算机网络通信常见问题与技术发展研究
网络通信中信息隐藏技术的应用
保护信息安全要滴水不漏
基于网络通信的校园智能音箱设计
高校信息安全防护
谈计算机网络通信常见问题及技术发展