COMERCIO ELECTRONICO: SEGURIDAD Y SISTEMAS DE PAGO EN LA RED

2.2   SET (Secure Electronic Transactions)

Las siguientes páginas tratan de describir las diferentes tecnologías que han ido apareciendo para solventar estos problemas, vamos a estudiar como actúa el estándar SET de seguridad en la red, para realizar pagos y transmisión de información sensible.

A partir de la gran explosión del Web (a principios de los 90), el Comercio Electrónico ha sido el santo grial para los mercadólogos. Los sites han aumentado muy rápido y ya permiten hacer pedidos por tarjetas de crédito en línea, los bancos y muchos comerciantes rehuían el comercio en Internet hasta que existiera una infraestructura de transacciones por tarjeta de crédito segura y administrada por las principales compañías financieras.

Las posibilidades de establecer un solo estándar para realizar transacciones con tarjeta de crédito en Internet eran pocas cuando Mastercard y Visa Internacional se dividieron en una guerra comercial. La presión del sector bancario sobre Mastercard y Visa fue recompensada cuando anunciaron que trabajarían conjuntamente para forjar un nuevo estándar. El fruto de este acuerdo es SET (Secure Electronic Transactions) que vendría a ser el catalizador que finalmente propiciará el despegue en gran escala del comercio en Internet.

El acuerdo reunió a los principales contendientes de las transacciones en línea seguras: GTE, IBM, Microsoft, Netscape, SAIC, Terisa Systems, y VeriSign. Mientras GTE e IBM se interesaran por asegurarse que su existencia de controladores de hardware y redes bancarias pudieran manejar el protocolo, Microsoft y Netscape competirán para proporcionar un browser (navegador) seguro y el software para la transacción del servidor. SAIC contribuiría con las técnicas de encriptación basadas en RSA que tanto S-HTTP como STT utilizaron en sus primeros esfuerzos, y Terisa Systems proporcionaría las herramientas que los desarrolladores de software necesitarían para desarrollar las aplicaciones para el Comercio Electrónico. VeriSign (y GTE) proporcionarían el mecanismo de autentificación de certificado que usarían los vendedores, clientes y compañías de crédito y que permitirán el desarrollo del comercio en el seno de Internet y otras redes públicas, de modo seguro para los participantes: usuario final, comerciante, entidades financieras, administradoras de tarjetas y propietarios de marcas de tarjetas.

SET describe tanto las relaciones y procesos entre las partes involucradas, como las estructuras informáticas que deberán ser desarrolladas, siempre dentro de un marco de interoperabilidad que garantizará procesos transparentes a las plataformas hardware y sistemas operativos en los que se implemente.

2.2.1 Describiremos las características más generales de SET, a un nivel funcional.

- La función surge de la necesidad

Desconocidos por muchos los usos académicos, científicos e informativos, Internet y en particular la World Wide Web abre, para particulares y empresas, un fantástico mundo de posibilidades que les permitirán obtener los objetos de consumo habituales sin efectuar desplazamientos innecesarios, con servicio a domicilio y probablemente con una interesante reducción de precio. Para los comerciantes, significa alcanzar la globalidad a un coste insignificante, la apertura a mercados antes impensables y la posibilidad de una eficaz gestión de sus recursos y stocks. Pensemos que para una empresa, de cualquier tamaño, cada PC o estación de trabajo se convierte en una sucursal virtual perteneciente a una cadena de más 30 millones de "establecimientos". En este contexto, el Comercio Electrónico en Internet y otras redes públicas pone de manifiesto algunos aspectos críticos:

1. La demanda de los consumidores para acceder de forma segura al comercio y otros servicios es muy alta.
2. Los comerciantes quieren métodos simples y de coste bajo para manejar las transacciones electrónicas.
3. Las instituciones financieras requieren de los suministradores de software soluciones competitivas en precio, manteniendo altos niveles de calidad.
4. Las sociedades de medios de pago, administradoras de tarjetas y propietarios de marca necesitan diferenciar el Comercio Electrónico sin afectar significativamente sus infraestructuras.

SET se desarrolla para dar respuesta a estos y otros factores críticos dentro de la estrategia de implantación del Comercio Electrónico en Internet.

El papel de las sociedades de medios de pago y sus instituciones financieras es crucial para establecer especificaciones abiertas que permitan

Proporcionar confidencialidad en las comunicaciones.
Autentificar a las partes involucradas.
Garantizar la integridad de las instrucciones de pago.
Autentificar la identidad del usuario y el comerciante

- La criptografía al servicio del Comercio Electrónico

SET especifica la consecución de los objetivos antes expuestos por medio del empleo de la criptografía. En el marco de los procesos típicos del Comercio Electrónico, solo unos pocos afectan directamente a SET:

Envío de la orden de pedido al comerciante, junto con información sobre las instrucciones de pago. Solicitud de autorización del comerciante a la institución financiera del comprador.Confirmación de la orden por parte del comerciante. Solicitud de reembolso del comerciante a la institución financiera del comprador.

Esta es una secuencia de procesos que se distingue poco de la utilizada en el comercio convencional, lo que constituye una de las premisas para su desarrollo. La característica principal es la ausencia del cara a cara entre el comerciante y el comprador (en los últimos años este cara a cara se ha visto enriquecido con diversas modalidades de venta por correo, una versión más del Comercio Electrónico que, sin embargo, permite la identificación y autentificación de las partes intervinientes.

Por tanto, los procesos definidos en SET, en de los límites establecidos, son:

Proporcionar la autentificación necesaria entre compradores, comerciantes e instituciones financieras.
Garantizar la confidencialidad de la información sensible (número de tarjeta o cuenta, fecha de caducidad, etc...)
Preservar la integridad de la información que contiene tanto la orden de pedido como las instrucciones de pago.
Definir los algoritmos criptográficos y protocolos necesarios para los servicios anteriores

Aunque estos aspectos son importantes en cualquier red de transmisión de datos, su vulnerabilidad causa una preocupación mucho mayor cuando se relacionan con Internet, por la facilidad que se tiene para procesar automáticamente grandes volúmenes de información.

- ¿Cómo se implementan en SET todos los procesos de autentificación, confidencialidad e integridad enunciados anteriormente? Estas definiciones constituyen el núcleo de SET:

La confidencialidad (no vulnerabilidad de la información conteniendo los datos necesarios para realizar el pago, tales como el número de cuenta o tarjeta y su fecha de caducidad) se alcanza mediante la encriptación de los mensajes. La integridad de los datos conteniendo las instrucciones de pago, garantizando que no han sido modificados a lo largo de su trayecto, se consigue mediante el uso de firmas digitales.

La autentificación del comprador, como usuario legítimo de la tarjeta o cuenta sobre la que se instrumenta el pago del bien o servicio adquirido, se consigue mediante la emisión de certificados y la generación de firmas digitales.

La autentificación del comerciante, garantizando que mantiene una relación comercial con una institución financiera que acepta el pago mediante tarjetas, se consigue mediante la emisión de certificados para el comerciante y las correspondientes firmas digitales.

Los algoritmos criptográficos empleados en SET para los procesos de encriptación, emisión de certificados y generación de firmas digitales son de doble naturaleza. Por un lado, se define un algoritmo de clave privada, de fortaleza contrastada y excelente rendimiento: DES (Data Encryption Standard), en uso desde 1977. Por otro lado, se hace imprescindible contar con un algoritmo que permita el intercambio de claves en una red pública, con total seguridad, entre múltiples participantes sin ninguna relación previa; un algoritmo como el descrito se define de clave pública, y el escogido para SET fue diseñado por Rivest, Shamir y Adleman, cuyas iniciales componen su nombre: RSA.

Esencialmente, cada algoritmo criptográfico empleado en SET permite la implementación de una función determinada. DES se emplea para garantizar la confidencialidad de los mensajes transmitidos; RSA se emplea para garantizar la integridad de los datos y la autenticidad de los participantes. RSA desempeña todavía una función adicional, posible gracias a su definición como algoritmo de clave pública (también se conoce como algoritmo asimétrico, por emplear dos claves diferentes, una para la encriptación y otra para la desencriptación): permite la distribución y utilización de una clave secreta entre participantes sin ninguna relación previa y, lo que es más importante, sobre canales no asegurados

- Clave privada vs. clave pública

Hasta la década de los setenta todos los sistemas criptográficos estaban basados en algoritmos simétricos que utilizaban la misma clave para cifrar y descifrar, son los denominados sistemas de clave secreta o única. En estos casos la problemática venía por un lado en la transferencia de la clave a través de un canal seguro, ya que el emisor tenía que facilitar la llave para que el receptor pudiera ser capaz de descifrar. Por otro lado, el emisor debía confiar en que el remitente guardara de forma segura su clave.

Todos estos problemas fueron solucionados en 1976 con la aparición del criptosistema de clave pública de Diffie-Helman, patentado hoy por la RSA que demuestra que no es necesario utilizar la misma clave secreta para encriptar y desencriptar. Al contrario que los sistemas de clave secreta en los de pública se utilizan un par de claves. Una llave pública, conocida por todos los usuarios, y una privada, que sólo será conocida por el usuario. Si bien las dos son distintas, la relación viene dada porque una es la función inversa de la otra. Es decir, lo que hace una, solo la otra puede deshacerlo. Y el conocimiento de la llave pública no permite llegar a conocer la privada.

Cuando un usuario quiere recibir información bajo este sistema, facilita su llave pública a todos los remitentes interesados. De forma que cuando alguno de ellos quiera enviarle información lo harán encriptando con su llave pública, y solo él, a través de su llave privada, será capaz de descifrarla. Veremos detenidamente las utilizaciones de los algoritmos criptográficos definidos.

DES, como algoritmo de clave privada (este tipo de algoritmos también recibe la denominación de algoritmos simétricos) requiere que las partes intervienentes en un proceso de encriptación/desencriptación compartan la misma clave. Esto plantea, como cabe suponer, problemas de distribución de claves en entornos no seguros, como es el caso de Internet. A nadie se le pasa por la mente distribuir una clave DES mediante un mensaje de correo electrónico. Incluso algunos canales "menos públicos" como puede ser el correo ordinario o el teléfono son sumamente vulnerables.

Solo la entrega en mano garantiza que una clave no ha sido descubierta durante la distribución.

Los algoritmos de clave pública, como RSA, están sustentados en una base matemática tal que cada una de las partes intervinientes dispone de un par de claves: una se denomina clave pública, y está destinada a ser distribuida libremente. Es más, cuanto más ampliamente se haya distribuido esta clave, más garantías existen de que no es posible la "usurpación de personalidad". La otra clave, la clave privada será conocida solamente por su legítimo propietario, y debe ser custodiada con el mismo celo con que se haría para una clave DES. La base matemática aludida anteriormente hace que mientras que un mensaje puede ser encriptado con la clave pública, es necesaria la clave privada para su desencriptación.

El mensaje original es encriptado con la clave pública del destinatario; este podrá obtener el mensaje original después de aplicar su clave privada al mensaje cifrado. Se resuelve así el problema de la distribución de claves sobre canales no seguros.

Describamos matemáticamente RSA.

Todo se reduce al uso del conocido teorema de Fermat, que enuncia que si «p» es un número primo y «a» es un número positivo, cualquiera menor que «p» entonces a^(p-1)=1 (módulo p). Este criterio proporciona un método rápido para demostrar que un número es compuesto.

Sin embargo, existe una gran dificultad en hallar los dos factores primos de un número de aproximadamente 126 cifras, obtenido de multiplicar dos números primos de 63 cifras. El tiempo de factorización se eleva a millones de años.

Para cifrar un texto primero se transforma en un único número mediante la clave típica: A=0, B=1, ... Z=26 y se usa 00 para indicar el espacio entre dos palabras. El número completo se codifica elevándolo a una potencia fija «s», módulo un cierto número compuesto «n». Este número «n» compuesto se obtiene eligiendo al azar dos números primos «p» y «q» y multiplicándolos. Se calcula la función de Euler O=(p-1)(q-1) y tras ello se seleccionan dos números, «e» y «d», donde uno de ellos debe ser primo (al menos respecto de O) y encontrarse en el intervalo (max(p,q)+1,n-1) de tal forma que se cumpla que e*d=1 mod O. Es decir, que exista un número «t» que haga que e*d=t*O+1.

Todo esto hace que conociendo «O» sea fácil calcular «e» a partir de «d» y viceversa, pero para conocer «O» es necesario conocer «p» y «q», lo cual sólo es posible factorizando «n», que como ya hemos comentado es altamente complejo. Todo este algoritmo es el conocido con el nombre de RSA, y es el más extendido y empleado en la actualidad para encriptación de datos y firma electrónica.

Vamos a realizar un ejemplo práctico del funcionamiento de este algoritmo tomando números primos pequeños. Por ejemplo, sean p=5 y q=11, de lo que obtenemos n=5*11=55. De ahí, O=4*10=40=5*2^3. Podemos tomar «e» como 7 ya que no tiene factores comunes con «O». Para calcular un valor de «d» hacemos d=(O*t+1)/e=(40*t+1)/e, que con t=1/2 nos da d=3. De esto hemos obtenido que una clave es el par 7, 55 y la otra el par 3,55.

Para el proceso de cifrado se toma la frase a codificar convertida en número y se eleva a la potencia (de 7 o de 3, dependiendo del par elegido para cifrar). El resultado se divide por 55 y se toma el resto; este es el mensaje cifrado. Para descifrar se toma el mensaje cifrado y se eleva a la potencia (de 3 o de 7, el contrario del elegido para cifrar), se divide por 55 y el resto será el mensaje original. Para encriptar, por ejemplo 23, hacemos 23^7 mod 55 = 12 y para desencriptar 12^3 mod 55 = 23.

Aparecen ( siempre aparecen ) nuevos problemas. Uno de ellos, es el relativo a la "usurpación de personalidad". Veamos en que consiste. Juan y Elena son usuarios de un sistema de criptografía basado en RSA (por ejemplo, PGP). Juan obtiene la clave pública de Elena de una página Web generada por esta última. Sin embargo, arteramente, Carlos ha sustituido la clave pública original de Elena por la suya propia. Cuando Juan envía un mensaje a Elena, cifrado con su clave pública, en realidad está utilizando la de Carlos, que puede así intervenir estos mensajes. Para no levantar sospechas, Carlos reenvía el mensaje original a Elena, esta vez con la clave pública original de esta.

Para resolver este problema potencial, en el contexto de los sistemas criptográficos de clave pública se ha diseñado la figura de la Autoridad Certificadora (Certifying Authority, CA). Aunque esta figura se tratará con mayor detalle en un próximo artículo, podemos anticipar que se trata de entidades independientes que garantizan, mediante la emisión de certificados electrónicos, la autenticidad de las claves públicas de los usuarios (particulares y empresas), y custodian la integridad de las mismas

- Confidencialidad de los mensajes: Sobres electrónicos.

En SET, la confidencialidad de los mensajes está soportada primariamente por la utilización de claves simétricas para cifrar el contenido de los mismos. Estas claves, generadas de forma aleatoria, son cifradas a su vez con el componente público del par de claves asimétricas del destinatario. La unión de la clave simétrica cifrada, junto con los datos del mensaje cifrados con esta, se conoce como sobre electrónico (digital envelope).

A su recepción, el destinatario utiliza el componente privado de su par de claves asimétricas para descifrar la clave simétrica, que a su vez permite descifrar el mensaje.

La generación de las claves simétricas aleatorias es un proceso de gran importancia. La programación y métodos empleados para ello deben garantizar que tales claves no serán inferidas del contenido del mensaje ni del entorno en el que se han producido.

- integridad y autenticidad de los mensajes: Firmas electrónicas

En SET la integridad, garantiza que el contenido de los mensajes no ha sido alterado de forma fraudulenta, y la autenticidad, que garantiza que las partes intervinientes en el proceso lo hacen de forma legal y representan quien dicen ser, se basan en la generación de firmas electrónicas (digital signatures).

La firma electrónica se basa en las relaciones matemáticas entre las claves pública y privada del algoritmo asimétrico utilizado. Así, un mensaje cifrado con una de las claves solo puede ser descifrado con la otra. El remitente de un mensaje cifra su contenido con su propia clave privada; el destinatario puede descifrarlo con la correspondiente clave pública y determinar así la autenticidad del origen del mensaje

Para garantizar la integridad del contenido del mensaje, y al mismo tiempo acelerar el tratamiento del mismo, se incorpora un proceso adicional consistente en generar un valor único y representativo de los datos. Este proceso, denominado digestión del mensaje (message digest) consiste en hacer pasar los datos a través de una función irreversible (one-way hash function), como MD5, que produce un destilado del original que es único para un contenido dado. Es computacionalmente imposible producir el mismo destilado a partir de dos mensajes diferentes. El algoritmo empleado en SET produce un destilado de 160 bits y es tal que el cambio de un solo bit en el mensaje original produce, en promedio, el cambio de la mitad de los bits del producto.

El "destilado" del mensaje se cifra ahora con la clave privada del remitente, y el resultado se añade al mensaje original que se envía, constituyendo la firma electrónica del mismo. El destinatario del mensaje descifra el "destilado" con la clave pública del remitente, aplica la misma función al mensaje original y compara ambos resultados. Si son iguales, la integridad y autenticidad del mensaje son correctas. Si el proceso de descifrado no es satisfactorio, el remitente no puede ser autenticado; si el "destilado" generado no es coincidente con el extraído de la firma electrónica, se ha producido una modificación en el contenido del mensaje. Los procesos descritos son muy similares a cuando ejecutamos la función de "firmar" un mensaje: PGP.

SET emplea dos pares distintos de claves asimétricas: uno para las funciones de intercambio de las claves simétricas aleatorias y otro para las funciones de firma electrónica. Es importante recordar que las claves asimétricas operan en forma inversa en el intercambio de claves y en la firma electrónica

- Certificados de Autenticidad: los "marchamos" de SET

SET es un protocolo que nace para su aplicación en redes abiertas y sobre canales no seguros. Por ello se tienen previstos desde el comienzo los procedimientos y procesos necesarios para garantizar la autenticidad y legitimidad de los usuarios que participen en un circuito de Comercio Electrónico.

La firma electrónica garantiza la autenticidad del remitente y la integridad de los datos contenidos en el mensaje. Sin embargo aún es posible que se haya producido una suplantación de la identidad del remitente, si su clave pública ha sido alterada de forma fraudulenta por una tercera persona. Una posible solución para el problema de la suplantación de identidad es el intercambio de claves públicas mediante canales seguros. Sin embargo esto no es viable en la mayoría de los casos y especialmente cuando los participantes no tienen una relación previa, como en el Comercio Electrónico.


GLOSARIO | DIRECCIONES DE INTERES |

2.1 Seguridad en la red: Introducion Comercio electronico - PRINCIPAL 2.3 Autoridades Certificadoras
Libro de visitas Sobre Teletrabajo -- PRINCIPAL Volver al inicio