Estudio WebPay

12
 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 pr odu c- to y/o servicio a tra es de Int er- net es una tendencia que cada vez va cobrando m´ as fuerza en Chile, es p or e sto q ue di versas tecnolog´ ıas se han desarrollado para proteger a los usuarios y sus datos privados. Pero est as tecnolo ıas tambi´ en han abierto la puerta a otros potencia- les usos en sistemas que requieran tambi´ en una sensibi lidad en l os da - tos transferidos, es as ´ ı como nace WebPay y se tratar´ a como imple- mentarlo de manera efectiva en un sistema real. WebPay es un servicio de pago con Tarjeta de Cr´ edito, desarrol la- do por la empresa Transbank pa- ra re alizar transacc iones a trav´ es d e Internet. Hoy en d ´ ıa constitu ye un a herramienta clave para el desarrollo de un comercio electr´ onico ecaz y seguro en Chile. Este software permite, adem´ as de su tradicional uso en transaccio- nes bancarias, su aplicaci´ on en di- ve rso s des arr oll os en los cua les el acceso a los datos es sensible permi- tiendo que, en el caso de una tien- da virtual, los datos sean solamente conocidos por el usuario del siste- ma y una entidad previamente au- torizada (ya sea  de facto  o  de iu- re 1 ), con lo cual otorga un nivel de seguridad en la transferencia de los datos. Una de las posible apli- caciones (y que ser´a tratada en el presente informe) corresponde a su uso en el desarrollo de una aplica- ci´ on para el sistema de postulaci´ on a ayudan t ´ ıas (mencionando su ac- tual funcionamiento en el Departa- mento de Inform´ atica, y posterior- mente como ´ este ser´ a extensible a los campus Santiago y Casa Central de la UTFSM y sus diversos depar- tamentos), en donde el sistema uti- lizado corresponder´a a una versi´ on adaptada de  KCC para los datos que la universi dad maneja a trav´ es del sistema  SIGA. 1 De Facto: Acuerdo t´ acito entre dos entidades relacionadas,  De iure : Acue rdo co n reco nocimiento j ur ´ ıdi- co - Referencias: Wikipedia  http://es.wikipedia .org/wiki/De_iure 1

Transcript of Estudio WebPay

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 1/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 produc-to y/o servicio a traves de Inter-net es una tendencia que cada vezva cobrando mas fuerza en Chile,es por esto que diversas tecnologıasse han desarrollado para proteger alos usuarios y sus datos privados.Pero estas tecnologıas tambien han

abierto la puerta a otros potencia-les usos en sistemas que requierantambien una sensibilidad en los da-tos transferidos, es ası como naceWebPay y se tratara como imple-mentarlo de manera efectiva en unsistema real.

WebPay es un servicio de pagocon Tarjeta de Credito, desarrolla-do por la empresa Transbank pa-ra realizar transacciones a traves deInternet. Hoy en dıa constituye unaherramienta clave para el desarrollode un comercio electronico eficaz yseguro en Chile.

Este software permite, ademasde su tradicional uso en transaccio-nes bancarias, su aplicacion en di-versos desarrollos en los cuales el

acceso a los datos es sensible permi-tiendo que, en el caso de una tien-da virtual, los datos sean solamenteconocidos por el usuario del siste-ma y una entidad previamente au-torizada (ya sea de facto o de iu-

re1), con lo cual otorga un nivelde seguridad en la transferencia delos datos. Una de las posible apli-caciones (y que sera tratada en elpresente informe) corresponde a suuso en el desarrollo de una aplica-cion para el sistema de postulaciona ayudantıas (mencionando su ac-tual funcionamiento en el Departa-mento de Informatica, y posterior-mente como este sera extensible alos campus Santiago y Casa Centralde la UTFSM y sus diversos depar-tamentos), en donde el sistema uti-lizado correspondera a una versionadaptada de KCC para los datos

que la universidad maneja a travesdel sistema SIGA.

1De Facto: Acuerdo tacito entre dos entidades relacionadas, De iure: Acuerdo con reconocimiento jurıdi-

co - Referencias: Wikipedia http://es.wikipedia.org/wiki/De_iure

1

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 2/11

 

Redes de Computadores I 

1. Introduccion

Para poseer una vision mas amplia res-pecto a otros usos para la interfaz WebPay,es importante preguntarse ¿Que es Web-

Pay?  y como es que esta funciona.

1.1. ¿Que es WebPay?

Webpay es un servicio de pago con Tar- jeta de Credito, desarrollado por Transbankpara realizar transacciones vıa Internet. Hoyen dıa constituye una herramienta clave pa-ra el desarrollo de un comercio electronicoeficaz y seguro en Chile.

Este servicio se sustenta a traves de un

software de aplicacion, que se separa endos componentes independientes que inter-actuan entre sı. Una de ellas esta ubica-da fısicamente en la tienda virtual, dentrodel Servidor de Comercio en donde se ge-nera una posible compra por intermedio delbrowser de un cliente y la otra en el deno-minado Servidor de Pago de Transbank atraves del cual se realiza la transaccion.

La secuencia que sigue Webpay es la si-guiente:2

1. Esta comienza cuando el potencialcliente de una tienda virtual presionael boton pagar.

2. En ese instante la tienda se comunicacon Transbank, por medio del KCC,para solicitar autorizacion para tran-sar la compra.

3. En este punto, la aplicacion ubicadaen el Servidor de Pago toma el con-trol de la transaccion comunicandose

directamente con el cliente, solicitan-do los datos de su tarjeta.

4. Una vez realizado el envıo de dicha in-formacion directamente a Transbank,se verifica la disponibilidad de cursarla transaccion.

5. En caso de que la tienda opere conWebpay Plus, se solicita la autentica-cion del tarjeta habiente en su bancoemisor.

6. El banco despliega pagina de autenti-cacion para el tarjeta habiente.

7. El tarjeta habiente ingresa los datossolicitados para autenticacion, estosdependen de cada banco.

8. El banco envıa a Transbank el resulta-do de la autenticacion, si esta es posi-tiva continua con los pasos siguientes,en caso contrario, Webpay rechaza latransaccion.

9. Webpay solicita la autorizacion de latransaccion al autorizador del bancoemisor de la tarjeta de credito.

10. Autorizador responde (aprobado, re-chazado) a Transbank.

11. Transbank responde a Webpay elresultado de la autorizacion de latransaccion.

12. Luego se le envıa una respuesta po-

sitiva o negativa a la tienda virtual,ası esta puede cerrar la transaccion yasea en forma exitosa o no.

1.2. ¿Que es el KCC?

Es la aplicacion que se instala en el Ser-vidor de Comercio que permite conectar elsoftware utilizado por la tienda para vendersus productos y/o servicios, con el Servidorde Pago de Transbank. Es un Kit De Co-

nexion al Comercio, identificado con la siglaKCC.Para que el KCC se conecte y logre co-

municarse sin problemas con el Servidor dePago es necesario su correcta instalacion yconfiguracion por parte del comercio afiliadoal servicio Webpay de Transbank.

2Vease Anexo de Figuras, figura 4 para grafico de secuencia

ELO-322  2 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 3/11

 

Redes de Computadores I 

La integracion del KCC, consta de 2 eta-pas:

Etapa de Certificacion: Corresponde ala etapa en donde se valida el correctofuncionamiento de la integracion delKCC en la tienda del comercio.

Etapa de Produccion: Corresponde alfuncionamiento productivo de la solu-cion en regimen de operacion normal.

Actualmente la interfaz de KCC seencuentra desarrollandose en el lenguajeJ2EE, pero en teorıa puede encontrarseprogramado en cualquier lenguaje (las pri-

meras versiones de este software se encon-traban desarrolladas en C). Es por esto quenos otorga todas las facilidades para undesarrollo y una portabilidad a otros sis-temas en los cuales se requieran las carac-terısticas de KCC.

1.3. Atributos de WebPay

Los atributos que otorga el sistema Web-Pay permiten que su uso se extienda a sis-temas que requieran una sensibilidad de los

datos, dado a que:

Permite realizar transacciones segurasy en lınea a traves de Internet.

La informacion de la Tarjeta de Credi-to del cliente solo es manejada porTransbank, y no es de conocimientoen ningun momento por el comercio.

Transacciones con Webpay Plus se so-licita al tarjeta habiente autenticarse

con su banco emisor, protegiendo deesta forma al comercio por eventualesdesconocimientos de compra.

La seguridad es reforzada por mediode la utilizacion de servidores seguros,protegidos con SSL (Secure Socket La-yer).

Encriptacion de mensajerıa y firma di-gital.

Permite la eleccion del tipo de mone-

da de pago de la compra del productoy/o servicio.

Dado a que cada comercio es uni-co, permite tambien implementarse enuna tienda virtual o en una modalidadde Mall Virtual, en donde un conjuntode tiendas realizan compras, generan-do solo un total de venta.

Permite diferentes tipos de pagos (yasea cuotas comercio, tres cuotas sininteres, cuotas normales, y pago nor-mal).

2. El Sistema de Ayudantıas

2.1. Un caso de Exito - Departa-

mento de Informatica

En el Departamento de Informatica seencuentra en funcionamiento hace algunos

anos un sistema basado en LDAP, para lapostulacion de sus alumnos a las ayudantıasde las catedras que dicta (vease [1]). Si bienel sistema otorga funcionalidades para lapostulacion, aun no se implementan las ne-cesarias para un analisis de los datos conte-nidos.

La conexion al sistema de LDAP se rea-liza a traves de la instruccion contenida en elanexo de codigos (figura 1), donde es posibleapreciar que la conexion al sistema se desa-

rrolla en una funcion externa que recibe co-mo parametros el usuario y la contrasena yluego las verifica en el sistema, discriminan-do por profesor o alumno (en un tercer casopor alguna persona externa). Luego en al-guna pagina solamente se llama a la funcionautentica ldap, con los parametros corres-pondientes para su uso.

ELO-322  3 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 4/11

 

Redes de Computadores I 

2.2. El nuevo sistema de postula-

cion a ayudantıas

Actualmente muchos departamentos dela Universidad se encuentran aun realizando

las postulaciones a las diversas ayudantıasde las catedras que dictan a traves del lle-nado de un documento (escrito a mano porparte de los postulantes), lo cual lleva a unadesoptimizacion de recursos y un gasto in-necesario, destinados unicamente al anali-sis de los postulantes. Ademas este sistema,no otorga ninguna herramienta sencilla deanalisis de dichos datos, con lo cual el siste-ma se encuentra completamente obsoleto.

En la Universidad existe un sistema en el

cual los datos de cada uno de los alumnos yfuncionarios se encuentra almacenado, cono-cido como Sistema de Gestion de Academica(o por sus siglas SIGA), en donde se mane-  jan las cuentas de cada uno de ellos parausos oficiales (inscripciones de cursos, regis-tro de alumnos en cursos, etc).

Dado a que los datos contenidos son sen-sibles (se encuentra informacion valiosa defuncionarios y alumnos) la principal dificul-tad es el acceso a ellos. Desde este punto

KCC y WebPay nos otorgan las herramien-tas necesarias para que el acceso a dichosdatos sea de manera confidencial para cadauno de los departamentos y sean conocidossolo por las entidades autorizadas.

Tal como se muestra en el Anexo de fi-guras (figura 5) la idea general consiste enel desarrollo de una interfaz intermedia quepermita el acceso a los datos contenidos enla base de datos de SIGA de manera confi-dencial y segura, utilizando para ello SSL yla idea detras de KCC para las transaccionesnecesarias.

En la figura 6 es posible apreciar la in-terfaz del sistema a desarrollar. A traves delos siguientes pasos, es posible implementarel funcionamiento de la version modificadade KCC al sistema en si:

Se realiza una pagina sencilla en la

cual se solicita el nombre de usuarioy la contrasena para cargar los datoscorrespondientes (figuras 2 y 7)

Se envıan los datos a la interfaz pro-

gramada por el encargado de SIGA (fi-gura 3).

El codigo ejecuta la consulta en la basede datos de SIGA (figura 3) y retornalos datos solicitados.

Se carga la pagina de usuario corres-pondiente con los datos retornadospor la interfaz de SIGA (figura 8)

El sistema provee las directivas de seguridad

(a traves del uso de SSL y firmas digitales)necesarias para una transferencia confiabley segura de los datos contenidos en SIGA.Dado a que el algoritmo utilizado sera deuso exclusivo de las autoridades pertinentes,la proteccion de dichos datos sera el puntofundamental en el desarrollo, dado a que nose permitiran modificaciones a ellos (la con-sulta se encuentra preconstruida en el ejem-plo), tanto el desarrollador de la aplicacioncomo el usuario, desconocera completamen-

te como se encuentra esta conformada, de-dicandose exclusivamente a la programacionde la aplicacion de acuerdo a los datos retor-nados y a su correcto uso (correspondiente-mente).

3. Conclusion

Es posible ver que las tecnologıas actua-les de desarrollo de software son transver-sales y cada vez mas es posible implemen-

tar soluciones existentes y diferentes (comoen este caso WebPay) para otros usos en elarea. La seguridad es base fundamental enel desarrollo de toda aplicacion que manejedatos sensibles, con lo cual un buen mode-lado de las redes existentes en cada uno delos casos permite reutilizar y construir apli-caciones nuevas sobre un modelo probado

ELO-322  4 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 5/11

 

Redes de Computadores I 

en su seguridad. Ası como ahora el sistemade ejemplo mostrado en el documento pa-ra la implementacion de un sistema de ayu-dantıas basado en un sistema de comercio

virtual, es posible extender la idea a otrasareas (como por ejemplo salud, educacion,etc) utilizando las normas de seguridad detransmision de datos, instauradas en siste-mas ya existentes.

Referencias

[1] Departamento de Informatica UTFSM.Sistema de postulacion a ayudantıas.http://spa.inf.utfsm.cl, 2003.

[2] Transbank S.A. Manual de integracion,kit de conexion a comercio. Restringi-do a personal autorizado, no es posiblesu referencia externa, salvo autorizacionexpresa, 2009.

ELO-322  5 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 6/11

 

Redes de Computadores I 

4. Anexo Codigos

f u n ct i o n a u t e n t i ca l d a p ( $  u s e r , $  p as s wor d ){$ 

l d a p c o n n = ldap connect (” ld ap . in f . u tf s m . c l ”) ordie ( ”No e s p o s i b le c on ec ta r con e l s e r vi d o r ” ) ;

$  r e s u l t =l d a p s e a r c h ( $  lda p conn , ”ou=in f , o=utfsm , c=c l ” ,” uid= $  u s e r ” )

i f  ( $  e n t r y = l d a p f i r s t e n t r y ( $  l d a p c o n n , $  r e s u l t ) ) {$  dn = ldap dn2ufn ( ldap get dn ( $  ld ap c on n , $  e n t r y ) ) ;$  b in d d n = ldap get dn ( $  l d a p c o n n , $  e n t r y ) ;$  l d a pb i n d = @ l da p b i n d ( $  l d a p c o n n , $  binddn , $  password ) ;

i f  ( $  l d a p b i n d a nd eregi ( ” p r o f e s o r e s ” , $  binddn )) {r e tu r n 1 ;

}e l se i f   ( $  l d a p b i n d a nd eregi ( ”alumnos” , $  binddn ) ) {

r e tu r n 2 ;}e l s e {

r e tu r n 0 ;}

}}

Figura 1: Codigo de conexion a LDAP, Depto. Informatica, archivo: ldap.php

ELO-322  6 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 7/11

 

Redes de Computadores I 

<d iv c l a s s =” r i g h t ”><br />

<form method=” po st ”>< f i e l d s e t>

<le ge n d>Login</le ge n d><t a b l e>

<t r><td>U s u a r i o :</ td><td><i n p u t t y p e=” t e x t ” s i z e =” 1 6 ” n ame=” u s u a r i o ” /></t d></t r><t r><td>Password:</ td><td><in p u t ty p e=”p as s wor d ” s iz e =”16” name=”p as s wor d ” /></t r>

</ t a b l e>

<p><i n p u t t y p e=” s u b mi t ” v a l u e=” E n t r a r ” /></p><in p u t ty p e=”h id d e n ” name=”l ogge d ” v alu e =”1” /><? i f  ( i s s e t ( $  userwrong ) && $  u s e rw r o ng == ” 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 p x ; ”>Dat os de u s ua 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: Codigo para el index.php

ELO-322  7 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 8/11

 

Redes de Computadores I 

f u n c t i o n r e t o r n a d a t o ( $  u s u a r i o , $  pass ){

$  s q l = ”SELECT no mbre s , a p e l l i d o s , d i r e c c i o n , r ut , r o l ,c a r r e r a , c u rs o , pponde , p r i o r i d a d , r e pr o ba d as ,

t e r c e r a s FROM D a t o s p e r s o n a l e sINNER JOIN Alumnos ON ( Da to s pe rs on al es . ru t = Alumnos . ru t )WHERE Da to s pe rs on al es . lo gi n = $  u s u a r i o ” ;

$  r e s p = mysql query ( $  s ql , ” b a s e s i g a ” ) ;$  d a t o s = mysql fetch assoc ( $  re s p , MYSQL BOTH) ;

r e t u r n $  d atos ;}

Figura 3: Ejemplo de codigo de consulta en SIGA

ELO-322  8 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 9/11

 

Redes de Computadores I 

5. Anexo de Figuras

Figura 4: Secuencia de Transaccion Electronica con Webpay Plus

ELO-322  9 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 10/11

 

Redes de Computadores I 

Figura 5: Idea general del sistema

Figura 6: Modelo propuesto para sistema de ayudantıas

ELO-322  10 AUG/LATEX 2ε

5/10/2018 Estudio WebPay - slidepdf.com

http://slidepdf.com/reader/full/estudio-webpay 11/11

 

Redes de Computadores I 

Figura 7: Pagina inicial del sistema de postulacion

Figura 8: Pagina de usuario del sistema

ELO-322  11 AUG/LATEX 2ε