在WAP安全性的实现上,我们需要以最小的代价获得最大的利益。WAP论坛的一个目标就是不进行"重复发明"。他们希望利用一切现存的技术,包括使用Internet技术作为模型,因而与Internet和Internet协议的一致和互用就成为一个重要目标。如同Internet一样,WAP的安全性也是在传输层实现的。外观上唯一的区别是:Internet模型将它的多数安全特性在TLS中实现,而WAP则在WTLS中。协议的命名可以给我们提示:WTLS与TLS很相似,而且WTLS是以TLS为基础的。然而,在实际的网络配置中,它们有着微妙的不同,这些不同对于安全性有很重要的含义。
为了阐明这种区别,我们需要看看在WAP环境中通信是如何进行的。下图是一张类似于Internet通信模型的图解。
|
WAP通信模型 |
在该模型中,连接仍然是通过电话呼叫建立的,但是此时的连接是由网络运营商而不是ISP进行处理的。在实际中并非必须这样实现,但是它代表了多数的通信模型,因而我们在讨论中只以该图为参照。同Internet模型一样,当运营商接收到电话呼叫时,会将其路由到它的某个调制解调器上,进而连接到RAS服务器。
WAP论坛曾经指出移动设备应该使用PPP协议,但是这里的PPP本身只是OTA业务承载协议及其它相关的处理移动电话呼叫的协议的一个"隧道"。通信时,在手机与基站之间有一层加密机制,该加密机制与PPP或其它高层协议是无关的。这种加密被定义为GSM的一部分,虽然该附加的安全层使得电话窃听变得较为困难,但是它并不是足够健壮,而且不能保护范围只限于基站之内,所以它本质上并不能提供安全的连接。
同Internet模型一样,RAS服务器进行认证处理,但是同Internet模型不同的是,当数据包通过RAS服务器之后,它并没有经过Internet被路由到WEB服务器,而是被路由到了WAP网关。WAP网关负责WML、WMLScript与适合于无线传输的二进制格式代码之间的转换,同时,它也作为手机的代理,代表手机用HTTP 1.1协议与WEB服务器通信。WEB服务器并不知道它在和WAP网关对话,它只是将WAP网关看作另一个客户机设备。
一般作为信息服务的WEB服务器是网络运营商所有的,因而数据包可能从未离开过运营商所控制的范围。然而你可能需要访问其它组织提供的服务,这时WAP网关就会通过防火墙向其它机构网络的远端服务器发送它的HTTP包。网络运营商可以在它们的WEB服务器上设置DMZ(非禁止区域),以向普通大众提供WAP或Internet服务,但是主要的服务还是应该放置在公众无法访问的独立的服务器上。
在安全性方面,可以明确的一点是:如果WAP网关作为手机的代理使用HTTP 1。1协议与WEB服务器通信,那么TLS是可以确保WAP网关和WEB服务器之间的一切通信安全的,这点与Internet一模一样。但是TLS不能确保手机与WAP网关直接的通信安全,这是因为TLS需要可靠的传输层,即TCP,但是手机并没有使用TCP与WAP网关通信。TCP适合于高带宽和高可靠度的网络,而移动网络无疑不具备这样的特征。而且普通的移动设备的处理器和资源无法应付TCP协议栈的需求,因此WAP讨论组设计了另一种比较轻便和适合于移动网络的协议栈,该协议栈在IP网络上使用UDP或在非IP网络上使用WDP作为其传输层协议。 |