Joan Marcel Duran Olive SEGURETAT A INTERNET Joan Marcel Duran Olive
Contingut Introducció Protocol SSL Protocol SET Adreces útils
Introducció Necessitat de protegir les dades Necessitat de conèixer les parts afectades Emisor Receptor Necessitat de generar transaccions Utilització de tècniques i métodes fiables Apareix S-HTTP (Secure Hyper Text Protocol)
Introducció - S-HTTP Afecta al nivell aplicació Implementat sobre la mateixa aplicació Independent dels protocols de xarxa inferiors Protocols com TCP inalterats Permet diferents mecanismes Signatura digital Autenticació Encriptació (dif. Mètodes criptogràfics) Encriptació pública en un únic sentit (sense autenticació per la part client)
Introducció - S-HTTP Negociació entre el client/servidor Esquema utilitzat: shttp://www.fib.upc.es Problemes: Qualsevol aplicació ho ha d’implementar Autentificació client
Protocol SSL - Característiques Protocol Secure Socket Layer Especificacions fetes per Netscape L’aplicació és independent de la implementació de la seguretat Aplicable a qualsevol aplicació, no només a WWW S’afegiex un nivell entre el nivell d’aplicació i el nivell de transport Intervé una negociació entre el client i el servidor. Esquema utilitzat: https://www.fib.upc.es
Protocol SSL - Esquema Interacció: Aplicació usuari Text Text SSL TCP Encriptat Text Encriptat TCP
Protocol SSL - Funcionament SSL encapsula les dades en un registre SSL Utilitza un protocol de negociació “handshake protocol” El client envia un missatge “Client-hello” al servidor Dades (autenticació posterior) + Especificacions de xifradors El servidor respon amb un altre missatge “Server-hello” ID. Connexió aleatori + Especif. Xifrat + certificat clau pública El client envia dos missatges (1ª part) Missatge “Client-key” Clau mestre del client (utilització clau pública servidor) Misatge “Client-finish” ID. Connexióanterior (utilització clau privada del client)
Protocol SSL - Funcionament El servidor envia dos missatges (2ª part) Missatge “Server-verify” Dades inicials (utilització clau privada servidor) Missatge “Server-finish” ID. Sessió (utilització clau privada servidor)
Protocol SSL - Observacions 1ª part Autenticació de missatge provinent del mateix client 2ª part Autenticació del servidor El Id. Sessió proveeix un mecanisme de reconnexió No cal renegociar l’encriptació a utilitzar No cal reenviar les claus Missatge “Client-hello” referint-se a un Id. Sessió anterior El client i el servidor mantenen una cache de sessions on es guarden les opcions d’encriptació rebudes per l’altra part L’autenticació del client la demana el servidor amb un missatge “request-certificate” anterior al server-finish
Protocol SSL - Esquema Interacció: Client SSL Servidor SSL Client-hello (Dades+espec. Xifrat) Server-hello (Id. Connexió+ certif. clau pública+especif. xifrat) Client-key (Clau pública encriptat públic) Client-finish (Id. Connexió encriptat privat) Server-verify (Dades encriptat privat) Server-finish (Id. Sessió encriptat privat)
Protocol SET - Característiques Secure Electronic Transaction Especificació oberta per part de Visa i Mastercard antigament rivals Incorpora l’ús de la clau pública-privada Necessitat de Software especial a la part del client i a la part del comerciant Part de tecnologia resideix a l’entitat financera del comerciant Intervenen les CA’s (Certificate Authority) per a produir certificats digitals
Protocol SET - Característiques Especificació SET composta per 1er llibre Especificacions de negoci 2on llibre Especificacions tècniques 3er llibre Definició del protocol Entitats que intervenen Consumidor Banc del consumidor Comerciant Banc del comerciant (Acreedor) Pasarela de pagament Targes de crèdit (Visa, Mastercard,..)
Protocol SET - Requeriments Proveïr confidencialitat per la informació de compra i de pagament. Asegurar la integritat de les dades Proveïr autenticitat per la part compradora Usuari legítim d’un compte de crèdit Proveïr autenticitat per la part venedora Acceptació de transaccions a través de la relació amb la seva entitat financera
Protocol SET - Funcionament Utilització de criptografia simètrica i assimètrica Simètrica clau secreta per encriptar i desencriptar el missatge Assimètrica clau pública clau privada Utilització de signatura digital El comerciant envia la pròpia clau pública i la clau pública del banc del comerciant a través de Certificats Digitals i també un identificador de la transacció.
Protocol SET - Funcionament El consumidor utilitza les claus per a posar-se en contacte amb el Venedor i enviar la informació de compra i la informació financera. Apareix el concepte de signatura dual per què? Únic missatge per la inf. de compra i per la inf. financera No deixar veure la inf. de pagament (IP) al comerciant No deixar veure la inf. de l’ordre (IO) al banc com?
Protocol SET - Funcionament SDu = consumidor.E.PrK( R( R(IO) || R(IP) )) E(IP)= E.SmK( R(IO) + IP + SDu) EDi = A.E.PuK( SmK ) El comerciant NO podrà veure la informació financera, però l’ha d’enviar al seu banc (Acreedor). El comerciant envia una resposta al consumidor conforme l’ordre d’autorització s’està processant El consumidor es posa en contacte amb el comerciant per saber l’estat de l’autorització
Protocol SET - Funcionament L’Acreedor serà l’encarregat de verificar la informació de les dues parts, enviades per el comerciant Posteriorment es posarà en contacte amb el banc del consumidor per fer les verificacions de la informació financera i efectuar el càrrec-ingrés. L’acreedor envia confirmació o denegació de l’ordre al comerciant. El comerciant envia el producte o servei al consumidor El consumidor asegura així la privacitat de la transacció
Protocol SET - Funcionament Procés: Ordinador consumidor Ordinador comerciant 1-Petició inicial 2-Resposta inicial 3-Petició compra 5-Resposta compra
Protocol SET - Funcionament Procés: Ordinador banc consumidor Ordinador comerciant Ordinador acreedor 4-Petició autorització Resposta autorització
Protocol SET - Descripció procés Detalls del Procés d’adquisició C Comprador V Venedor A Banc del venedor (Acreedor) B Banc del comprador M Missatge Mr Missatge resposta Ma Missatge autorització E Encriptació Trx Identificador Transacció R Resum (Aplicar funció hash sobre un determinat M) CD Certificat Digital SDu Sigantura Dual SDi Signatura Digital EDi Sobre Digital PuK Clau Pública PrK Clau Privada SmK Clau Simètrica IP Informació Pagament IO Informació Ordre
Protocol SET - Descripció procés C V (Comprador a Venedor) 1.- C.M = Peticio_Inicial(tarja_credit) V C (Venedor a Comprador) 2.- V.M = Resposta_Inicial( V.CD + A.CD + Trx ) 3.0- IO = IO(Trx) 3.1- IP = IP(Trx) 3.2- SDu = C.E.PrK( R( C.R(IO) || C.R(IP) )) 3.3- E(IP) = E.SmK( R(IO) + IP + SDu) 3.4- EDi = A.E.PuK( SmK ) 3.5 C.M = Petició_Adquisició( E(IP) + EDi + R(IP) + IO + C.PrK(SDu) + C.CD) Consideracions: 3.3 i 3.4 Només ho podrà llegir A IO no arribarà a A
Protocol SET - Descripció procés V C (Venedor a Comprador) 5.1- V.SDi = R( V.Mr ) 5.2- V.M = Resposta_Adquisició V.E.PrK( V.SDi ) + Mr + V.CD) V A (Venedor a Acreedor) 4.1- V.Ma = cantitat + Trx + V.R(IO) 4.2- V.SDi = V.PrK( R(V.Ma) ) 4.3- V.E = V.E.SmK( V.Ma + V.SDi ) 4.4- V.EDi = A.PuK( SmK ) 4.5- V.M = Peticio_Autoritzacio ( V.Ma + V.SDi + V.E + V.EDi + C.CD + V.CD + C.E(IP)<3.3> + C.EDi<3.4>)
Protocol SET - Descripció procés Software del Acreedor <Validacions> Pas 0: comproba C.CD Verifica Venedor Pas 1: obté SmK del 4.4 Pas 2: obté V.Ma del 4.3 Pas 3: genera R( V.Ma ) Pas 4: obté V.R( V.Ma) del 4.2 Pas 5: coincideixen resultats dels passos 3 i 4 ? Pas 6: comproba V.CD Verifica Comprador Pas 7: obté SmK del 4.5 que ve del 3.4 Pas 8: obté C.IP i C.SDu del 4.5 que ve del 3.3 Pas 9.1: obté V.R(IO) del 4.5 que ve del 4.1 Pas 9.2: genera R( V.R(IO) || R(C.IP))) Pas 10: obté R( C.R(IO) || C.R(IP) ) Pas 11: coincideixen resultats dels passos 9.2 i 10? Verifica transacció Pas 12.1: obté V.Trx del pas 4.5 que ve del 4.1 Pas 12.2: obté C.Trx del pas 4.5 que ve del 3.3 que ve del 3.1 Pas 12: comprova V.Trx = C.Trx
Protocol SET - Descripció procés Si el pas 12 es correcte llavors: A B (Acreedor a Banc comprador) A.M = Petició_Autoritzacio(cap al banc comprador...) B A (Banc comprador a Acreedor) B.M = Resposta_Autoritzacio(cap al acreedor...) A V (Acreedor a Venedor) A.M = Resposta_Autoritzacio(cap al venedor..) Si la Resposta_autoritzacio es correcte llavors: El venedor ja pot enviar el producte o donar el servei al comprador
Protocol SET - Història El 29 d’Abril de 1997 es realitza la primera prova del sistema a Singapore Intervenen: IBM amb la pasarela de pagament enllaçant Citibank a Internet Verisign produeix els certificats digitals Globe Set, Inc: Software SET usat per American Express i el comerç Wal-Mart American Express: rep i autoritza la transacció.
Adreces útils Sistemes de pagament electrònic: Automated Transaction services www.atsbank.com Commercenet www.commercenet.com Bank Internet Payment System (BIPS) www.fstc.org/projects/bips/index.html Cybercash www. Cybercash.com Cashbox www.intertrader.com Companyies de comerç electrònic Card Service international www.cardsvc.com Checkfree Corporation www.checkfree.com Cybersource Corporation www.cybersource.com
Adreces útils Protocol SSL Protocol SET www.netscape.com www.visa.com www.mastercard.com
Bibliografia del tema Electronic commerce On-line ordering and digital money Pete Loshin / Paul Murphy www.raleigh.ibm.com/cgi-bin/bookmgr/books/ez30qd00 SecureElectronic transactions: www credit card payment