You are on page 1of 11

Modelo Transaccional utilizado en WebPay y posibles otros usos

ELO-322 Redes de Computadores I Anggelo Urso Goddard 2504078-3 Primer Semestre 2010

Resumen El poder comprar un producto y/o servicio a travs de Intere net es una tendencia que cada vez va cobrando ms fuerza en Chile, a es por esto que diversas tecnolog as se han desarrollado para proteger a los usuarios y sus datos privados. Pero estas tecnolog tambin han as e abierto la puerta a otros potenciales usos en sistemas que requieran tambin una sensibilidad en los dae tos transferidos, es as como nace WebPay y se tratar como implea mentarlo de manera efectiva en un sistema real. WebPay es un servicio de pago con Tarjeta de Crdito, desarrollae do por la empresa Transbank para realizar transacciones a travs de e Internet. Hoy en d constituye una a herramienta clave para el desarrollo de un comercio electrnico ecaz y o seguro en Chile. Este software permite, adems a de su tradicional uso en transacciones bancarias, su aplicacin en dio versos desarrollos en los cuales el

acceso a los datos es sensible permitiendo que, en el caso de una tienda virtual, los datos sean solamente conocidos por el usuario del sistema y una entidad previamente autorizada (ya sea de facto o de iure1 ), con lo cual otorga un nivel de seguridad en la transferencia de los datos. Una de las posible aplicaciones (y que ser tratada en el a presente informe) corresponde a su uso en el desarrollo de una aplicacin para el sistema de postulacin o o a ayudant (mencionando su acas tual funcionamiento en el Departamento de Informtica, y posteriora mente como ste ser extensible a e a los campus Santiago y Casa Central de la UTFSM y sus diversos departamentos), en donde el sistema utilizado corresponder a una versin a o adaptada de KCC para los datos que la universidad maneja a travs e del sistema SIGA.

1 De Facto: Acuerdo tcito entre dos entidades relacionadas, De iure: Acuerdo con reconocimiento jur a dico - Referencias: Wikipedia http://es.wikipedia.org/wiki/De_iure

Redes de Computadores I

1.

Introduccin o

Para poseer una visin ms amplia reso a pecto a otros usos para la interfaz WebPay, es importante preguntarse Qu es Webe Pay? y cmo es que esta funciona. o

5. En caso de que la tienda opere con Webpay Plus, se solicita la autenticacin del tarjeta habiente en su banco o emisor. 6. El banco despliega pgina de autentia cacin para el tarjeta habiente. o 7. El tarjeta habiente ingresa los datos solicitados para autenticacin, estos o dependen de cada banco. 8. El banco env a Transbank el resultaa do de la autenticacin, si esta es posio tiva continua con los pasos siguientes, en caso contrario, Webpay rechaza la transaccin. o 9. Webpay solicita la autorizacin de la o transaccin al autorizador del banco o emisor de la tarjeta de crdito. e 10. Autorizador responde (aprobado, rechazado) a Transbank. 11. Transbank responde a Webpay el resultado de la autorizacin de la o transaccin. o 12. Luego se le env una respuesta poa sitiva o negativa a la tienda virtual, as esta puede cerrar la transaccin ya o sea en forma exitosa o no.

1.1.

Qu es WebPay? e

Webpay es un servicio de pago con Tarjeta de Crdito, desarrollado por Transbank e para realizar transacciones v Internet. Hoy a en d constituye una herramienta clave paa ra el desarrollo de un comercio electrnico o ecaz y seguro en Chile. Este servicio se sustenta a travs de un e software de aplicacin, que se separa en o dos componentes independientes que interactan entre s Una de ellas esta ubicau . da f sicamente en la tienda virtual, dentro del Servidor de Comercio en donde se genera una posible compra por intermedio del browser de un cliente y la otra en el denominado Servidor de Pago de Transbank a travs del cual se realiza la transaccin. e o La secuencia que sigue Webpay es la siguiente:2 1. Esta comienza cuando el potencial cliente de una tienda virtual presiona el botn pagar. o 2. En ese instante la tienda se comunica con Transbank, por medio del KCC, para solicitar autorizacin para trano sar la compra. 3. En este punto, la aplicacin ubicada o en el Servidor de Pago toma el control de la transaccin comunicndose o a directamente con el cliente, solicitando los datos de su tarjeta. 4. Una vez realizado el env de dicha ino formacin directamente a Transbank, o se verica la disponibilidad de cursar la transaccin. o
2

1.2.

Qu es el KCC? e

Es la aplicacin que se instala en el Sero vidor de Comercio que permite conectar el software utilizado por la tienda para vender sus productos y/o servicios, con el Servidor de Pago de Transbank. Es un Kit De Conexin al Comercio, identicado con la sigla o KCC. Para que el KCC se conecte y logre comunicarse sin problemas con el Servidor de Pago es necesario su correcta instalacin y o conguracin por parte del comercio aliado o al servicio Webpay de Transbank.

Vase Anexo de Figuras, gura 4 para grco de secuencia e a

ELO-322

A AUG/L TEX 2

Redes de Computadores I

La integracin del KCC, consta de 2 etao pas: Etapa de Certicacin: Corresponde a o la etapa en donde se valida el correcto funcionamiento de la integracin del o KCC en la tienda del comercio. Etapa de Produccin: Corresponde al o funcionamiento productivo de la solucin en rgimen de operacin normal. o e o Actualmente la interfaz de KCC se encuentra desarrollndose en el lenguaje a J2EE, pero en teor puede encontrarse a programado en cualquier lenguaje (las primeras versiones de este software se encontraban desarrolladas en C). Es por esto que nos otorga todas las facilidades para un desarrollo y una portabilidad a otros sistemas en los cuales se requieran las caracter sticas de KCC.

Encriptacin de mensajer y rma dio a gital. Permite la eleccin del tipo de moneo da de pago de la compra del producto y/o servicio. Dado a que cada comercio es uni co, permite tambin implementarse en e una tienda virtual o en una modalidad de Mall Virtual, en donde un conjunto de tiendas realizan compras, generando slo un total de venta. o Permite diferentes tipos de pagos (ya sea cuotas comercio, tres cuotas sin inters, cuotas normales, y pago nore mal).

2.
2.1.

El Sistema de Ayudant as
Un caso de Exito - Departamento de Informtica a

1.3.

Atributos de WebPay

Los atributos que otorga el sistema WebPay permiten que su uso se extienda a sistemas que requieran una sensibilidad de los datos, dado a que: Permite realizar transacciones seguras y en l nea a travs de Internet. e La informacin de la Tarjeta de Crdio e to del cliente slo es manejada por o Transbank, y no es de conocimiento en ningn momento por el comercio. u Transacciones con Webpay Plus se solicita al tarjeta habiente autenticarse con su banco emisor, protegiendo de esta forma al comercio por eventuales desconocimientos de compra. La seguridad es reforzada por medio de la utilizacin de servidores seguros, o protegidos con SSL (Secure Socket Layer). ELO-322 3

En el Departamento de Informtica se a encuentra en funcionamiento hace algunos aos un sistema basado en LDAP, para la n postulacin de sus alumnos a las ayudant o as de las ctedras que dicta (vase [1]). Si bien a e el sistema otorga funcionalidades para la postulacin, an no se implementan las neo u cesarias para un anlisis de los datos contea nidos. La conexin al sistema de LDAP se reao liza a travs de la instruccin contenida en el e o anexo de cdigos (gura 1), donde es posible o apreciar que la conexin al sistema se desao rrolla en una funcin externa que recibe coo mo parmetros el usuario y la contrasea y a n luego las verica en el sistema, discriminando por profesor o alumno (en un tercer caso por alguna persona externa). Luego en alguna pgina solamente se llama a la funcin a o autentica ldap, con los parmetros corresa pondientes para su uso.
A AUG/L TEX 2

Redes de Computadores I

2.2.

El nuevo sistema de postulacin a ayudant o as

Actualmente muchos departamentos de la Universidad se encuentran an realizando u las postulaciones a las diversas ayudant as de las ctedras que dictan a travs del llea e nado de un documento (escrito a mano por parte de los postulantes), lo cual lleva a una desoptimizacin de recursos y un gasto ino necesario, destinados unicamente al anli a sis de los postulantes. Adems este sistema, a no otorga ninguna herramienta sencilla de anlisis de dichos datos, con lo cual el sistea ma se encuentra completamente obsoleto. En la Universidad existe un sistema en el cual los datos de cada uno de los alumnos y funcionarios se encuentra almacenado, conocido como Sistema de Gestin de Acadmica o e (o por sus siglas SIGA), en donde se manejan las cuentas de cada uno de ellos para usos ociales (inscripciones de cursos, registro de alumnos en cursos, etc). Dado a que los datos contenidos son sensibles (se encuentra informacin valiosa de o funcionarios y alumnos) la principal dicultad es el acceso a ellos. Desde este punto KCC y WebPay nos otorgan las herramientas necesarias para que el acceso a dichos datos sea de manera condencial para cada uno de los departamentos y sean conocidos slo por las entidades autorizadas. o Tal como se muestra en el Anexo de guras (gura 5) la idea general consiste en el desarrollo de una interfaz intermedia que permita el acceso a los datos contenidos en la base de datos de SIGA de manera condencial y segura, utilizando para ello SSL y la idea detrs de KCC para las transacciones a necesarias. En la gura 6 es posible apreciar la interfaz del sistema a desarrollar. A travs de e los siguientes pasos, es posible implementar el funcionamiento de la versin modicada o de KCC al sistema en si: Se realiza una pgina sencilla en la a ELO-322 4

cual se solicita el nombre de usuario y la contrasea para cargar los datos n correspondientes (guras 2 y 7) Se env los datos a la interfaz proan gramada por el encargado de SIGA (gura 3). El cdigo ejecuta la consulta en la base o de datos de SIGA (gura 3) y retorna los datos solicitados. Se carga la pgina de usuario corresa pondiente con los datos retornados por la interfaz de SIGA (gura 8) El sistema provee las directivas de seguridad (a travs del uso de SSL y rmas digitales) e necesarias para una transferencia conable y segura de los datos contenidos en SIGA. Dado a que el algoritmo utilizado ser de a uso exclusivo de las autoridades pertinentes, la proteccin de dichos datos ser el punto o a fundamental en el desarrollo, dado a que no se permitirn modicaciones a ellos (la cona sulta se encuentra preconstruida en el ejemplo), tanto el desarrollador de la aplicacin o como el usuario, desconocer completamena te como se encuentra sta conformada, dee dicndose exclusivamente a la programacin a o de la aplicacin de acuerdo a los datos retoro nados y a su correcto uso (correspondientemente).

3.

Conclusin o

Es posible ver que las tecnolog actuaas les de desarrollo de software son transversales y cada vez ms es posible implemena tar soluciones existentes y diferentes (como en este caso WebPay) para otros usos en el a rea. La seguridad es base fundamental en el desarrollo de toda aplicacin que maneje o datos sensibles, con lo cual un buen modelado de las redes existentes en cada uno de los casos permite reutilizar y construir aplicaciones nuevas sobre un mdelo probado o
A AUG/L TEX 2

Redes de Computadores I

en su seguridad. As como ahora el sistema de ejemplo mostrado en el documento para la implementacin de un sistema de ayuo dant basado en un sistema de comercio as virtual, es posible extender la idea a otras a reas (como por ejemplo salud, educacin, o etc) utilizando las normas de seguridad de transmisin de datos, instauradas en sisteo mas ya existentes.

Referencias
[1] Departamento de Informtica UTFSM. a Sistema de postulacin a ayudant o as. http://spa.inf.utfsm.cl, 2003. [2] Transbank S.A. Manual de integracin, o kit de conexin a comercio. Restringio do a personal autorizado, no es posible su referencia externa, salvo autorizacin o expresa, 2009.

ELO-322

A AUG/L TEX 2

Redes de Computadores I

4.

Anexo Cdigos o

f u n c t i o n a u t e n t i c a l d a p ( $ u s e r , $ password ) { $ l d a p c o n n = ldap connect ( l d a p . i n f . utfsm . c l ) o r die ( No e s p o s i b l e c o n e c t a r con e l s e r v i d o r ) ;


$ r e s u l t=l d a p s e a r c h ( $ l d a p c o n n , ou=i n f , o=utfsm , c=c l , u i d= $ u s e r ) ;

i f ( $entry = ldap first entry ( $ldap conn , $ r e s u l t ) ) { $ dn = ldap dn2ufn ( ldap get dn ( $ l d a p c o n n , $ e n t r y ) ) ; $ binddn = ldap get dn ( $ l d a p c o n n , $ e n t r y ) ; $ l d a p b i n d = @ldap bind ( $ l d a p c o n n , $ binddn , $ password ) ; i f ( $ l d a p b i n d and eregi ( p r o f e s o r e s , $ binddn ) ) { return 1; } e l s e i f ( $ l d a p b i n d and eregi ( alumnos , $ binddn ) ) { return 2; } else { return 0; } } } Figura 1: Cdigo de conexin a LDAP, Depto. Informtica, archivo: ldap.php o o a

ELO-322

A AUG/L TEX 2

Redes de Computadores I

<d i v c l a s s= r i g h t > <br /> <form method= p o s t > <f i e l d s e t > <l e g e n d >Login </l e g e n d > <t a b l e > <t r > <td>U s u a r i o :</ td> <td><i n p u t type= t e x t s i z e= 16 name= u s u a r i o /></td> </t r > <t r > <td>Password :</ td> <td><i n p u t type= password s i z e= 16 name= password /></td> </t r > </ t a b l e > <p><i n p u t type= submit v a l u e= Entrar /></p> <i n p u t type= hidden name= l o g g e d v a l u e= 1 /> <? i f ( i s s e t ( $ userwrong ) && $ userwrong == y e s ) : ?> <p s t y l e= c o l o r : r e d ; f o n t s i z e : 1 2 px ; > Datos de u s u a r i o i n c o r r e c t o s </p> <? e n d i f ;? > </ f i e l d s e t > </form> </div> Figura 2: Cdigo para el index.php o

ELO-322

A AUG/L TEX 2

Redes de Computadores I

function retorna dato ( $usuario , $pass ) { $ s q l = SELECT nombres , a p e l l i d o s , d i r e c c i o n , rut , r o l , c a r r e r a , c u r s o , pponde , p r i o r i d a d , r e p r o b a d a s , t e r c e r a s FROM D a t o s p e r s o n a l e s INNER JOIN Alumnos ON ( D a t o s p e r s o n a l e s . r u t = Alumnos . r u t ) WHERE D a t o s p e r s o n a l e s . l o g i n = $ u s u a r i o ; $ r e s p = mysql query ( $ s q l , b a s e s i g a ) ; $ d a t o s = mysql fetch assoc ( $ r e s p , MYSQL BOTH) ; return $datos ; } Figura 3: Ejemplo de cdigo de consulta en SIGA o

ELO-322

A AUG/L TEX 2

Redes de Computadores I

5.

Anexo de Figuras

Figura 4: Secuencia de Transaccin Electrnica con Webpay Plus o o

ELO-322

A AUG/L TEX 2

Redes de Computadores I

Figura 5: Idea general del sistema

Figura 6: Modelo propuesto para sistema de ayudant as

ELO-322

10

A AUG/L TEX 2

Redes de Computadores I

Figura 7: Pgina inicial del sistema de postulacin a o

Figura 8: Pgina de usuario del sistema a

ELO-322

11

A AUG/L TEX 2

You might also like