论文部分内容阅读
VPN技术是利用有关密码学知识在开放的公共网络上建立虚拟专用网络的技术。随着应用服务模式从C/S结构向Web的迁移,企业必须面对一个新的挑战,即不影响最终用户使用的前提下,实现在任何地方灵活地访问应用服务。SSL VPN(Secure Socket Layer Virtual Private Network)利用SSL的加密特性和细粒度的访问控制,很好地解决了上述问题。本文首先分析了传统VPN系统存在的优缺点,以及利用SSL协议构建VPN系统的优越性和发展趋势,然后就SSL VPN的关键技术进行研究,提出了一个SSL VPN的整体设计框架,就系统的性能和访问控制等方面进行了改进。在SSL握手中,最耗费时间和资源的操作是运用非对称加密算法RSA的私钥进行解密运算。针对此问题,提出了利用客户机协助SSL服务器进行RSA私钥解密的安全SSL负载均衡握手,以充分利用客户机等待服务器消息的空闲时间,提高服务器处理SSL连接的速度,服务器对客户发送数据进行验证保证了安全性。该策略虽然增加了客户机的计算量,但减少了SSL服务器端的计算量,在一定程度上有助于缓解拒绝服务攻击。为进一步提高SSL服务器的计算速度,采用了中国余数定理CRT对指数进行降幂。对此,利用OpenSSL开源软件包实现改进的SSL握手。基于目前VPN中应用最多的访问控制模型——RBAC,提出了基于资源和角色的访问控制模型,即RRBAC模型。该模型不再把研究的重点放在角色的定义和划分上,而是从系统中可以访问的各种对象出发,将各种对象作为资源分层次赋给角色。依据资源之间存在的继承性,可方便角色的划分,简化角色的授权管理,实现更细粒度的访问控制。同时,利用Java技术在数据库上实现了基于资源和角色的访问控制。