WAP surge como la combinación de dos tecnologías de amplio crecimiento y difusión durante los últimos años: Las Comunicaciones Inalámbricas e Internet. WAP es una especificación para un conjunto de protocolos de comunicación con el ánimo de normalizar la forma en la que los dispositivos inalámbricos (tales como teléfonos móviles, emisores / receptores de radio, etc) acceden a Internet, aunque esto ya era posible, cada fabricante usaba una tecnología distinta. A partir de ahora, los dispositivos y servicios que usen WAP, serán capaces de inter-operar entre ellos. Es un estándar abierto, cualquiera puede acceder a él y desarrollar dispositivos, gateways (pasarelas) o contenidos WAP.
Mas allá de la posibilidad de acceder a los servicios de información contenidos en Internet, el protocolo pretende proveer de servicios avanzados adicionales como, por ejemplo, el desvío de llamadas inteligente, en el cual se proporcione una interfaz al usuario en el cual se le pregunte la acción que desea realizar: aceptar la llamada, desviarla a otra persona, desviarla a un buzón vocal, etc.
Para ello, se parte de una arquitectura basada en la arquitectura definida para el World Wide Web (WWW), pero adaptada a los nuevos requisitos del sistema. En la Figura 1.1 se muestra el esquema de la arquitectura WAP.
Figura 2.1: Modelo de funcionamiento del WAP. Fuente
Wapforum.org
De esta forma, en el terminal inalámbrico existiría un "micro navegador" encargado de la coordinación con el Gateway, a la cual la realiza peticiones de información que son adecuadamente tratadas y redirigidas al servidor de información adecuado. Una vez procesada la petición de información en el servidor, se envía esta información al Gateway que de nuevo procesa adecuadamente para enviarlo al terminal inalámbrico.
Para conseguir consistencia en la comunicación entre el terminal móvil y los servidores de red que proporcionan la información, WAP define un conjunto de componentes estándar:
![]() |
Un modelo de nombres estándar. Se utilizan las URIs definidas en WWW para identificar los recursos locales del dispositivo (tales como funciones de control de llamada) y las URLs (también definidas en el WWW) para identificar el contenido WAP en los servidores de información. |
![]() |
Un formato de contenido estándar, basado en la tecnología WWW. |
![]() |
Unos protocolos de comunicación estándares, que permitan la comunicación del micro navegador del terminal móvil con el servidor Web en red. |
Veamos ahora un modelo global de funcionamiento de este sistema en la Figura
1.2.
Figura 2.2: Ejemplo de una red WAP
En el ejemplo de la figura 1.2, nuestro terminal móvil tiene dos posibilidades de conexión: a un proxy WAP, o a un servidor WTA. El primero de ellos, el proxy WAP traduce las peticiones WAP a peticiones Web, de forma que el cliente WAP (el terminal inalámbrico) pueda realizar peticiones de información al servidor Web. Adicionalmente, este proxy codifica las respuestas del servidor Web en un formato binario compacto, que es interpretable por el cliente. Por otra parte, el segundo de ellos, el Servidor WTA está pensado para proporcionar acceso WAP a las facilidades proporcionadas por la infraestructura de telecomunicaciones del proveedor de conexiones de red. Pero el usuario final no es capaz de distinguir la diferencia entre ambos porque él podrá visualizar prácticamente la misma información en su pantalla, por lo tanto, la elección entre un servidor WTA o un proxy WAP radicará entre la relación costo / rendimiento.
Por ejemplo en nuestra Universidad podría existir una manera de visualizar las notas de cada alumno mediante un simple teléfono WAP. Para hacer esto se requiere que exista un procedimiento capaz de exportar datos desde la base de datos de las notas de la facultad hacia una página WML alojada en cualquier servidor Web, como por ejemplo: Cóndor, Búho, entre otras. La visualización podría ser como se muestra en la figura 1.3
Figura 2.3: Visualización de la pantalla de un teléfono WAP
Es claro que un monitor en un computador no es igual a la pantalla de un terminal móvil (teléfono, agenda, otro dispositivo), a nivel de resolución . Además de esto la pantalla del teléfono móvil esta muy limitada porque no se pueden realizar aplicaciones como las de un PC, así como visualizar videos o elementos de multimedia ( MP3, páginas Web con Flash).
Para los PC existe el lenguaje HTML que permite al usuario navegar por la red Internet, este lenguaje no es compatible con las pantallas de los WAP, por esto se debió idear un lenguaje que le permita al usuario visualizar en la pantalla del teléfono móvil las paginas Web, de esta manera nació WML (Wireless Markup Language : Lenguaje de etiquetación inalámbrico).
Fue desarrollado principalmente por el Wireless Application Protocol (WAP) Forum para la especificación de contenidos destinados a aquellos elementos de hardware de tecnología WAP.
El navegador utilizado para WAP es muy parecido a un navegador de páginas Web, la diferencia es que alberga contenido WML. El navegador incluye un intérprete de scripts para ejecutar aplicaciones en el agente de usuario programadas en lenguaje WMLScript (análogo al JavaScript y VBScript usada por Netscape Navigator y Microsoft Internet Explorer)
WML y WMLScript se han diseñado específicamente para redes sin cable, y se codifican en binario para una eficiencia de transmisión óptima, al contrario que el lenguaje HTML el cual se transmite en ASCII porque fue diseñado para verse en múltiples plataformas.
El contenido para WAP se localiza en servidores. Dichos contenidos suelen estar en WML o WMLScript, pero también pueden estar programados en HTML siendo necesario un Gateway capaz de traducir contenidos HTML a WML.
Las páginas hechas en WML tiene extensión .wml, los scripts .wmls y los dibujos
.wbmp
El primer paso para comprender como funciona el modelo de seguridad WAP, es revisar la capa de seguridad SSL (Secure Sockets Layer) que hace posible las transacciones económicas en Internet.
Cuando se habla de seguridad, hay que pensar en cuatros pilares distintos: privacidad, integridad, autenticidad y no-repudio.
La privacidad asegura que sólo pueden leer el contenido de un mensaje codificado, el remitente y destinatario del mismo. Para garantizarla, se debe asegurar que nadie pueda ver, acceder o usar los datos sensibles (Ej. : direcciones, número de tarjeta de crédito, números de teléfono,
etc.) mientras se transmite por Internet.
La integridad asegura la detección de cualquier cambio en el contenido de un mensaje desde que se envía hasta que se recibe. Por ejemplo, si un cliente introduce la orden de transferir $100.000 desde sus cuentas a otra, la integridad permite que el banco y/o el cliente se percate si la orden fue modificada desde que la emitió el cliente hasta que la recibió el banco.
La autenticidad asegura que las partes involucradas en una transacción son quien dicen ser. La autenticidad del servidor le sirve al cliente para asegurarse que esta comprando en el servidor Web al que cree estar conectado. La autenticidad del cliente le asegura al servidor Web que le cliente no está usando una identidad falsa.
El no repudio proporciona un método para que ninguna de las partes involucradas pueda reclamar, falsamente, que no estuvo en la transacción. El ejemplo más claro en el mundo real, es la firma manuscrita en un documento.
En Internet, el protocolo SSL certifica digitalmente a cualquier usuario y proporciona los cuatros pilares que acabamos de ver para llevar a cabo una transacción.
El elemento clave del protocolo SSL, es la criptografía de clave pública. Para ello, se usa un par de claves y algoritmos matemáticos que convierten el "el texto plano" en "texto codificado", y al revés. El par de claves, consta de una clave registrada y pública y otra privada que es guardada en secreto por el propietario. Un mensaje codificado con clave pública, sólo puede ser decodificado con la clave privada, únicamente puede ser decodificado por aquellos que tengan la clave pública.
La criptografía de clave pública es muy útil para "trozos" pequeños de datos, pero resulta lenta cuando se trata de gran cantidad de datos. Para esta último caso, se usa la codificación con clave secreta o simétrica, donde ambas partes han debido de acordar de antemano una clave para codificar y decodificar.
El protocolo SSL, combina ambas técnicas para realizar las transacciones. En una primera fase conocida como negociación, utilizando criptografía de clave pública, las partes, se intercambian una única clave simétrica que será la cual se use durante el resto de la transacción asegurando la privacidad.
Para proporcionar integridad, el protocolo SSL, usa algoritmos Hash, que crean una "huella digital" matemática de cada mensaje y lo desechará.
Para proporcionar la autenticidad de ambas partes, y evitar que alguien en medio intercepte todas las transmisiones, se usan los certificados digitales. Los certificados aseguran al cliente, que el servidor Web es quien dice ser.
Cuando el navegador solicita una conexión segura con un servidor Web, este muestra su certificado. El navegador comprueba la validez del certificado, confirmando que está firmado por una tercera entidad de confianza. A continuación, usa la clave pública del certificado, para codificar la clave simétrica que se usará en la transacción y se la devuelve al servidor Web.
En este breve ejemplo, sólo se ha autentificado al servidor Web, ya que la mayoría de las aplicaciones Web, confían en los datos que proporciona el cliente.
Como se puede ver en el siguiente dibujo, hay dos partes diferenciadas en el modelo de seguridad WAP. En la parte derecha del dibujo, el gateway WAP, sencillamente usa SSL para establecer una comunicación segura con el servidor Web, asegurando la privacidad, integridad y autenticidad del servidor.
Figura 2.4: Esquema de Seguridad en WAP. Fuente:
keWAP
En la parte de la izquierda, el gateway recoge los mensajes codificados con SSL del servidor Web y los transforma para transmitirlo usando WAP y la capa de seguridad WTLS. Las peticiones desde el teléfono hacia el servidor Web, recorren el camino inverso. En resumen, el gateway actúa de pasarela entre las capas WTLS y SSL.
La necesidad de cambio de SSL a WTLS viene impuesta por la naturaleza de las comunicaciones inalámbricas: ancho de banda reducido con alta latencia. Dado que SSL se diseño para ordenadores de sobremesa con capacidad de proceso superior a la de un teléfono móvil y con mayor ancho de banda y menor latencia. Si se intentara incluir SSL en los teléfonos móviles, esto dispararía los precios de los terminales frenando el crecimiento de la industria WAP.
WTLS se diseño específicamente para conseguir un nivel de seguridad suficiente, sin necesitar una gran capacidad de proceso.
La transformación entre SSL y WTLS tan solo dura unos mili-segundos y ocurre en la memoria del gateway simultáneamente con otros cientos o miles de peticiones simultaneas, permitiendo una conexión virtual y segura entre los dos protocolos. Los computadores de gateways WAP y los operadores de red, toman todas las medidas posibles para mantener seguro el gateway WAP: