论文部分内容阅读
为保证B/S系统的安全性,一些安全性要求较高的领域使用用户终端外接设备如USBkey等作为安全保障。操作系统出于安全性考虑禁止浏览器直接访问用户的本地资源和外接设备,浏览器插件解决了这一问题。插件技术没有统一的标准,不同内核的浏览器支持的插件技术不同。目前使用较多的ActiveX和NPAPI插件技术由于存在安全隐患逐渐不再被浏览器支持。郑州信大捷安的基于浏览器和USBKey的数字证书签发系统现有的安全控件也存在这些问题。为此,本文提出使用HTML5中的WebSocket协议作为浏览器对USBKey访问的解决方案,在用户本地构建WebSocket安全服务对USBKey操作并与浏览器通信,进而根据浏览器端需求将数字证书签发到USBKey中。主要工作如下:分析了WebSocket协议的通信原理,在此基础上设计了使用WebSocket访问本地资源的WebSocket解决方案。在用户本地实现WebSocket服务并通过该服务对用户的本地资源或硬件设备进行访问或操作,由该服务与浏览器客户端通信将操作结果发送给浏览器。随着HTML5的逐渐推广与应用,遵循HTML5标准的浏览器即可使用该解决方案,不会因浏览器内核而产生限制,解决了插件技术存在的浏览器兼容性问题。设计了WebSocket解决方案的安全增强型WSS服务模型。在上述解决方案的基础上,考虑到浏览器与WebSocket服务通信的安全性,对WebSocket协议中定义的wss连接进行研究,设计了基于TLS层的WebSocket安全(WSS)服务模型,并提出了该模型的实现方法以及配置方案。使用数字证书建立WSS服务与浏览器双方信任的通道,保证双方通信的安全性。实现了使用WSS数字证书签发系统。研究了信大捷安UKey设备的数字证书签发系统的需求和USBKey提供的硬件接口;将WebSocket解决方案和WSS服务模型结合当前的业务需求进行实现,并封装为安全控件。系统使用该控件实现了通过浏览器向用户的USBKey内签发数字证书。对系统进行功能性和浏览器兼容性测试,其测试结果也验证了使用WebSocket作为浏览器访问本地硬件资源中间件的可行性与可靠性。