Seguretat en el comerç electrònic

  • Jordi Herrera Joancomartí

     Jordi Herrera Joancomartí

    Llicenciat en Matemàtiques per la Universitat Autònoma de Barcelona i doctor per la Universitat Politècnica de Catalunya. El seu àmbit de recerca és la seguretat de la informació i més concretament la criptografia i la protecció del copyright. Actualment és professor propi als Estudis d'Informàtica i Multimèdia de la Universitat Oberta de Catalunya.

PID_00160559
Cap part d'aquesta publicació, incloent-hi el disseny general i la coberta, no pot ser copiada, reproduïda, emmagatzemada o transmesa de cap manera ni per cap mitjà, tant si és elèctric com químic, mecànic, òptic, de gravació, de fotocòpia o per altres mètodes, sense l'autorització prèvia per escrit dels titulars dels drets.

Introducció

Una de les diferències importants entre el comerç electrònic i el comerç tradicional és el fet que les transaccions es realitzen en un entorn no presencial i, per tant, els interlocutors no es coneixen. Aquest fet genera una desconfiança mútua entre els participants que fa que els requisits de seguretat que fan falta en els sistemes de comerç electrònic siguin superiors als del comerç convencional.
D'altra banda, l'explosió del comerç electrònic s'ha produït en gran part per la generalització de l'ús de les xarxes d'ordinadors. El fet que les xarxes siguin obertes facilita encara més l'increment del nombre d'usuaris que s'hi connecten, però alhora implica que els nivells de seguretat d'aquestes xarxes siguin per defecte baixos i, per tant, fa necessària la utilització de tècniques complementàries que assegurin la seguretat que el protocol IP no ofereix per si mateix.
En aquest mòdul didàctic definirem els conceptes bàsics de la seguretat de la informació. Per saber com es poden aplicar al comerç electrònic, estudiarem algunes nocions bàsiques de criptografia. Aquestes nocions ens permetran d'entendre d'una manera més clara les infraestructures de clau pública molt utilitzades en el comerç electrònic. Cal destacar que aquestes nocions de criptografia seran molt bàsiques per tal que posteriorment altres conceptes més generals com les infraestructures de clau pública es puguin entendre de manera més clara. L'estudiant que vulgui aprofundir en l'estudi de la criptografia pot consultar els materials de l'assignatura Criptografia.
Centrant-nos en el comerç electrònic, hem dividit la seguretat en diferents àmbits depenent d'allò que vulguem protegir. Així, diferenciarem la seguretat en el conjunt de les dades, la seguretat en els sistemes de pagament i la seguretat en el producte venut (en el cas que aquest estigui en suport electrònic).
Per acabar, és important destacar que aquest mòdul no pretén ser un curs de seguretat des d'un punt de vista general, sinó que es vol donar una visió concreta de com afecta la seguretat al comerç electrònic.

Objectius

Els materials didàctics d'aquest mòdul han de permetre d'assolir els objectius següents:
  1. Entendre i assimilar els conceptes bàsics de la seguretat de la informació.

  2. Conèixer el funcionament elemental de la criptografia, tant de clau simètrica com de clau pública.

  3. Entendre el concepte de signatura digital i com les infraestructures de clau pública ajuden a resoldre les mancances que la signatura digital té per si sola.

  4. Conèixer la utilitat de les targetes intel·ligents amb microprocessador en el camp de la seguretat.

  5. Entendre les diferents problemàtiques de seguretat que hi ha en els diferents àmbits del comerç electrònic i quines solucions possibles hi ha per a cada un d'ells.

1.Conceptes bàsics de seguretat de la informació

Per a poder entendre quin paper té la seguretat en el comerç electrònic des d'un punt de vista global, primer és necessari establir diferents conceptes que fixen diferents nivells de seguretat de la informació.
Prenent com a exemple la compra d'un llibre en una botiga en línia fent el pagament amb la nostra targeta de crèdit convencional cal que es compleixin els requisits de seguretat següents:
1) No ha de ser possible que cap altre individu que no sigui la botiga pugui veure les dades de la nostra targeta de crèdit.
2) Cal que "la identitat" de la botiga no pugui ser suplantada, és a dir, no pot ser que ningú pugui posar una pàgina web igual a la d'una botiga coneguda per fer-nos creure que comprem allà.
3) Tampoc no ha de ser possible que cap intrús pugui modificar les dades de la nostra targeta o de la transacció de compra.
4) Per acabar, no pot ser que havent donat el nostre vistiplau a la compra d'un producte, ens fem enrere posteriorment i la botiga no tingui manera de provar que ens hem desdit del que havíem acordat prèviament.
Aquesta situació ens permet d'identificar els quatre conceptes clau de seguretat de la informació: confidencialitat, autenticació, integritat i no-repudi.
Així, doncs, el fet que ningú a part de la botiga pugui veure les dades de la nostra targeta és el que es coneix com a confidencialitat.
D'altra banda, que ningú no pugui suplantar la identitat de la botiga recau en la propietat d'autenticació.
La integritat és la propietat que assegura que les dades de la nostra targeta o de la comanda no es puguin modificar per ningú que no sigui nosaltres sense que la botiga ho detecti.
Finalment, el fet que no ens puguem desdir d'haver fet una comanda es coneix com a no-repudi.
Per a ser més acurats, podem definir aquests conceptes de la manera següent:
La confidencialitat és la propietat que assegura que només aquells que estan autoritzats tindran accés a la informació. Sovint aquesta propietat es coneix també amb el nom de privadesa (1) .
La integritat és la propietat que assegura la no-alteració de la informació. Aquesta alteració pot ser inserció, esborrament o substitució de la informació.
L'autenticació és la propietat que fa referència a la identificació. És el nexe d'unió entre la informació i l'emissor d'aquesta.
El no-repudi és la propietat que preserva que alguna de les parts negui algun compromís o acció pres amb anterioritat.
A part d'aquests conceptes bàsics de seguretat de la informació citats, hi ha altres objectius que inclou la seguretat de la informació i que es poden derivar dels ja citats. Entre aquests, destaquem els següents:
  • control d'accés

  • autenticació de missatge o d'entitat

  • signatura

  • autorització

  • validació

  • certificació

  • confirmació

  • revocació

Per tal d'obtenir les quatre propietats bàsiques de la seguretat de la informació descrites i també les extensions citades, l'eina bàsica que s'utilitza és la criptografia, de la qual introduirem alguns conceptes en els apartats següents.

2.Conceptes bàsics de criptografia

Des d'un punt de vista històric, la criptografia fa molts anys que s'utilitza, però va ser durant les guerres mundials i amb la introducció dels ordinadors que va experimentar una evolució més gran. En els darrers anys, l'ús de xarxes obertes de computadors, com ara Internet, i el creixent interès del mercat pel comerç electrònic han propiciat una nova empenta d'aquesta ciència. Per saber una mica més com es poden aconseguir diferents nivells de seguretat en les aplicacions de comerç electrònic, ens caldrà entendre alguns conceptes bàsics que donarem en aquest apartat.
Atès que l'àmbit de la criptografia sovint és força específic, al llarg del mòdul anirà apareixent nova nomenclatura que trobareu definida en el glossari que hi ha al final d'aquest mòdul.
Antigament, la criptografia es definia com l'art de l'escriptura secreta tal com la seva etimologia indica (del grec krypto ‘secret' i grapho ‘escriptura'). En l'actualitat, una de les definicions més acurades d'aquest terme és la següent:
La criptografia és la ciència que estudia les tècniques matemàtiques relacionades amb els diferents aspectes de la seguretat de la informació.
Quan parlem de criptografia cal no confondre-la amb la criptologia, ja que aquesta última és un terme més ampli.
La criptologia és la ciència que engloba la criptografia i la criptoanàlisi.
La criptoanàlisi és l'estudi de les tècniques que permeten de trencar els criptosistemes que dissenya la criptografia. Així, doncs, la criptologia inclou tant les tècniques que permeten d'obtenir la seguretat com aquelles que permeten de perdre-la. En aquest mòdul ens centrarem bàsicament en tècniques criptogràfiques i considerarem que els criptosistemes utilitzats són prou segurs.
Centrant-nos, doncs, en la criptografia, podem fer la distinció següent: la criptografia de clau simètrica (també anomenada criptografia de clau compartida o secreta) i la criptografia de clau pública (o criptografia asimètrica).
A continuació incidirem una mica més detalladament en cada un dels grups de la distinció anterior.

2.1.Criptografia de clau simètrica

La criptografia de clau simètrica (secreta o compartida) inclou aquelles xifres en les quals l'emissor i el receptor comparteixen una mateixa clau per a xifrar i desxifrar els missatges.
La figura següent mostra l'esquema general de xifratge i desxifratge:
Figura 1
Figura 1
L'Anna, A, vol enviar el missatge, m, al Bernat, B, de forma xifrada. Per a fer-ho, utilitza l'algorisme de xifratge i una clau secreta, k. D'aquesta manera obté el text xifrat, m'. Tant l'algorisme de xifratge com la clau són coneguts per B que els aplica a m' per a obtenir el missatge en clar, m.
La criptografia de clau simètrica es divideix en dos grans grups: criptosistemes de bloc i criptosistemes de flux. Atès el fet que els sistemes de xifratge en flux s'utilitzen principalment en les aplicacions de xifratge en temps real que necessiten molta velocitat (televisió xifrada, telefonia mòbil, etc.), però no són gaire utilitzats en els sistemes de pagament electrònic, deixarem aquesta tècnica i ens centrarem en els criptosistemes de bloc.
Un criptosistema de bloc és un esquema de xifratge que divideix el text en clar en blocs de longitud fixa i que fa l'acció de xifratge sobre cada bloc utilitzant la clau secreta compartida per emissor i receptor.
Els criptosistemes més antics que es coneixen estan dins el grup dels criptosistemes de bloc, en els quals cada bloc és una lletra o un grup de lletres. Així, trobem, per exemple, les xifres de transposició i les xifres de substitució (simple, homofònica, polialfabètica, poligràfica).
Exemple de substitució simple
Si prenem l'alfabet català (de 27 lletres) com a espai de text en clar i també com a espai de text xifrat, podem definir el criptosistema següent:
F(a) = (a+k) mod 26, on k és la clau secreta del criptosistema.
D'aquesta manera el text en clar
LA CRIPTOGRAFIA PRESERVA LA CONFIDENCIALITAT
Prenent k = 3 queda xifrat com
OÇ EULSWRJUÇILÇ SUHVHUZÇ OÇ ERQILGHQELÇOLWÇW
És evident que els criptosistemes de bloc moderns no presenten tanta simplicitat, ja que esquemes tan simples són molt fàcils de trencar.
En l'actualitat, els criptosistemes de bloc més coneguts són el DES, l'IDEA i l'AES, entre d'altres.
El Data Encryption Standard (DES) és l'estàndard que el National Institute of Standards and Technology dels Estats Units (NIST) té definit com a tal des de l'any 1977. Xifra blocs de text en clar de 64 bits i la longitud efectiva de la seva clau és de 56 bits. El fet que faci tant de temps que estigui dissenyat fa que la longitud de la clau sigui massa petita per a la potència de càlcul dels ordinadors actuals. Per aquest motiu, s'utilitza el Triple-DES que no és més que el DES aplicat diferents vegades (amb cert ordre), fet que augmenta la mida efectiva de la clau.
L'International Data Encryption Algorithm (IDEA) és un criptosistema dissenyat per J. Massey i X. Lai l'any 1990. Xifra blocs de 64 bits i, en aquest cas, la clau de xifratge té una longitud de 128 bits.
Un altre criptosistema simètric que tindrà molta importància en el futur és l'Advanced Encryption Standard (AES), que neix com a substitut del DES. El mes d'octubre de 2000 es va fer pública la decisió d'adoptar com a AES el criptosistema Rijndael, desenvolupat pels criptògrafs belgues Joan Daemen i Vincent Rijmen. Un dels punts forts d'aquest criptosistema és que pot utilitzar claus de 128, 192 o 256 bits de longitud.

2.2.Criptografia de clau pública

Els criptosistemes de clau pública, també coneguts com a criptosistemes asimètrics, neixen l'any 1976 a partir d'un article de W. Diffie i M. Hellman. La idea és totalment diferent al que s'havia fet fins al moment per als criptosistemes simètrics.
En els criptosistemes de clau pública cada usuari té un parell de claus: una pública, PK, i una privada (o secreta), SK. La clau pública, PK, i la clau secreta, SK, defineixen dues funcions de xifratge, EPK(x), i de desxifratge, DSK(x), respectivament, que són inverses, és a dir, DSK(EPK(x)) = x o, el que és el mateix, DSK(x) = E-1PK(x).
Tot i aquesta propietat, és molt costós obtenir-ne una a partir de l'altra.
Figura 2
Figura 2
La figura anterior mostra com s'utilitzen els esquemes de clau pública per a xifrar. Quan l'Anna, A, vol enviar un missatge, m, al Bernat, B, A obté la clau pública del Bernat, PKB, l'utilitza per a xifrar el missatge m i obté el text xifrat, m' = EPKB(m). m' només pot ser desxifrat amb la corresponent clau privada que tan sols el Bernat coneix. Per a fer-ho, B aplica la funció de desxifratge amb la seva clau secreta SKB, m = DSKB(EPKB(m)).
El punt important d'un esquema de clau pública és el fet que a partir de la clau pública no es pugui calcular la privada. Per tal d'aconseguir això, els criptosistemes de clau pública es basen en la seguretat computacional. És a dir, no es pot assegurar que no es pugui obtenir la clau privada a partir de la pública, sinó que el temps que es requereix per a fer-ho és prou gran. Els problemes que s'utilitzen per a fonamentar els criptosistemes de clau pública són problemes matemàtics difícils, és a dir, problemes la solució dels quals té una complexitat elevada.
El criptosistema de clau pública que més s'utilitza a la pràctica és l'RSA. Aquest criptosistema deu el seu nom als seus creadors: Rivest, Shamir i Adleman i va ser proposat l'any 1978. Aquest criptosistema basa la seva seguretat en la dificultat de factoritzar un nombre gran.

2.3.El sobre digital

Fins aquí hem vist a grans trets com funcionen les dues famílies de criptosistemes, els de clau simètrica i els de clau pública. A continuació farem una breu anàlisi de les propietats.
1) Gestió de claus
La criptografia de clau simètrica necessita un elevat nombre de claus que augmenta amb el nombre d'usuaris, ja que cada parell d'usuaris ha de compartir una clau. A més, aquesta clau només l'ha de conèixer aquest parell d'usuaris, fet que fa necessari l'establiment d'un canal segur per a poder-la transmetre. La criptografia de clau pública resol el problema del nombre de claus, ja que independentment del nombre d'usuaris del sistema, cada usuari només té un sol parell de claus. Aquest fet és molt important en sistemes oberts i de continu creixement com el cas d'Internet. Per contra, la criptografia de clau pública utilitza claus més llargues que els esquemes de clau simètrica. Però la problemàtica més important de la criptografia de clau pública és la validació de les claus i la necessitat d'una infraestructura general, tal com descriurem en l'apartat següent.
2) Velocitat de càlcul
En aquest cas la criptografia simètrica és molt més adequada que la de clau pública, perquè és molt més ràpida. A més, els criptosistemes de clau simètrica més utilitzats, com ara el DES i l'AES, es poden implementar directament en maquinari, fet que accelera encara més la seva velocitat.
3) Propietats de seguretat
Amb els criptosistemes de clau simètrica es poden aconseguir les propietats de confidencialitat i integritat, mentre que amb els esquemes de clau pública es pot obtenir les de confidencialitat, integritat, autenticació i no-repudi (tal com veurem en l'apartat següent).
Així, doncs, la criptografia de clau simètrica i la de clau pública tenen un seguit d'avantatges complementaris que fan que la combinació dels dos esquemes sigui el que s'utilitza a la pràctica. En concret, la tècnica que es coneix com a sobre digital és la que es fa servir en la majoria d'aplicacions que permeten de xifrar dades.
El sobre digital és una tècnica de xifratge que utilitza un criptosistema simètric i un de clau pública. S'utilitza el criptosistema simètric, amb una clau K, anomenada clau de sessió, per a xifrar la informació. Posteriorment, la clau K es xifra utilitzant un criptosistema de clau pública. El text xifrat juntament amb la clau K xifrada amb l'esquema de clau pública formen el sobre digital.
Per desxifrar un sobre digital, s'utilitza la clau privada corresponent a la clau pública per tal d'obtenir la clau de sessió K, que posteriorment es farà servir per a desxifrar el text xifrat amb l'esquema de clau simètrica.

3.Conceptes avançats de criptografia de clau pública

En l'apartat anterior hem vist com funciona un esquema de clau pública utilitzat per a preservar la confidencialitat de les dades, és a dir, per a xifrar. Però la gran revolució que representa la clau pública és el fet que es puguin realitzar signatures digitals. En els apartats següents descriurem què són les signatures digitals, com es poden obtenir a partir de criptosistemes de clau pública i quins mecanismes complementaris necessitem per tal que la seguretat de les signatures digitals sigui complerta.

3.1.Signatures digitals

Una signatura digital és l'equivalent electrònic de la signatura convencional.
Per aquest motiu, la seva implantació global sovint es considera molt important per al desenvolupament del comerç electrònic.
Les signatures digitals neixen a partir de l'aparició de la clau pública. Amb els sistemes de xifratge simètric és difícil obtenir una signatura digital. El problema és que, si la signatura ha de ser únicament reproduïble pel signatari i s'utilitza per a signar la clau de xifratge, en els esquemes simètrics, com a mínim, dues persones comparteixen aquesta mateixa clau. En canvi, en els esquemes de clau pública l'usuari disposa d'una clau secreta que tan sols ell coneix. Aquesta informació és la que s'utilitzarà per a signar digitalment.
Així, doncs, la signatura digital va lligada a un criptosistema de clau pública i, per tant, podem signar digitalment utilitzant, per exemple, l'RSA o qualsevol altre esquema de criptografia de clau pública.
L'esquema general d'una signatura digital es pot considerar com "l'invers" d'un esquema de xifratge de clau pública, tal com es mostra en la figura següent:
Figura 3
Figura 3
El signatari A que vol signar un missatge m agafa la funció de desxifratge (que conté la seva clau privada SKA), l'aplica al missatge m i obté el valor sig. La parella (m, sig) formarà la signatura digital del document m (de fet, la signatura digital pròpiament dita serà sig = DSKA(m)).
Un verificador, per verificar la signatura del missatge m obtindrà la clau pública d'A, PKA i aplicarà la funció de xifratge EPKA al valor sig. Com que les accions d'EPKA i DSKA són inverses, el verificador podrà comprovar que el resultat sigui exactament el missatge signat m.
Si ens hi fixem, els criptosistemes de clau pública utilitzats per a crear signatures digitals ens ofereixen diferents propietats:
  • autenticitat: donat el fet que la clau privada que s'utilitza per a signar només la coneix A, la signatura autentica el document.

  • no-repudi: de nou, gràcies al fet que només A coneix la seva clau privada, A no pot negar haver signat un document que verifica el procés de signatura digital utilitzant la clau pública d'A.

  • integritat: aquesta propietat es desprèn del fet que el contingut del propi missatge s'utilitza (junt amb la clau privada) per a crear la signatura. En cas que es modifiqui el missatge, la verificació de la signatura amb el nou missatge modificat no serà correcta.

3.1.1.Funcions hash
Com ja hem apuntat anteriorment, els criptosistemes de clau pública són computacionalment molt costosos. Aquest fet implica que la realització d'una signatura digital, sobretot el missatge, sigui massa costosa i, per tant, poc viable. Seria desitjable signar només un resum del missatge en comptes del missatge sencer. Per a fer-ho, s'utilitza una altra eina criptogràfica: les funcions hash.
Una funció hash és una funció que fa correspondre a un missatge m de mida variable una representació H(m) de mida fixa. Típicament, H(m) té de 128 a 160 bits i s'anomena el valor hash del missatge.
D'aquesta manera, a la pràctica, per a obtenir una signatura del fitxer original, el que se signa és el seu valor hash, tal com es mostra en la figura següent:
Figura 4
Figura 4
Per tal que la signatura digital (quan s'utilitzen funcions hash) tingui les mateixes propietats de seguretat descrites anteriorment (integritat, autenticitat i no-repudi), caldrà que les funcions hash que s'utilitzin siguin unidireccionals, és a dir, que donat un valor hash h(m) sigui inviable trobar m, i lliures de col·lisions, això és, que sigui molt difícil trobar dos missatges m i m' tals que h(m) = h(m').
3.1.2.Signatures cegues
L'any 1982 D. Chaum amb el seu afany d'aconseguir l'anonimat (en concret en els sistemes de pagament) va desenvolupar un sistema de signatura digital (de fet, una variant dels existents) que va anomenar signatura cega (2) .
Una signatura cega permet a un usari B de signar un missatge proporcionat per l'usuari A sense que B pugui conèixer el contingut del que signa.
Per tal d'explicar aquest concepte és molt útil fer una analogia en termes de signatures convencionals sobre paper. Imaginem-nos que l'usuari A posa el document que ha de ser signat per B dins d'un sobre de paper carbó i tanca el sobre. B signa el sobre per fora i el paper carbó fa que la signatura es reprodueixi al document interior. B torna el sobre a A sense obrir-lo (de fet, en la versió electrònica, B no té manera d'obrir-lo). Quan A rep el sobre, l'obre i treu el document que hi ha a l'interior signat per B sense que B hagi pogut veure el que ha signat.
Malgrat que pugui semblar poc interessant el fet d'aconseguir una tècnica per la qual el signant no sap el que signa, aquest protocol és molt important per a oferir la propietat d'anonimat en els sistemes de pagament tal com veurem més endavant.

3.2.Certificats digitals i infraestructures de clau pública

Tenint en compte el que hem vist fins ara, podria semblar que la criptografia de clau pública resol tots els problemes de seguretat de la informació, ja que ofereix les propietats de confidencialitat, integritat, autenticació i no-repudi. A més, combinada amb la criptografia de clau simètrica, mitjançant l'ús del sobre digital, permet també d'obtenir confidencialitat de forma computacionalment eficient.
Malgrat tot això, hi ha certs problemes de fons en la criptografia de clau pública que fan que la seva utilització encara no estigui tan estesa com caldria suposar.
El problema principal ve del que es coneix com a "atac de l'home a mig camí".
L'atac de l'home a mig camí
Un atac d'aquesta mena consisteix en el següent:
Suposem que A vol enviar un missatge xifrat a B i un atacant C vol saber-ne el contingut (o fins hi tot vol modificar-lo).
Figura 5
Per tal de fer l'atac, tal com es mostra en el gràfic adjunt, C modifica el directori públic de claus de manera que la identitat de l'usuari B quedi lligada a una clau pública de C. D'aquesta manera, A envia un missatge pensant-se que només B pot llegir-lo. Però, en realitat, l'únic que el pot llegir és C, el qual, una vegada llegit, pot enviar-lo a B, ara sí, xifrat amb la clau pública de B (atac passiu), o modificar-lo i enviar-lo a B un cop modificat m* (atac actiu).
Per tal de fer l'atac, tal com es mostra en el gràfic adjunt, C modifica el directori públic de claus de manera que la identitat de l'usuari B quedi lligada a una clau pública de C. D'aquesta manera, A envia un missatge pensant-se que només B pot llegir-lo. Però, en realitat, l'únic que el pot llegir és C, el qual, una vegada llegit, pot enviar-lo a B, ara sí, xifrat amb la clau pública de B (atac passiu), o modificar-lo i enviar-lo a B un cop modificat m* (atac actiu).
La problemàtica que acabem de descriure es pot donar també en el cas de les signatures digitals simplement intercanviant la clau pública en el moment de la verificació de la signatura.
La criptografia de clau pública permet de comprovar tècnicament que la clau que s'utilitza per a desxifrar (verificar la signatura) és la complementària de la que s'ha utilitzat per a xifrar (signar). Però això, per si sol, no ofereix cap informació sobre la identitat del propietari de les claus.
Per tant, es necessita un mecanisme que permeti d'associar una clau pública a la identitat del seu propietari: el certificat digital.
Un certificat digital és un document digital que vincula una determinada clau pública a un usuari.
La informació bàsica que conté un certificat digital és la següent:
  • Número de sèrie del certificat.

  • La identificació de l'algorisme criptogràfic de signatura.

  • El nom de l'entitat emissora del certificat.

  • Període de validesa del certificat.

  • La clau pública.

  • La identitat i les dades més rellevants de la persona o entitat propietària de la clau pública.

  • La signatura digital del certificat per l'entitat emissora del certificat.

Si ens hi fixem, els certificats incorporen la signatura digital de l'entitat emissora del certificat, fet que es coneix com a entitat certificadora (3) (CA). És justament aquesta signatura la que confereix als certificats la seva validesa, depenent del grau de confiança que es tingui en la CA signant.
Així, la validesa d'un certificat digital dependrà de qui ha expedit aquest certificat, és a dir, qui l'ha signat digitalment i quins mecanismes tenim per a validar-lo.
Des d'un punt de vista general, aquest procés de certificació pot ser centralitzat o descentralitzat.
El sistema centralitzat de certificació es denota per X.509 segons la recomanació de l'ITU-T sobre els esquemes d'autenticació en sistemes oberts. Aquests tipus de certificació és el que s'utilitza en la gran majoria d'aplicacions comercials.
Les estructures en els sistemes de certificació centralitzats són jeràrquiques, en què a dalt de tot hi ha una CA de la qual tothom coneix sense cap mena de dubte la seva clau pública i en la qual tothom confia.
És evident que la CA ha de ser una entitat en la qual nosaltres confiem. Per tal de simplificar el discurs, parlarem indistintament de "confiar en l'autoritat" o "tenir la clau de l'autoritat" perquè assumirem que, si en tenim la clau, haurem validat que prové d'una font en la qual confiem.
El cas del PGP és un exemple de model de certificació descentralitzat i es basa en la confiança que tenen els usuaris entre ells. Cada usuari genera el seu propi certificat i aquest certificat el signen les persones més pròximes que poden verificar el lligam de clau pública-usuari. D'aquesta manera, el certificat personal pot incloure totes les signatures que es vulguin i, depenent dels usuaris que l'hagin signat, tindrà validesa davant certes persones i no davant d'altres.
Els sistemes descentralitzats com el PGP eliminen la vulnerabilitat que presenta l'atac al sistema central, i també l'abús de poder que pot presentar. El problema d'aquest sistema és que cada usuari ha de gestionar els certificats ell mateix (revocació, modificació, etc.) per falta d'una autoritat comuna. Això, per a un nombre elevat d'usuaris, és costós i fa que aquests esquemes no es puguin aplicar a gran escala.
A continuació, un cop identificada la necessitat dels certificats digitals, descriurem quins són els passos necessaris per a una correcta verificació d'una signatura digital. Aquesta visió detallada de cada pas ens permetrà d'acabar de conèixer la resta de mecanismes necessaris perquè la criptografia de clau pública pugui oferir les propietats de seguretat que hem mencionat.
Les accions que cal dur a terme per verificar correctament una signatura digital són les següents:
a) Llegir el certificat digital que acompanya la signatura.
b) Verificar la signatura del certificat feta per la CA.
c) Verificar la validesa del certificat.
d) Extreure la clau pública de l'emissor del certificat.
e) Verificar la signatura del missatge feta per l'emissor.
Passem a descriure més detalladament cada un d'aquests passos:
1) Llegir el certificat digital que acompanya la signatura.
La verificació d'una signatura digital ha de començar pel processament del certificat digital per a conèixer les dades bàsiques del propietari de la clau pública.
2) Verificar la signatura del certificat feta per la CA.
Per provar l'autenticitat del certificat, ens caldrà verificar-ne la signatura i, per a això, necessitarem la clau pública de l'autoritat que ha emès el certificat. Si el certificat ha estat emès per una CA de la qual nosaltres tenim la clau pública, la validació de la signatura del certificat serà directa, utilitzant la tècnica de verificació de signatura digital especificada en l'apartat anterior.
En cas que no tinguem la clau pública de la CA, la seva obtenció ens pot portar a una recurrència de tasques, ja que per a obtenir-la ho haurem de fer juntament amb un altre certificat emès per una tercera CA de la qual nosaltres tinguem la clau. Així, haurem d'establir un camí de certificació entre la CA del certificat que validem i la CA de la qual nosaltres tenim la clau.
Arbre de certificació
En aquesta figura es mostra un possible arbre de certificació. Si ens hi fixem, els usuaris A i B comparteixen directament la mateixa CA i, per tant, podran validar els seus certificats directament, ja que ambdós tenen la clau pública de D. Però, per tal que C pugui validar el certificat d'A, haurà d'obtenir la clau pública d'E i posteriorment el certificat de la clau pública de D degudament signat per E.
En aquesta figura es mostra un possible arbre de certificació. Si ens hi fixem, els usuaris A i B comparteixen directament la mateixa CA i, per tant, podran validar els seus certificats directament, ja que ambdós tenen la clau pública de D. Però, per tal que C pugui validar el certificat d'A, haurà d'obtenir la clau pública d'E i posteriorment el certificat de la clau pública de D degudament signat per E.
3) Verificar la validesa del certificat.
Un cop verificada la signatura digital del certificat, la següent tasca que cal realitzar és assegurar-se que el certificat, tot i estar correctament signat, és vàlid. Hi ha dos aspectes bàsics de validesa del certificat. El primer és simplement assegurar-se que el certificat no ha caducat, és a dir, que estem dins el període de validesa que especifica el certificat. El segon aspecte de la validesa d'un certificat fa referència a la seva revocació.
Direm que un certificat ha estat revocat per la seva autoritat de certificació si, malgrat estar signat correctament per l'autoritat i trobar-se dins el període de validesa especificat, l'autoritat de certificació no el reconeix com a vàlid.
Aquest procés pot semblar contradictori, però hi ha una situació clara en què es pot donar aquest cas. Si el propietari d'un parell de claus pública/privada perd la seva clau privada o sospita que algú la coneix, ha de tenir un mecanisme per a poder evitar que ningú signi en nom seu. Aquest mecanisme és el que es coneix com a revocació del certificat. El propietari de les claus avisarà l'autoritat de certificació i aquesta revocarà el certificat. La revocació del certificat es fa per mitjà de la inclusió d'aquest en el que s'anomenen llistes de revocació de certificats (4) (CRL). Per tant, abans d'acceptar com a bo un certificat, tot i que la validació de la signatura hagi estat correcta, ens caldrà confirmar que no ha estat revocat mirant que no estigui inclòs en la CRL de l'autoritat de certificació.
Per acabar, cal mencionar també que la validesa del certificat inclou comprovar si la utilització del certificat està recollida en les possibles utilitzacions que la CA avala, tot i que aquestes restriccions només s'apliquen a certs certificats.
4) Extreure la clau pública de l'emissor del certificat.
Una vegada s'han realitzat totes les verificacions i els resultats han estat satisfactoris, caldrà extreure del certificat la clau pública de l'emissor. Caldrà saber també quin algorisme de signatura correspon a aquella clau.
5) Verificar la signatura del missatge feta per l'emissor.
En aquest punt ja estem en possessió de la clau pública de l'emissor i tenim la certesa que aquesta clau pública pertany a l'emissor. Així, només queda verificar la signatura digital, tal com s'ha descrit en l'apartat anterior.
En resum, quan el receptor d'un missatge vol comprovar la validesa d'una signatura digital cal que estigui segur que la clau pública que utilitza per a verificar-la pertany a l'emissor del missatge. Aquesta verificació recau en el certificat digital que una autoritat de certificació ha signat.
Per tant, els certificats digitals i les autoritats de certificació són la peça clau per a l'ús de la criptografia de clau pública.
Tota l'estructura (certificats, CA, CRL, estructures jeràrquiques, etc.) que envolta la criptografia de clau pública i que serveix per a obtenir a la pràctica les propietats teòriques de la criptografia de clau pública és el que es coneix com a infraestructura de clau pública (5) (PKI).
Sovint, però, el concepte de PKI s'estén, a més, al conjunt de protocols, sistemes de xifratge i serveis en general que permeten de desenvolupar aplicacions de criptografia de clau pública.

3.3.Targetes intel·ligents

Fins aquí hem vist com les signatures digitals poden oferir com a mínim les mateixes prestacions que les signatures convencionals. Malgrat això, hem mencionat el problema que representa l'"atac de l'home a mig camí" i com els certificats poden ajudar a solucionar-ho.
Però, superades totes aquestes barreres, ens trobem amb la problemàtica que per a signar digitalment l'usuari ha de fer operacions criptogràfiques complexes que no pot fer a mà. Les targetes amb microprocessador tenen una capacitat de càlcul i una portabilitat que les fa molt adequades per a representar l'usuari en aquests casos.
Una targeta intel·ligent és aquella que compleix la norma ISO 7810 pel que fa a gruix (0,75 mm) i a mida (com de targeta de crèdit, 85,6 mm × 53,98 mm) i, a més, incorpora un o més circuits integrats dins el seu gruix.
Una targeta intel·ligent pot ser vista com un ordinador sense dispositius d'entrada/sortida, tot i que pot realitzar entrada/sortida quan es connecta als dispositius externs adequats.
Disposa d'un processador de memòria tan volàtil com no volàtil, en forma de RAM (Random Access Memory), ROM (Read-Only Memory), PROM (Programmable ROM) i EEPROM (Electrically Erasable Programmable ROM).
Els processadors de les targetes actuals són força diversos i van des d'arquitectures de 8 bits fins a processadors RISC de 32 bits.
La memòria RAM és la més ràpida de la targeta i n'hi sol haver fins a 128 o 512 bytes. És volàtil en el sentit que perd la seva informació tan aviat com el lector extern connectat a la targeta deixa de proporcionar energia.
La memòria ROM és una memòria permanent (normalment de silici). Es fa servir per a guardar-hi els programes bàsics del sistema operatiu necessaris per a arrencar la targeta intel·ligent quan es comença a rebre energia de l'exterior.
La memòria PROM és una memòria no volàtil que pot ser escrita només una vegada. Normalment és molt petita (fins a 32 bytes) i només s'utilitza per a guardar-hi el número de sèrie de la targeta o altres valors fixats.
La memòria EEPROM és una memòria no volàtil que es pot esborrar elèctricament i reescriure fins a 10.000 vegades. Ocupa la meitat de l'àrea del xip i seria l'equivalent del disc dur de la targeta. S'hi guarda el programari d'aplicació. Les targetes actuals tenen de 8 KB a 256 KB, i s'espera que ben aviat hi haurà targetes d'1MB.
La seguretat de les targetes intel·ligents es produeix, d'una banda, pel fet que el mateix usuari la pot portar sempre a sobre i, de l'altra, pel fet que l'accés a la targeta es fa per mitjà d'un número d'identificació personal o PIN, o bé, en casos en què es requereix màxima seguretat, per mitjà d'una característica biomètrica com pot ser l'empremta digital. A més, molts models tenen mecanismes d'autoesborrament en cas de ser manipulats físicament.
Actualment hi ha moltes aplicacions que van fortament lligades a les targetes intel·ligents: telefonia digital mòbil (GSM), descodificació de televisió via satèl·lit, targetes sanitàries, etc. Però la gran esperança de les targetes intel·ligents és el comerç electrònic i a la inversa.
Els primers usos de targetes per al comerç electrònic han estat les targetes de pagament per a cabines telefòniques, i també els moneders electrònics, si bé en molts casos les targetes utilitzades eren únicament de memòria i no tenien cap mena de processador.
Amb la incorporació del processador, les targetes intel·ligents es presenten com una plataforma idònia per a la implementació de la part del comprador de diversos protocols de pagament. A més, com veurem en el mòdul "Sistemes de pagament electrònic", la majoria de sistemes de pagament obtenen la seva seguretat a partir d'una infraestructura de claus públiques, per tant, la idoneïtat de les targetes per a la implementació d'esquemes de signatura digital va fortament lligada als sistemes de pagament.
Seguretat a partir d'infraestructures de clau pública
Una prova d'aquestes tendències resulta el fet que les noves targetes intel·ligents que els fabricants treuen al mercat incorporen funcions criptogràfiques com la generació de claus RSA, xifratge simètric, funcions hash, etc. La implementació d'aquestes rutines es fa en la memòria ROM de la targeta intel·ligent. Això suposa un estalvi de memòria EEPROM, ja que el programador fa les crides a aquestes funcions i no les ha d'implementar. A més a més, també comporta un increment de la velocitat d'execució. L'execució del codi de la ROM és més ràpid que el de l'EEPROM, a més, els fabricants de les targetes optimitzen al màxim les rutines criptogràfiques ja que coneixen perfectament el microprocessador de la targeta.
Sens dubte, però, el gran enemic actual de les targetes intel·ligents és, d'una banda, la manca d'una estandardització dels mecanismes de control i programació de les targetes que dificulta la interoperabilitat de les diferents aplicacions per a targetes i, de l'altra, la manca de lectors de targetes intel·ligents per als PC.
Malgrat això, els avantatges de seguretat que pot representar l'ús d'aquest tipus de targetes units a la reutilització de dispositius de lectura de targetes intel·ligents actualment molt estesos, com ara els telèfons mòbils, fan preveure un futur molt prometedor per a aquests tipus de dispositius.

4.Les diferents perspectives de seguretat

En els apartats anteriors hem repassat quines són les tècniques criptogràfiques que s'utilitzen per a obtenir les propietats de seguretat de la informació que hem definit al principi del mòdul.
En aquest apartat veurem com es poden aplicar al comerç electrònic en concret les diferents tècniques de la protecció de la informació que hem vist fins ara.
Per a fer-ho, dividirem l'escenari del comerç electrònic en tres grans àrees:
1) Seguretat en el conjunt de les dades.
2) Seguretat en els sistemes de pagament.
3) Seguretat en els articles, en suport digital, objecte de la venda.
Aquesta classificació serà la que utilitzarem en la resta de mòduls i, per aquest motiu, iniciem aquí aquesta distinció.

4.1.Seguretat en el conjunt de les dades

Un dels avantatges de cara als venedors que presenta el comerç electrònic respecte al convencional és el fet de poder obtenir molta informació provinent dels compradors. Aquesta informació pot ser molt valuosa per a una organització i, per aquest motiu, és important que es protegeixi adequadament. A més, hi ha requisits legals que fan que la protecció de les dades personals dels compradors sigui obligatòria per llei.
Així, doncs, caldrà que l'accés al conjunt de les dades estigui degudament restringit. En les aplicacions en les quals les bases de dades estan en entorns tancats, com ara una intranet, aquesta protecció és més fàcil d'aconseguir, la qual cosa no vol dir que s'implementi sempre.
La dificultat de gestionar correctament la seguretat en una aplicació de comerç electrònic radica en gran part en la necessitat que aquesta aplicació té de disposar d'un component extern situat en la xarxa externa (Internet) amb la qual interaccionaran els compradors i d'un altre component privat situat en la intranet que servirà perquè el venedor controli el sistema.
Aquest fet fa necessària la separació lògica d'aquests dos entorns. Per aquest motiu és summament important que les aplicacions de comerç electrònic disposin d'eines com ara els tallafocs, que permeten d'aïllar una intranet quan aquesta està connectada a Internet.
Malgrat que aquest aïllament de les dues xarxes es faci configurant correctament els tallafocs adequats, encara queda un problema pendent i és l'accés a les dades que es poden obtenir via la xarxa pública.
Com es veu en el mòdul "Gestió de la informació", en una aplicació típica de comerç electrònic els compradors es poden registrar per a ser posteriorment reconeguts, realitzant operacions sobre la base de dades. Aquest registre implica una interacció sobre la base de dades i, per tant, cal protegir-la adequadament. El punt més delicat d'aquest procés és l'autenticació dels compradors.
Normalment, l'autenticació dels compradors es fa per mitjà d'usuari i contrasenya. Aquest tipus d'autenticació té, en principi, certes vulnerabilitats. Per exemple, atès que l'usuari i la contrasenya són els mateixos per a cada connexió (si l'usuari no la canvia, fet que només es fa de tant en tant), un atacant que intercepti les dades durant el procés d'autenticació es podria autenticar posteriorment suplantant aquest usuari. Així, podria obtenir totes les seves dades personals que figuren en la base de dades del venedor.
Ara bé, l'autenticació amb usuari i contrasenya combinada amb altres tècniques pot ser prou efectiva. L'atac que hem descrit anteriorment és factible pel fet que les xarxes obertes com Internet no ofereixen la propietat de confidencialitat en les comunicacions. Per tant, si incorporem la propietat de confidencialitat en la comunicació que fa el comprador per transmetre el seu usuari i contrasenya, haurem resolt aquest tipus d'atac.
A la pràctica, el procés d'autenticació d'usuari i contrasenya via Internet es fa per mitjà del protocol de transport Secure Sockets Layer (SSL) que ofereix la propietat de confidencialitat al transport de les dades. Amb aquesta combinació, el procés d'autenticació esdevé prou segur per a la gran majoria d'aplicacions de comerç electrònic.

4.2.La seguretat en els sistemes de pagament

Dins el comerç electrònic, una part important de la seguretat està dedicada als sistemes de pagament que són els que, en definitiva, es responsabilitzen de la transferència de diners i, per tant, sembla que siguin els més susceptibles a possibles atacs.
En aquest subapartat parlarem de les propietats de seguretat que ha de tenir un sistema de pagament i, per extensió, parlarem també de la seguretat necessària en la transferència d'informació per mitjà de les xarxes d'ordinadors, perquè no oblidem que, en el fons (tal com es veu en el mòdul "Sistemes de pagament electrònic"), un pagament electrònic no és altra cosa que una transferència d'informació per mitjà de xarxes de computadors.
Per començar, un sistema de pagament electrònic ha de complir les quatre propietats bàsiques de seguretat de la informació: confidencialitat, integritat, autenticació i no-repudi.
A més, en el cas específic dels sistemes de pagament hi ha altres propietats que s'han de complir. Les dividirem en dos grups, les propietats de seguretat pròpiament dites i les característiques del sistema de pagament que poden derivar en problemes de seguretat.
Propietats de seguretat:
a) Infalsificabilitat: és la propietat que ens assegura que no podrem falsificar els diners. Aquesta propietat és molt important quan parlem de diners digitals, ja que aquests són informació en format digital i, com ja és sabut, la duplicació de qualsevol informació digital és en principi simple, ràpida i exacta.
b) No-sobredespesa: aquesta propietat ens garanteix que una mateixa informació no serà utilitzada més d'una vegada per a realitzar un pagament. En altres paraules, no s'ha de poder obtenir un valor superior al valor que correspon a aquella informació. Per exemple, no s'ha de poder pagar més d'una vegada amb una única moneda.
c) Atomicitat: és la propietat que assegura que una transacció es farà en la seva totalitat o bé no es farà. Aquesta propietat, important en tots els sistemes, és bàsica en els sistemes de pagament electrònic, ja que evita estats inconsistents i, per tant, possibles fraus, Per exemple, un usuari amb un crèdit x podria realitzar n pagaments simultanis i forçar una cancel·lació de les operacions per tal que se li reemborsi l'import total nx.
d) Consistència: aquesta propietat assegura que el pagament és realitza de forma global, és a dir, per exemple, si un venedor ha cobrat d'un comprador, aquell comprador ha hagut de pagar-li.
e) Disponibilitat: aquesta propietat ens assegura que els usuaris del sistema podran realitzar pagaments i cobraments sempre que ho desitgin.
Propietats del sistema de pagament que poden tenir repercussions en la seguretat d'aquest:
a) Transferibilitat: aquesta propietat possibilita la transferència dels diners per mitjà de diferents usuaris sense necessitat que una entitat central hi participi. En el cas de sistemes de pagament electrònics, aquesta propietat no és fàcil d'aconseguir, ja que els diners es troben en format electrònic i, per tant, és difícil impedir que un usuari no realitzi la despesa d'un "bitllet" un cop l'ha transferit a un altre usuari. Així, la dificultat d'implementació d'aquesta propietat resideix a preservar al mateix temps la propietat de no-sobredespesa.
b) Divisibilitat: aquesta propietat permet a un usuari de dividir l'import d'un bitllet en fraccions més petites de manera que la suma dels valors de les fraccions sigui la mateixa que el total. De nou, la propietat de no-sobredespesa queda afectada si s'intenta incorporar aquesta propietat a un sistema de pagament. Si ens hi fixem, però, aquesta propietat no la compleixen els sistemes de pagament físics en bitllets i monedes, ja que, si fos així, la necessitat de tenir canvi a les caixes no tindria sentit.
c) Anonimat: amb aquesta propietat s'aconsegueix que no es pugui obtenir la identitat del comprador a partir d'un pagament fet. Dins dels pagaments anònims, hi trobem dos nivells:
  • Anonimat revocable o no-revocable: depèn de si la identitat del comprador es pot obtenir no directament del pagament, sinó amb la cooperació de diverses entitats, o si això és del tot impossible.

  • Enllaçabilitat: aquesta propietat fa referència al fet que, malgrat que no es puguin connectar la identitat del comprador amb el pagament, sí que es poden identificar tots els pagaments que ha fet un mateix comprador.

Si bé la propietat d'anonimat no afecta directament la resta de propietats de seguretat, és evident que el fet que no es pugui obtenir informació sobre qui ha fet el pagament fa que els possibles fraus realitzats amb aquest pagament (estafes, extorsions, etc.) no puguin ser imputats a ningú.
Per tal d'obtenir les propietats que hem mencionat, els sistemes de pagament utilitzen diferents mecanismes criptogràfics que actuen com a peces bàsiques per als diferents protocols. Per exemple, per a oferir les quatre propietats bàsiques de confidencialitat, integritat, autenticitat i no-repudi, els sistemes de pagament utilitzen les infraestructures de clau pública (PKI).
Per a oferir l'anonimat irrevocable, sovint s'utilitza la signatura cega de la manera següent. El comprador crea un bitllet digital amb un número de sèrie i l'envia al banc. Aquest fa una signatura cega sobre el bitllet, de manera que valida el bitllet, és a dir, descompta el valor del bitllet del compte del comprador, però no pot veure el contingut del bitllet (el número de sèrie). Quan posteriorment el comprador utilitzi el bitllet i aquest arribi al banc, el banc podrà determinar que és vàlid, perquè portarà la seva signatura, però no sabrà a qui pertany el bitllet perquè, quan el comprador el va portar a registrar al banc, aquest va fer una signatura cega i no va veure el número de sèrie.
Algunes altres de les propietats que hem demanat als sistemes de pagament electrònic per tal que s'assemblessin als sistemes tradicionals no tenen una resolució simple. Així, per exemple, les propostes de sistemes de pagament que incorporen la propietat de transferibilitat o divisibilitat són propostes molt teòriques i les solucions que aporten per tal d'oferir aquestes propietats, sense que se'n vegi afectada la no-sobredespesa, impliquen protocols criptogràfics molt complexos que s'escapen de l'abast d'aquests materials.
4.2.1.Seguretat en el transport de les dades: SSL-TLS
Com hem mencionat anteriorment, podem pensar en un pagament electrònic com una transferència d'informació per mitjà de xarxes de computadors. Per aquest motiu, la seguretat en el transport de les dades és summament important en els sistemes de pagament.
Com és ja sabut, el protocol TCP/IP es va dissenyar per a un entorn de comunicació obert i per aquest motiu no incorpora les propietats de seguretat necessàries per a aplicacions del tipus de comerç electrònic. Per tant, quan s'utilitza una base tecnològica com és el protocol TCP/IP per a realitzar, per exemple, pagaments, cal aportar una seguretat extra per a altres mitjans.
El protocol Secure Sockets Layer (SSL) és un protocol de nivell de transport que confereix diferents propietats de seguretat a les comunicacions.
L'SSL va ser creat per Netscape Communications per tal d'incloure certes propietats de seguretat al protocol TCP/IP. Així, per exemple, l'SSL resol el problema d'enviar dades confidencials a un servidor web mitjançant un formulari d'una pàgina web.
La versió d'SSL que està més implementada és la 3.0, desenvolupada a mitjan anys noranta, tot i que, en l'actualitat, s'ha definit la versió 1.0 del protocol anomenat Transport Layer Security (TLS), basat en SSL 3.0.
Hi ha poques diferències entre el TLS i l'SSL, i per això en la resta de l'apartat només ens referirem a l'SSL, que és el que està àmpliament implementat, si bé, exactament, les mateixes consideracions es podrien fer per al protocol TLS.
Des d'un punt de vista molt genèric, l'SSL estableix una comunicació xifrada entre el nostre ordinador (el client) i l'ordinador que conté la pàgina web (el servidor). Per a fer-ho, utilitza tant la criptografia de clau simètrica com de clau pública de manera molt semblant a com es fa servir el sobre digital.
A partir de la clau pública (normalment la del servidor), s'estableix una clau d'un esquema de clau simètrica, que serà la clau de sessió. Des d'aquest moment, tota la informació entre client i servidor va xifrada utilitzant aquesta clau de sessió i l'algorisme de xifratge simètric especificat.
Si repassem quines propietats de seguretat ens aporta el protocol SSL veiem el següent:
1) Confidencialitat: en l'SSL la confidencialitat es dóna perquè les dades que circulen per la xarxa per mitjà d'aquest protocol ho fan en forma xifrada amb la clau de sessió que inicialment s'ha acordat. Aquesta clau s'eliminarà quan finalitzi la sessió i, en una altra sessió, se'n negociarà una de nova. El criptosistema de clau simètrica utilitzat no està fixat per l'SSL, sinó que el protocol especifica diferents algorismes de xifratge previstos.
2) Integritat: l'SSL implementa la integritat utilitzant funcions hash. Els paquets que transporten les dades en una transmissió SSL incorporen alhora una funció hash d'aquestes, fet que n'assegura la integritat.
3) Autenticitat: com ja hem emfasitzat anteriorment, l'autenticitat és la propietat que ens permet d'estar segurs de la identitat, en aquest cas, d'una de les parts de la comunicació. Aquesta propietat és la més important, perquè no serveix de res xifrar les dades (confidencialitat) i estar segur que arriben tal com les hem enviat (integritat) si el destinatari que hi ha a l'altra banda de la comunicació no és el que ens pensem. Malgrat aquesta reflexió, l'autenticitat en el protocol SSL és, en principi, opcional, tant per al servidor com per al client, però, en la gran majoria de casos, l'SSL sempre està implementat amb autenticitat del servidor i gairebé mai amb autenticitat del client.
L'SSL ofereix autenticitat per mitjà de la criptografia de clau pública. Si la implementació ofereix autenticitat del servidor, aquest haurà de disposar d'una clau pública, d'una privada i d'un certificat digital. En cas que també ofereixi autenticitat per al client, aquest també haurà de disposar del seu parell de claus.
Pel que fa a les CA, l'SSL utilitza les que li especifiquem nosaltres. A la pràctica, el que succeeix és que en el programari de l'aplicació que utilitza el protocol, normalment un navegador d'Internet, hi ha un seguit de CA per defecte en les quals se suposa que tothom pot confiar. D'aquesta manera, els servidors es preocupen per a obtenir certificats d'aquestes CA, ja que, així, qualsevol client implícitament ja confiarà en aquell servidor (atès que el seu navegador confia en la CA que signa el seu certificat).
4) No-repudi: l'SSL no acompleix aquesta propietat completament. Això es deu al fet que es necessita la criptografia de clau pública per a assolir aquesta propietat i, per a les implementacions de l'SSL que no incorporen autenticació del client (que són la majoria), només es té la propietat per a la part del servidor però no per a la part del client.
Així, doncs, veiem que l'SSL i, per extensió, el TLS en la majoria de les seves implementacions no compleixen les propietats d'autenticitat i no-repudi per a la part del client. Aquest fet fa que els sistemes de pagament basats en SSL o TLS tampoc no incorporin aquesta propietat i, per tant, la majoria dels fraus realitzats en aquests sistemes de pagament es deriven de la manca d'aquestes dues propietats.

4.3.Seguretat en el producte venut

Una novetat important que aporten les xarxes de computadors (com ara Internet) al comerç electrònic és la venda d'articles en suport electrònic (àudio, vídeo, programari, documents, etc.), ja que amb aquests articles tota la transacció econòmica (des de la comanda fins al lliurament del producte) es pot fer a la xarxa.
El handicap que presenten els productes en suport electrònic és que les còpies són molt barates i totalment exactes. Aquest fet redueix els costos de producció per al venedor, però, al mateix temps, afegeix el risc de la pirateria: el comprador fàcilment pot redistribuir la còpia, sense pèrdua de qualitat, de manera il·legal. Sorgeix, doncs, el problema de la protecció de la propietat intel·lectual d'aquests articles, cosa que es coneix com a protecció del copyright electrònic.
A continuació, introduirem els problemes que presenten les tècniques de protecció de la informació com ara la criptografia quan s'intenta aplicar a la protecció del copyright.
4.3.1.Mancances de la criptografia
A l'hora d'aplicar la criptografia a la protecció del copyright, ens trobem que l'escenari, en aquest cas, és diferent que, per exemple, en un esquema de comunicació segura, necessari en un sistema de pagament.
Recordem que en un esquema de comunicació segura tenim dos participants que es volen enviar un missatge. Tots dos coneixen certes claus (ja siguin simètriques o públiques) que utilitzen, per exemple, perquè en el cas de la privacitat, cap altra persona pugui conèixer el contingut de les seves comunicacions.
Ara bé, en un esquema de protecció del copyright, les parts que hi intervenen són diferents. En primer lloc, hi ha un venedor (6) (emissor) que ven (emet) un article (missatge) a un comprador (receptor). Fixem-nos bé que en aquest cas es vol oferir seguretat a la informació, però, suposant que el mateix comprador pot ser deshonest, mentre que en el cas de la comunicació, qui se suposa que actua de mala fe és una tercera part. Per aquest motiu, l'esquema directe de xifratge entre venedor i comprador no serveix per a la protecció del copyright, perquè, si aquests compartissin certes claus, podrien ser utilitzades pel comprador per a redistribuir la informació un cop ja desxifrada.
Per tant, ens trobem que si volem afegir criptografia a la protecció de la propietat intel·lectual caldrà xifrar la informació per part del venedor, però, curiosament, el comprador no haurà de tenir-ne la clau de desxifratge. En aquest cas, com tindrà accés el comprador al contingut desxifrat del producte que ha comprat (àudio, vídeo, etc.)? La solució passa per incloure la clau de desxifratge en els "reproductors oficials" del producte en qüestió. Així, per exemple, un reproductor oficial de DVD desxifra la informació que hi ha xifrada en el DVD i l'emet a la pantalla del televisor.
Aquest sistema de protecció del copyright presenta, a priori, una feblesa important: la gestió de les claus. El fet que les claus de desxifratge han de ser conegudes per tots els reproductors oficials del producte presenta una gran dificultat en la seva gestió i comporta una massa crítica d'informació secreta excessivament elevada per a la seguretat del sistema. Justament, aquest fet és el que ha propiciat el trencament del sistema de protecció del DVD, conegut com a Content Scrambling System (CSS).
Els esquemes de protecció del copyright basats en criptografia es troben dins del que es coneix com a esquemes de protecció de còpia i es presenten més detalladament en el mòdul "Protecció del copyright electrònic".
4.3.2.Altres possibilitats: l'esteganografia
Com acabem de veure, la criptografia per si sola és una eina difícil d'aplicar per a la correcta protecció del copyright. Per aquest motiu, al principi dels noranta van començar a aparèixer noves tècniques de protecció del copyright basades en l'esteganografia.
L'esteganografia és la tècnica que permet d'amagar un missatge dins d'un altre contingut.
Per exemple, si tenim una imatge digital podem modificar el color de certes parts perquè tinguin un significat concret. D'aquesta manera es poden codificar missatges dintre d'una imatge.
Aquesta tècnica s'utilitza en la protecció del copyright per a incloure identificadors dins dels productes en format digital, de manera que, quan copiem el producte, també copiem aquests identificadors.
Els esquemes de protecció del copyright basats en l'esteganografia estan dins el grup d'esquemes de detecció de còpia. En el mòdul didàctic "Protecció del copyright" es descriuen detalladament les característiques i propietats d'aquests esquemes i en veurem alguns exemples concrets.

Resum

En aquest mòdul didàctic hem posat de manifest la importància de la seguretat en les aplicacions de comerç electrònic.
Hem donat els conceptes bàsics de criptografia que ens han permès d'entendre la diferència entre la criptografia de clau simètrica i la criptografia de clau pública. Aquestes nocions ens han permès de veure que les propietats d'aquests dos tipus de criptografia són complementàries i, per això, a la pràctica, el que s'utilitza en les aplicacions és el sobre digital, que és la combinació òptima de criptografia de clau simètrica i de clau pública.
Dins dels conceptes avançats de clau pública hem definit el concepte de signatura digital i hem vist que l'ús de les funcions hash ens permeten de reduir el cost computacional inherent a la criptografia de clau pública. També hem introduït el concepte d'infraestructura de clau pública, que ens serveix per a aconseguir, a la pràctica, les propietats de seguretat de la informació que té, teòricament, la criptografia de clau pública. Finalment, hem apuntat com les targetes intel·ligents ens poden ajudar a implementar de forma encara més segura aplicacions de comerç electrònic.
En l'últim apartat, hem incidit en els diferents àmbits de seguretat del comerç electrònic. Pel que fa a la seguretat en el conjunt de les dades, hem posat èmfasi en la problemàtica que presenten les aplicacions de comerç electrònic des d'un punt de vista d'intersecció de xarxes públiques i xarxes privades. També hem fet esment dels mecanismes més idonis per a l'autenticació dels compradors en les bases de dades de les aplicacions de comerç electrònic.
Pel que fa a la seguretat dels sistemes de pagament, hem descrit les propietats més importants que aquests han de complir i hem fet esment de com se'n poden obtenir algunes amb les tècniques que prèviament hem descrit. Hem fet esment també de la seguretat en el transport de les dades tot posant èmfasi en les propietats de seguretat que ens aporten protocols de transport com el SSL o el TLS.
Per acabar, fent referència a la seguretat del producte venut en suport digital, hem descrit les mancances que la criptografia té per a resoldre el problema de la protecció del copyright i com altres tècniques com l'esteganografia poden aportar solucions més satisfactòries.

Activitats

1. Instal·leu-vos el programari gratuït PGP i feu proves de xifratge i signatura per a familiaritzar-vos amb l'ús de la criptografia tant de clau privada com de clau pública. Us servirà, també, per a veure la simplicitat de les complexes operacions criptogràfiques quan s'utilitza el programari adequat.
http://www.pgpi.org
2. Els certificats digitals que segueixen l'estàndard X.509 i que estan emesos per autoritats de certificació reconegudes són de pagament. De totes maneres, podeu obtenir un certificat personal de Verisign gratuït per seixanta dies. Aquest certificat personal us permetrà d'incorporar-lo al vostre gestor de correu (Netscape o Microsoft) per a poder enviar missatges signats i rebre'n de xifrats.
http://digitalid.verisign.com/client/class1MS.htm
3. Connecteu-vos a un servidor que utilitzi SSL i examineu les propietats del seu certificat digital i qui el certifica. A continuació, proveu d'esborrar del vostre navegador l'autoritat de certificació que certifica el servidor en qüestió i torneu-vos-hi a connectar per a veure quins missatges us dóna el vostre navegador.

Exercicis d'autoavaluació

1. Suposem la situació següent: el departament de recursos humans d'una empresa decideix enviar via correu electrònic l'augment de sou a cada treballador. Descriviu quines propietats mínimes de seguretat ha d'acomplir aquest enviament d'informació.
2. Desxifreu el següent text xifrat, sabent que està en català i que ha estat xifrat amb una xifra de substitució simple amb k = 7.
SG ZLNBYLAGA LZ ZVCPUA XBLZPV KL IVUMPGUJG
3. Quina propietat de seguretat de la informació que no té la signatura convencional incorpora la signatura digital?
4. Què passaria si en un esquema de signatura digital utilitzéssim una funció hash que no fos lliure de col·lisions?
5. Què hem de fer si volem verificar una signatura digital i no tenim la clau pública de l'autoritat que la certifica? Podrem en tots els casos verificar-la?
6. Suposem que tenim un missatge signat per A i el seu certificat digital. Si verifiquem el certificat digital i comprovem que està revocat, és a dir, que figura en una CRL, què podem dir sobre la validesa de la signatura digital?
7. En l'entorn d'SSL, com podríem fer un atac per a corrompre la propietat d'autenticació del servidor, suposant que per un moment tenim accés total al navegador del client?

Solucionari

Exercicis d'autoavaluació
1. En cas que el departament recursos humans decideixi enviar els augments de sou, com a mínim, cal que es compleixin els requisits de seguretat següents:
  • Confidencialitat: no ha de ser possible que cap treballador pugui veure l'augment de sou de la resta de companys.

  • Autenticació: cal que no es puguin fer bromes als companys enviant missatges d'augments de sous en nom de recursos humans.

  • Integritat: tampoc no ha de ser possible modificar el correu que envia el departament de recursos humans.

  • No-repudi: si el que es pretén és que la comunicació per mitjà del correu electrònic tingui validesa "legal", el departament de recursos humans no pot negar haver enviat un missatge a un treballador amb un determinat augment de sou si realment aquest missatge ha estat enviat des de recursos humans.

2. La taula de desxifratge d'una xifra de substitució simple amb k = 7 per a l'alfabet català és la següent:

Text en clar

A

B

C

Ç

D

E

F

G

H

I

J

K

L

M

Text xifrat

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

Text en clar

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

Text xifrat

U

V

W

X

Y

Z

A

B

C

Ç

D

E

F

Per tant, el text en clar corresponent a
SG ZLNBYLAGA LZ ZVCPUA XBLZPV KL IVUMPGUJG
és
LA SEGURETAT ÉS SOVINT QÜESTIÓ DE CONFIANÇA.
3. La propietat d'integritat és l'única propietat de seguretat de la informació que incorpora la signatura digital, però que no té la signatura convencional. En una signatura digital, el document que signem està inclòs en la pròpia signatura per mitjà del resum obtingut amb la funció hash. Mentre que en la signatura convencional la signatura és una rúbrica al final del document, però això no impedeix que posteriorment a la rúbrica s'hi afegeixin, s'hi suprimeixin o s'hi modifiquin coses.
4. Si utilitzem una funció hash que no sigui lliure de col·lisions aleshores podríem trobar dos missatges m i m' tals que els seus valors hash fossin iguals h(m) = h(m'). Així, un usuari A podria signar el missatge m i posteriorment algú podria reclamar que A ha signat el missatge m' ja que el valor de la signatura DSKA(H(m)) seria el mateix per als dos missatges. Això seria un problema molt greu, per exemple, en cas que B preparés dos contractes m i m' , on m indiqués que A li ha de pagar 10 euros i m' indiqués que n'hi ha de pagar 100. B enviaria el contracte m a A i aquest el signaria. Posteriorment, B mostraria la signatura feta per A i el missatge m' que coincidiria i reclamaria a A els 100 euros.
5. Com ja hem explicat, necessitem un certificat per a validar correctament una signatura digital. Si no tenim la clau pública de l'autoritat que signa el certificat, haurem d'aconseguir-la per mitjà d'entitats de confiança per tal d'assegurar-nos que la clau pública que ens arriba és efectivament la de l'autoritat de certificació que volem. Podria passar, però, que no hi hagués cap camí de certificació entre nosaltres i l'autoritat de certificació que signa el certificat. En aquest cas, no podríem validar la signatura. Aquest fet es pot donar quan hi ha una comunitat tancada que fa servir una PKI pròpia. Si algun membre d'aquesta comunitat utilitza la seva signatura per a signar documents fora de la comunitat, els usuaris de fora de la comunitat no podran validar la signatura perquè no podran obtenir un camí de certificació fins a la seva autoritat certificadora.
6. Si en el procés de verificació de la signatura d'un missatge signat per A comprovem que el seu certificat digital està revocat, és a dir, que figura en una CRL, és important fixar-nos en la data en què es va signar el missatge. Podria ser que el missatge fos signat al més de juliol, que el certificat hagués estat revocat al més d'agost i que nosaltres estiguéssim intentant verificar la signatura al setembre. En aquest cas, com que a la data de signatura del missatge el certificat era vàlid, la signatura s'ha de considerar correcta. Evidentment, aquesta situació només es pot donar en el cas que totes les accions (signatura, revocació i validació) estiguin datades d'una manera fiable. Tot i que no s'ha tractat d'aquest tema en el mòdul didàctic, ja es pot veure que el problema de datació fiable de documents electrònics també afecta una PKI.
7. Un atac per a corrompre la propietat d'autenticació del servidor del protocol SSL podria ser el següent. Suposant que per un moment tenim accés total al navegador del client, l'única cosa que hauríem de fer és incorporar-nos com a autoritat certificadora reconeguda pel navegador. A partir d'aquell moment, podríem generar certificats per a tothom que volguéssim i serien acceptats com a vàlids per aquell navegador. Per exemple, podríem emetre un certificat per a un servidor d'un amic certificant que aquell servidor és La Caixa. Quan el client amb el navegador hi accedís, no tindria cap dubte que està contactant amb La Caixa. Aquest fet ens alerta sobre els problemes que pot arribar a crear la manca de coneixement dels usuaris sobre temes de seguretat i certificació. Ens hem mirat alguna vegada quines autoritats de certificació considerem com a fiables en el navegador que utilitzem normalment?

Glossari

autenticació
Propietat que fa referència a la identificació. És el nexe d'unió entre la informació i l'emissor d'aquesta.
autoritat de certificació
en certification authority
Entitat que dóna validesa a un certificat digital.
Sigla: CA
CA
Vegeu autoritat de certificació
certificat digital
Document digital que vincula una determinada clau pública a un usuari.
certification authority
Vegeu autoritat de certificació
certification revocation list
Vegeu llista de revocació de certificats
confidencialitat
Propietat que assegura que només aquells que estan autoritzats tindran accés a la informació.
sin.: privadesa
criptoanàlisi
Estudi de les tècniques que permeten de trencar els criptosistemes que dissenya la criptografia.
criptografia
Ciència que estudia les tècniques matemàtiques relacionades amb els diferents aspectes de la seguretat de la informació.
criptografia de clau compartida
sin.: criptografia de clau simètrica
criptografia de clau pública
Esquema de xifratge en el qual cada usuari té un parell de claus: una pública PK i una privada (o secreta) SK. La clau pública PK i la clau secreta SK defineixen dues funcions de xifratge EPK(x) i de desxifratge DSK(x), respectivament, que són inverses, és a dir, DSK(EPK(x)) = x o, el que és el mateix, DSK(x) = E-1PK(x).
criptografia de clau secreta
sin.: criptografia de clau simètrica
criptografia de clau simètrica
Esquema de xifratge que inclou aquelles xifres en les quals l'emissor i el receptor comparteixen una mateixa clau per a xifrar i desxifrar els missatges. sin.: criptografia de clau secreta, criptografia de clau compartida
criptologia
Ciència que engloba la criptografia i la criptoanàlisi.
criptosistema
Mètode pel qual un text en clar es transforma en un text xifrat.
sin.: xifra
criptosistema de bloc
Esquema de xifratge que divideix el text en clar en blocs de longitud fixa i que realitza l'acció de xifratge sobre cada bloc utilitzant la clau secreta compartida per emissor i receptor.
CRL
Vegeu llista de revocació de certificats
firewall
Vegeu tallafocs
funció hash
Funció que fa correspondre a un missatge m de mida variable una representació H(m) de mida fixa.
infraestructura de clau pública
en public key infrastructure
Tota l'estructura (certificats, CA, CRL, estructures jeràrquiques, etc.) que envolta la criptografia de clau pública i que serveix per a obtenir a la pràctica les propietats teòriques de la criptografia de clau pública.
Sigla PKI
integritat
Propietat que assegura la no-alteració de la informació.
llista de revocació de certificats
en Certification Revocation List
Llista en què figuren tots els certificats que una CA ha revocat.
Sigla CRL
no-repudi
Propietat que preserva que alguna de les parts negui algun compromís o acció presa amb anterioritat.
PKI
Vegeu infraestructura de clau pública
privadesa
sin.: confidencialitat
public key infrastucture
Vegeu infraestructura de clau pública
revocació d'un certificat
Acció que realitza la CA sobre un certificat emès per ella mateixa per tal de retirar-li la validesa que li havia atorgat. La acció concreta que realitza la CA per a revocar el certificat és la seva inclusió a una CRL.
secure sockets layer
Protocol de nivell de transport que confereix diferents propietats de seguretat a les comunicacions.
Sigla SSL
signatura digital
Equivalent electrònic de la signatura convencional.
signatura cega
Sistema de signatura digital que permet que un usari B signi un missatge proporcionat per l'usuari A sense que B pugui conèixer el contingut del que està signant.
sobre digital
Tècnica de xifratge híbrida que aconsegueix treure partit dels avantatges dels criptosistemes simètrics i els criptosistemes de clau pública, tot utilitzant ambdues tècniques.
SSL
Vegeu secure sockets layer
tallafocs
en firewall
Sistema o grup de sistemes que implementen una política de control d'accés entre dues xarxes.
targeta intel·ligent
Targeta que compleix la norma ISO 7810 pel que fa a gruix (0,75 mm) i a mida (com de targeta de crèdit, 85,6 mm × 53,98 mm) i, a més, incorpora un o més circuits integrats dins el seu gruix.
text en clar
Text, missatge o document que no ha estat xifrat i, per tant, és comprensible per a tothom que l'inspeccioni.
text xifrat
Text, missatge o document un cop que ha estat xifrat i, per tant, incomprensible per a tothom que l'inspeccioni directament. El text xifrat té per defecte la propietat de confidencialitat.
TLS
Transport Layer Security.
trencar un criptosistema
Aconseguir desxifrar un text xifrat d'un criptosistema sense tenir-ne la clau de xifratge.
xifra
sin.: criptosistema.

Bibliografia

Chaum, D. (1982). "Blind Signatures for Untraceable Payments." Proceedings of CRYPTO'82 (pàg. 199-203).
Diffie, W.; Hellman, M. (1976). "New directions in cryptography." IEEE Transactions on Information Theory (IT-22, 6, pàg. 644-654).
Freier, A.O.; Karlton P.; Kocher, P.C. (1996). SSL 3.0 Specification http://home.netscape.com/eng/ssl3/index.html.
Oppliger, R. (2000). Security technologies for the Word Wide Web. Artech House.
Request For Comments. (1999). RFC - 2246, The TLS Protocol 1.0 http://sunsite.dk/RFC/rfc/rfc2246.html.
Rivest, R.; Shamir, A.; Adleman, L. (1978). "A Method for Obtaining Digital Signatures and Public-Key Cryptosystems". Communications of the ACM (núm. 21-22, pàg.120-126).
Schneier, B. (1996). Applied cryptography, protocols, algorithms, and source code in C (2a. ed.) Nova York: John Wiley & Sons.
Zwicky, E. D.; Cooper,S.; Chapman D.B.; Russell, D. (2000). Building Internet Firewalls (2a. ed.). O'Reilly & Associates.