基于HTTPS的统一通信系统安全设计
扫描二维码
随时随地手机看文章
统一通信由于融合了传统通信网络和计算机网络,故可通过丰富的终端软件和网络Web服务的结合,向用户提供语音通信、视频通信、IM通信(即时通信)、协同办公等综合应用业务服务。在统一通信平台的使用过程中,服务器中充斥着大量来自各个客户端、各个服务器的大量通信数据。考虑到网络的复杂性以及诸多不安全因素,几乎所有通过Web服务提供的企业应用程序都需要有一定的安全性。同时,个人信息等数据资料对于一个企业来说,都是非常重要的资产,想要确保这些数据资料的安全和完整,拥有一个具有良好安全性的系统是必不可少的。
1 HTTPS简介
HTTPS(SecureHypertextTransferProtocol,安全超文本传输协议)是基于HTTP开发的协议,可用于客户计算机和服务器之间的信息交换。它们在交换信息的过程中使用的是SSL(SecuritySocketLayer,安全套接字层)。
HTTPS和HTTP的区别在于:HTTPS协议需要用到CA申请证书,而HTTP所传输的内容是明文,不具有安全性;HTTP是通过SSL加密的安全传输协议。并且二者所使用的端口不相同,HTTP使用的是80端口,HTTPS使用的是443端口。也就是说,HTTPS是HTTP和SSL的集合。
SSL位于HTTP和TCP之间,是可选的,图1所示是SSL的示意图。它可在Web浏览器和Web服务器之间(P2P)建立安全的连接,其提供的安全特性包括:Authentication认证,即用于提供浏览器和服务器间的认证;Confidentiality保密性,可提供请求和响应之间的数据加密;Integrity完整性则可保证请求和响应的数据在传输过程中不会被修改。
统一通信服务器可通过SSL安全连接进行监听,因此,在客户端访问服务器的时候,要用到相应的CA(CertificateAuthority,认证中心)认证证书,这样,对于访问的安全性就提供了保障,但同时也增加了SOAP客户端部署的复杂度,服务器需要预先发放匹配的证书,或者由客户端从服务器下载相应的证书,才能正确的完成访问。
2 统一通信的安全解决方案
统一通信系统在连接时,需要系统提供保障的安全性。连接时通常釆用HTTPS对Web服务的连接进行加密。HTTPS可以通过SSL建立一个信息安全通道,以保证数据传输时的安全。而HTTPS只是在消息传输时才对数据进行加密,而并未对后续过程中的数据进行加密,图2所示是其加密解决方案。
本文的统一通信系统选择采用HTTPSCHTTPo-verSecureSocketLayer)来为该统一通信系统提供安全通信的保证。采用HTTPS系统来进行安全保证的流程:首先是服务器从CA(CertificateAuthority,证书验证机构)获得用于证明自己身份的证书,并在客户端发起连接请求时发送证书。然后,客户端通过自身维护的可信CA列表和钥匙库来检査来自服务器的证书,以决定是否接收。从证书中得到服务器的公钥后,客户端将生成一个随机的对称密钥,然后用服务器的公钥加密该对称密钥并发送过去。这样,服务器和客户端就共享了一个对称的会话密钥,接下来就可以使用该会话密钥对身份验证和实际请求和响应的消息进行加密了。其加密的全过程如图3所示。
3 实现与结果展示
在该统一通信服务器中.SOAP接口是使用安全连接进行加密的,这就要求客户端的证书和服务器端证书能够匹配才能够正确建立连接。而在服务器端,证书keystore已经部署在服务器上,客户端需要对该证书进行下载,然后通过该证书来加密与服务器连接时的数据传输通道,从而保证系统安全。
SSL在服务器端的监听伪代码如下:
Void sslEncryption()
{
httpServer=new Server();
//向 httpServer 添加监听端口
httpServer.addListener(端口);
//建立SSL监听
SslListener sslListener=new SslListener();
//设置SSL监听的加密密钥
sslListener,setKeystore(keyStore);
//设置SSL监听的加密密钥类型,如JKS
sslListener.setKeystoreType(keystoreType);
//设置SSL监听的加密算法
sslListener,setAlgorithm("SunX509");
//设置SSL监听的加密密码
sslListener.setPassword(密码);
//设置加密端口
sslListener,setPort(端口号);
sslListener.open();
}
整个系统的安全措施示意图如图4所示。
在对系统进行部署后,在浏览器中输入https://127.0.0.1;8443/services,就会出现如图5所示的警告提示框。
单击选项时,就可以看到在浏览器中的地址栏变成了绿色,这种颜色表示访问的系统为安全链接。如图6所示。
4 结语
本文采用HTTPS方式来保证基于Web服务的统一通信系统的通信安全。同时数据的加密过程来保证统一通信系统的数据安全与完整。通过对该方式在统一通信系统中的实验,验证了HTTPS加密方法在系统中的合理性与可靠性。