从网上购物到网上银行应用,安全套接层(SSL)已经成为Web上的通用安全解决方案。
由于应用趋向分散化、转向网络,SSL验证和加密的应用会越来越广泛。基于SSL的虚拟专用网(VPN)允许远程访问基于Web的应用和网络资源,不需要另外的客户软件和相关开销。SSL VPN只要求客户端有一个支持SSL的浏览器(几乎所有的浏览器都支持),网络服务器验证所用的SSL证书是可选的。
防止未授权访问 扩展标记语言(XML)的问世带来了网络服务,这一代全新的应用使用Web作为基石。由于在网络服务交易期间,数据从客户机传送到服务器、从服务器传送到服务器,需要SSL验证和加密,对保护敏感的企业数据免受未授权用户访问起到了至关重要的作用。
遗憾的是,SSL存在两个潜在弱点。首先,验证网络服务器身份所使用的数字证书可能会被偷窃或复制。其次,驱动SSL会话所需的任务繁重的密码计算会影响网络服务器的性能。为了解决这个问题,硬件安全模块(HSM,Hardware Security Modules)为数字证书提供了保护,SSL加速器则卸载了计算密集型的密码计算,从而为依赖SSL的应用增强了安全和性能。
安全套接层(SSL)协议通过使用基于公钥的验证和强加密,以便保密信息可以在因特网上传输,从而来确保客户机到服务器的通信会话。建立SSL会话时需要解决两个主要问题。首先就是确认链路每端的人或计算机的身份,其次是创建及交换会话期间用来加密通信的密钥材料。这两种操作都依赖公认的密码技术。
密钥丢失、身份失窃 如果两台计算机协商建立新的SSL会话,它们会使用数字证书(SSL证书)来确认对方的身份、交换密钥材料。密钥材料的交换利用网络服务器的公钥(网络服务器的SSL证书携有公钥)对材料进行加密。一收到加密后的材料,网络服务器就用相应的私钥进行解密。
如果闯入者盗取了服务器的私钥,这时就会出问题。闯入者获得服务器的私钥副本后,其实可以佯装成该服务器,因为现在可以进行解密操作了,成功地处理信号交换的剩余步骤。手里有了偷来的私钥,小偷就可以建立破坏性网站,假冒合法私钥持有者的身份,肆意攻击未起疑心的用户,看似合法的身份给人以虚假的安全感。
由于私钥安全事关重大,HSM的目的就是提供更安全的基于硬件的环境,以便保存私钥,并利用私钥执行密码操作。HSM通过物理和逻辑方式,把密钥材料与使用它们的计算机和应用相隔离,以此来降低利用易受攻击的软件方式来保存私钥相关的风险。此外,防捣毁物理设计,加上严格的操作规程,可以确保防止直接物理攻击以及来自内部可信用户发起的攻击。
通盘考虑 与一般观点相反的是,导致提供SSL的网络服务器不堪重负的不是日常性的会话数据加密,而是SSL信号交换期间执行的几个操作。特别重要的是从客户机到网络服务器的预主密(pre-master secret)的交换,因为这种交换依赖计算密集型的不对称密码操作。
网络服务器建立SSL会话的功能受到诸多因素的限制,因而说到对性能的期望,通盘考虑网络服务器的软件、硬件和内容非常重要。网络服务器执行SSL操作有赖于计算机的处理功能,即与计算机上运行的其它所有应用共享的处理功能。
此外,标准的计算机处理器不是为专门的密码处理而设计的。网络服务器的处理器速度、存储器容量、操作系统及网络服务器软件都对决定SSL的整体性能起到重要作用。
为了让网络服务器能够应付大量的SSL连接,基于硬件的SSL加速器被设计用来卸载SSL信号交换期间所需的不对称解密任务,从而使网络服务器可以腾出来提供更多的网页、接收更多的客户连接。
遗憾的是,针对最高性能而优化的硬件SSL加速器往往会危及安全,而SSL首先应该提供的恰恰就是安全。那么有没有可能既获得强密钥管理,又不牺牲优异的SSL性能呢?
在许多情形下,同时需要HSM的安全及SSL加速器提升的性能。在这种情形下,为了提供SSL身份保护,以及处理大流量的硬件加速功能,就需要同时提供SSL加速和硬件密钥管理的混合产品。真正安全的SSL加速器应该同时重视性能和安全,这样才能保证SSL会话免受攻击和欺骗。