Está en la página 1de 47

Certificacin Digital e Infraestructura de Clave Pblica

Parte 1

Pedro Castilla del Carpio

quel que le gusta la prctica sin la teora, es como el marino que navega barcos sin timn ni brjula y nunca sabe dnde anclar.
Quin dijo eso?

Leonardo da Vinci? Napolen?

Ramn Castilla?

Frente a un invento de la mente humana, no basta saber cmo funciona. Tambin deberamos saber por qu funciona.

Aqu, el invento se llama Comunicacin segura a travs de medios inseguros y sirve de fundamento al comercio electrnico y al gobierno electrnico.

La SUNAT est implementando los libros contables electrnicos y la factura electrnica. En El Peruano del 8 de noviembre se lee que 600,000 MYPE podrn usar factura electrnica.

El Poder Judicial est implementando la notificacin electrnica en los procesos judiciales laborales y contencioso administrativos. Adems, junto con el IFB, el PP.JJ. tiene un proyecto de implementacin del expediente electrnico en los Juzgados Comerciales para reducir drsticamente la duracin de los procesos.
La SUNARP est incorporando procedimientos en va electrnica para la inscripcin de diversos ttulos legales. El RENIEC ha construido una infraestructura electrnica para generar certificados digitales a todos los funcionarios del Estado y, eventualmente, para todos los ciudadanos que se relacionen administrativamente con Entidades del Estado. La CONASEV utiliza hace 5 aos vas electrnicas como vehculo de sus relaciones oficiales con las empresas supervisadas. En el marco del comercio electrnico, y en todo el planeta: Cada compraventa que se hace con tarjeta de crdito a travs de internet, Cada transferencia bancaria hecha por va electrnica, Cada portal o website asegurados contra imposturas y suplantaciones, estn basados en Certificados Digitales.

Estos son algunos ejemplos en el mbito del gobierno electrnico. Todos ellos, en algn punto, se sustentan en aquello que se llama el Certificado Digital.

En conclusin: vale la pena conocer cmo funciona y por qu funciona la certificacin digital.

ndice
I.
II.

El problema de la seguridad en las comunicaciones electrnicas. [ Riesgos y


necesidades. Autenticidad, privacidad, integridad y no repudio ].

Soluciones criptogrficas. [Criptografa de clave simtrica. Ventajas y problemas. Criptografa de


clave asimtrica. Modalidad de CCA: criptografa de clave pblica. Conceptos matemticos elementales. Procedimientos para cubrir las necesidades vistas en I. Procedimiento necesario para lograr privacidad e integridad. El mtodo RSA. Ejemplos. El quid del RSA. El RSA no es inquebrantable. Cotejo entre criptografas simtrica y asimtrica. Mecanismo para lograr velocidad en la transmisin ( sobre digital). Procedimiento necesario para lograr autenticidad, no repudio e integridad. Firmas digitales. Mecanismo para lograr velocidad en la transmisin (funciones hash). Objetivo: las 4 virtudes juntas. Eslabn dbil en la criptografa de clave pblica. Resumen.]

III.

Infraestructura de Clave Pblica. [Concepto de Certificado Digital y de


Entidad o Autoridad de Certificacin. Contenido del Certificado Digital. Pasos para su creacin. Verificacin de su autenticidad. Sistema jerrquico de autoridades de certificacin. Certificacin cruzada. Condicin vigente o revocada del certificado: protocolos LCR, OCSP y SCVP. Certificado de a t r i b u t o s . D o s p a r e s d e c l a ve s . Renovacin y archivo de las claves. Protocolos de seguridad en INTERNET. Capa de conexin segura (SSL TL). S e lla d o de t ie m p o. Co n t ra t a ci n electrnica. Firma Digital ciega para retiros bancarios y votacin electrnica].

IV.

La PKI peruana. [Infraestructura Oficial de Firma Electrnica (IOFE). Esquema. Estndares adoptados].

Cuatro escenarios inseguros en las vas electrnicas de comunicacin


1. Espionaje
Informacin Confidencial

2. Suplantacin de identidad

Soy el cliente A

3. Adulteracin de los documentos

4. Negacin maliciosa de documento propio

Ruta ideal del mensaje

A
Ruta REAL del mensaje

1. Hace una oferta econmica

Transfiera $ 100 aD

Transfiera $ 1000 aC

3. Rechaza todo, sosteniendo (falsamente) que alguien tom su nombre

2. B acepta la oferta, descartando otras

Cmo hacemos para evitar dichos escenarios? Felizmente, existen herramientas con las cuales podemos asegurar cuatro cosas: 1. La verdadera identidad de los remitentes de documentos electrnicos. 2. La imposibilidad de que ms tarde dichos remitentes quieran desconocer los compromisos asumidos por va electrnica.

En Internet, nadie sabe que eres


un perro.

3. La privacidad de los documentos, negando su lectura a quienes no sean los destinatarios. 4. La imposibilidad de que alguien (emisor, receptor o tercero) adultere el contenido de los documentos sin ser notado. El arte-ciencia que nos da las herramientas necesarias se denomina criptografa.

II. Soluciones criptogrficas


Un documento elaborado con un sistema de signos que conocemos, tiene carcter comprensible. La criptografa es la tcnica que permite eliminar (cifrar) y recuperar (descifrar) el carcter comprensible de un documento. Los procesos de cifrado y descifrado utilizan un algoritmo y una o ms claves. Un algoritmo consiste en una secuencia de operaciones dirigidas a cierto objetivo (es una gua de instrucciones). Ejemplos: el procedimiento para obtener una raz cuadrada. El procedimiento para obtener el mximo comn divisor de dos nmeros. Por lo general los algoritmos criptogrficos son pblicamente conocidos. No existe ningn misterio respecto a cules son las operaciones matemticas que deben realizarse. El secreto consiste en los nmeros especficos que deben insertarse en ellas. A esos nmeros se les denomina las claves. Un algoritmo muy simple, llamado Julio Csar como uno de sus primeros usuarios, consiste en sustituir cada letra por la que viene tres lugares despus en el abecedario:

a b c d e f g h i d e f g h i j k l

k l

m n o p q r s t u v w x y z

m n o p q r s t u v w x y z a b c
Jhphu, dwdtxh sru h pruwh d dv flpfr gh d odqdpd.
Julio Csar, dibujo de Goscinny:

Con este mtodo, la frase General, ataque por el norte a las cinco de la maana se convierte en:

Criptografa de clave simtrica


A una clave como la anterior se le denomina simtrica, porque para regresar al documento legible original slo es necesario aplicar la misma clave en sentido inverso. Desencripta con clave simtrica

Emisor

Texto plano

Texto cifrado

Web

Texto cifrado

Texto plano

Encripta con Clave simtrica

Receptor

Los problemas inherentes a la criptografa simtrica


Para enviar la clave, no se puede usar un canal inseguro de comunicacin. Esta circunstancia obliga a los interesados a tener contacto directo por lo menos una vez, para que convengan en la clave que usarn. Pero esto no es muy compatible con por ejemplo- el comercio electrnico. Adems, para que cada persona de un grupo de n personas tenga una va confidencial de comunicacin con cada una de las otras (n 1) personas, se necesitan n (n-1) claves. 2

Para un grupo de 1000 personas precisaramos 499,500 claves! Esto eliminara cualquier posibilidad de desarrollar el comercio electrnico y el gobierno electrnico.

Un problema adicional: despus de haber convenido una clave secreta, y suponiendo que nadie la rob, hay garanta de la autenticidad de las comunicaciones, pero no hay garanta de la irrenunciabilidad de los compromisos.

Criptografa de clave asimtrica


En la criptografa de clave asimtrica, no se usa la misma clave para cifrar y descifrar, sino que tenemos dos claves relacionadas matemticamente entre s de modo tal que una descifra lo que la otra cifr. Lo que parece extrao al profano es que:
Ninguna otra clave puede desencriptar el mensaje, ni siquiera la clave original! (Hay razones matemticas que aseguran esto). La b el le za de este esquema es que c ada p ersona s lo neces ita una par ej a de claves para comunicarse con cualquier nmero de interlocutores . Una ve z que alguien obtiene su par de claves, puede comunicarse con cualquier otra persona. (Un grupo de 1000 personas slo necesitara 2,000 claves). (Atul Kahate, Cryptography and Network Security).

La criptografa de clave pblica (en donde una de las claves es de conocimiento pblico y la otra es de conocimiento exclusivo del titular del par de claves) es una sub-clase (la ms utilizada) de la criptografa asimtrica. La criptografa de clave pblica pone a nuestro alcance dos mecanismos: - Uno con el objetivo de lograr privacidad e integridad.

criptografa asimtrica. criptografa de clave pblica

- Otro con el objetivo de lograr autenticidad, no repudio e integridad.

Conceptos matemticos para entender la criptografa de clave pblica (1)


0.- La notacin m.c.d. (x, y) significa el mximo comn divisor de x e y. Ejemplo: m.c.d. (15, 25) = 5.
1.- Nmeros primos son aquellos nmeros naturales que slo son divisibles entre 1 y si mismos. Un teorema de Euclides demuestra que existen infinitos nmeros primos. 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 2.- Sean a, b, n enteros. La notacin a = b mod n define una operacin donde a es el residuo de la divisin de b entre n. As, por ejemplo, 15 mod 12 = 3, 16 mod 12 = 4, 17 mod 12 = 5, etc. Las operaciones aritmticas sujetas a mdulos conforman la aritmtica modular.

3.- Si c = me, es muy fcil regresar de c a m: c 1/e = m. Pero en la aritmtica modular no ocurre as. Si c = me mod n, el nmero d tal que cd = m mod n NO cumple d = 1/e. Este hecho, junto con otras premisas (que veremos en seguida), hace que encontrar d sea un problema muy difcil aun cuando se conozca e.

Conceptos matemticos para entender la criptografa de clave pblica (2)


4.- LA ARITMTICA MODULAR es usada para disfrazar informacin. Hemos visto en la anterior lmina que, por ejemplo, 27 mod 11 = 5, porque 27 = (11 x 2) + 5. La utilidad de esta operacin para fines criptogrficos se demuestra con la siguiente funcin de cifrado C = M3.
Al crecer M continuamente, tambin C crece continuamente. Este paralelismo hace posible invertir la funcin, o, en otras palabras, encontrar los inputs (valores de M) a partir de los outputs (valores de C). Ms precisamente, si el valor de la variable dependiente C es pequeo, tambin el valor de la variable independiente M lo ser, y si el valor de C es grande, tambin el valor de M lo ser.
M C = M3 1 1 2 8 3 27 4 64 5 125 6 216 7 343 8 512 9 729 10 1000

Sin embargo, cuando se aade la modularidad, de modo que C = M3 mod 11, los valores de la nueva funcin C no siguen patrn alguno. Cuando M crece, C cambia en una forma muy discontinua, y as protege efectivamente a M.
M C = M3 mod 11 1 1 2 8 3 5 4 9 5 4 6 7 7 2 8 6 9 3 10 10

Un sencillo ejemplo para romper el hielo con la aritmtica modular ms simple


Son las 7 de la maana. Qu hora marcar nuestro reloj dentro de 80 horas? Sera absurdo ponerse a sumar horas una por una . Lo que haremos es retirar al nmero 80 los mltiplos de 24 que estn contenidos en dicho nmero: 24, 48 y 72. Nos quedar entonces un residuo o saldo de 8 horas. Lo mismo se expresa con la siguiente notacin: 80 8 (mod 24). As que, si transcurren 80 horas desde este momento (las 7 de la maana), pasarn 3 perodos de 24 horas, ms un saldo de 8 horas. De manera que el reloj marcar: 7 a.m. + 8 horas: 3 p.m. Respuesta final: dentro de 80 horas, sern las 3 de la tarde.

Un parntesis:
En lo sucesivo, para nuestros ejemplos usaremos a Pierre Fermat (1601 1665) y Leonhard Euler (se lee Oiler) (1707 1783) Usamos sus nombres pues algunos de sus aportes a la Teora de Nmeros son bsicos para la comprensin matemtica del algoritmo ms utilizado en los programas de criptografa asimtrica (el mtodo RSA).

Criptografa de clave pblica Proceso o mecanismo usado para lograr privacidad en las comunicaciones

Emisor (Fermat )

Receptor

(Euler)

Texto Plano

Texto cifrado

Web

Texto cifrado

Texto plano

Fermat encripta con la clave pblica de Euler

Euler desencripta con su clave privada

Una empresa slo necesita un par de claves para recibir informacin confidencial de n clientes a travs de un medio inseguro (internet)
1. Los clientes cifran sus documentos con la clave pblica del Banco. 2. El Banco descifra los documentos con su clave privada.
Texto original del cliente N

Texto original del cliente N

Texto cifrado

Banco
Otro texto cifrado Texto original del cliente G

Texto original del cliente G

Texto original del cliente D Texto original del cliente D Un tercer texto cifrado

Resultados de la bsqueda

En las siguientes lminas analizaremos el mtodo de clave pblica ms divulgado, el RSA, llamado as por las iniciales de Rivest, Shamir, Adleman, que lo inventaron en 1977.

Se necesita un ligero barniz de matemticas para entender este mtodo, relativamente sencillo. La ordala valdr la pena.

Este es el algoritmo RSA (recordar que los algoritmos son pblicamente conocidos).

1. 2. 3. 4. 5.

Sean P, Q dos nmeros primos grandes. Sea N = P x Q. Sea un # E tal que m.c.d. ( E, (P-1) x (Q-1) ) = 1 Sea D tal que (D x E) mod (P-1) (Q-1) = 1 Fermat da a Euler su clave pblica: (E, N). Su clave privada es D. Aqu, el mtodo se bifurca. Segn el objetivo que busquemos, seguiremos uno u otro camino.

Teoremas 1. Si a, z, n, y c son enteros, (az mod n)c mod n = azc mod n. 2. Si D, E y N son definidos como ya vimos y a es cualquier entero < N, a = a DE mod N.

Objetivo: privacidad 6. Euler tiene un mensaje para Fermat. El # equivalente es M < N. Lo encripta as: ME mod N = C. 7. Euler enva el # C a Fermat. 8. Fermat realiza la siguiente operacin: CD mod N y obtiene M. Por qu?

Objetivo: autenticacin y no repudio 6. Fermat tiene un documento para Euler. El # equivalente es P < N. Lo encripta as: PD mod N = F. 7. Fermat enva los # P (equivalente al texto original) y F (firma digital) a Euler. 8. Euler realiza la siguiente operacin: FE mod N y obtiene P. ( Por qu?). Luego lo compara con el otro nmero que Fermat envi y ve que son iguales. Demostracin del paso 8: FE mod N = (PD mod N)E mod N Slo ver esta columna cuando estudiemos el 2 mecanismo

Demostracin del paso 8: CD mod N = (ME mod N)D mod N = (teorema 1) MED mod N = (teorema 1) PDE mod N = (teorema 2) M = (teorema 2) P

Algunas notas

1. Muy grandes: 120 o ms dgitos c/u.

2. Pasar letras a nmeros es algo que ya vimos. Que M sea < N es una exigencia del teorema 2. Si M > N, lo partimos en bloques M1, M2,, Mr tales que para todo k = 1, , r se tiene Mk < N. Algo anlogo vale para P.

1. 2. 3. 4. 5.

Sean P, Q dos nmeros primos grandes. Sea N = P x Q. Sea un # E tal que m.c.d. ( E, (P-1) x (Q-1) ) = 1 Sea D tal que (D x E) mod (P-1) (Q-1) = 1 Fermat da a Euler su clave pblica: (E, N). Su clave privada es D. Aqu, el mtodo se bifurca. Segn el objetivo que busquemos, seguiremos uno u otro camino.

Objetivo: privacidad 6. Euler tiene un mensaje para Fermat. El # equivalente es M < N. Lo encripta as: ME mod N = C. 7. Euler enva el # C a Fermat. 8. Fermat realiza la siguiente operacin: CD mod N y obtiene M. Por qu?

Objetivo: autenticacin y no repudio 6. Fermat tiene un documento para Euler. El # equivalente es P < N. Lo encripta as: PD mod N = F. 7. Fermat enva los # P (equivalente al texto original) y F (firma digital) a Euler. 8. Euler realiza la siguiente operacin: FE mod N y obtiene P. ( Por qu?). Luego lo compara con el otro nmero que Fermat envi y ve que son iguales. Demostracin del paso 8: FE mod N = (PD mod N)E mod N

3. C simplemente denota al resultado de la operacin ME mod N. Por ejemplo, si ME fuese 34 y N fuese 10, entonces C sera 4. Algo anlogo vale para F.

4. Obsrvese que para ambos objetivos la base matemtica es la misma: teoremas 1 y 2. 5. Autenticacin del documento recibido por Euler, e imposibilidad de repudio del mismo por parte de Fermat.

Demostracin del paso 8: CD mod N = (ME mod N)D mod N = (teorema 1) MED mod N = (teorema 1) PDE mod N = (teorema 2) M = (teorema 2) P

En la direccin http://www.ietf.org/rfc/rfc2437.txt se puede analizar con todo detalle el algoritmo RSA para cifrado de informacin.

Ejemplo del mtodo RSA usado para la privacidad de las comunicaciones

1. Sean P, Q dos nmeros primos. Tomaremos P = 7 y Q = 17. 2. Sea N = P x Q. En nuestro caso, N = 7 x 17 = 119. 3. Sea E tal que m.c.d. ( E, (P-1) x (Q- 1) ) = 1. En nuestro caso, (P-1) x (Q- 1) ) = 6 x 16 = 96 = 25 x 3. Entonces E no puede tener como factores a 3, 2, 22, , 25. Tomaremos E = 5. 4. Sea D / D x E mod (P-1) (Q-1) = 1. Escojamos D = 77, dado que (5 x 77) mod 96 = 385 mod 96 = 1.

5. Codifique el mensaje original usando A =1, B = 2, etc. Por simplicidad, supongamos que el mensaje original es F. Segn nuestro esquema para codificacin del alfabeto, F = 6.
6. Proceso de encriptacin: mE mod N. En nuestro caso, ser 65 mod 119. O sea 7776 mod 119.

8. Proceso de desencriptacin: CD mod N. En nuestro caso, 4177 mod 119. Sabemos que esta operacin consiste en dividir 4177 entre 119 y considerar el residuo. El resultado es 6.

7. La operacin 7776 mod (119) consiste en 9. Decodifique el mensaje original usando dividir 7776 entre 119 y considerar el residuo, A = 1, B = 2, etc. que es 41. Este es el texto encriptado, Fermat enva el dato que denotar C.

encriptado (41) a Euler

Otro Ejemplo:
1. Elija dos nmeros primos grandes, P y Q. Sea P = 47, Q = 71. 2. Calcule N = P x Q. Tenemos N = 47 x 71 = 3337. 3. Escoja la clave pblica E (la clave de cifrado) tal que no tenga factores comunes con (P 1) x (Q 1). Encontremos (47 1) x (71 1) = 46 x 70 = 3220. Los factores de 3220 son 2, 2, 5, 7 y 23 (porque 3220 = 2 x 2 x 5 x 7 x 23). As tenemos que escoger E tal que ninguno de los factores de E sea 2, 5, 7 y 23. Como unos pocos ejemplos, no podemos escoger E como 15 (porque tiene 5 como factor), 14 (porque tiene 2 y 7 como factores), etc. Escojamos E = 79 = .

4. Elija la clave privada D ( la clave de descifrado) tal que la siguiente ecuacin es cierta: (D x E) mod (P -1) x (Q -1) = 1. Sustituyamos los valores de E, P y Q en la ecuacin. Tenemos: (D x 79) mod (47 -1) x (71 -1) = 1. Esto es, (D x 79) mod (46) x (70) = 1 Esto es, (D x 79) mod (3220) = 1 Despus de algunos clculos, tomemos D = 1019. Entonces lo siguiente es cierto: (1019 x 79) mod (3220) = 80501 mod 3220 = 1, que es lo que queramos.

5. Para encriptacin, calcule el texto cifrado C del texto plano M como sigue: C = M E mod N. Asumamos que queremos encriptar el texto plano 688. Entonces C = 688 79 mod 3337 = 1570. 6. Enve C como texto cifrado al destinatario. V.d. enve 1570 como texto cifrado al destinatario. 7. Para desencriptacin, calcule el texto plano M del texto cifrado C como sigue: M = C D mod N Vale decir: M = 15701019 mod 3337 = 688.

Comprendiendo el quid del RSA


La matemtica del mtodo RSA es de carcter elemental. El verdadero reto consiste en elegir nmeros adecuados para P, Q y E. Estando alquien en posesin de la clave pblica E de Fermat (5 en nuestro ejemplo) y del mdulo N (119), qu debera hacer para llegar a la clave privada D (77)? Segn vimos en lminas anteriores, primero debe encontrar los valores de P y Q. En nuestro ejemplo P y Q son nmeros muy pequeos (7 y 17). Luego, teniendo el dato N (que es = P x Q), es muy fcil hallarlos por prueba y error. Sin embargo, en la vida real, P y Q se escogen muy grandes (+ de 120 dgitos cada uno). Por tanto, factorizar N para encontrar P y Q nada tiene de fcil. Es muy complejo y toma mucho, mucho tiempo. Dado que el atacante no puede hallar P y Q, entonces tampoco puede obtener D, pues D depende de P, Q y E. Y si no puede obtener D, tampoco puede descifrar el texto encriptado (aun conociendo N y E). Una aparente contradiccin.- Necesitamos que P y Q, nmeros enormes, sean primos. Y cmo saberlo? Respuesta provisional: averiguando si tienen otros factores aparte de 1 y ellos mismos. Pero acaso el mtodo RSA no se sustenta, precisamente, en la extrema dificultad para factorizar nmeros enormes? Y si tenemos dificultades para factorizar P y Q, cmo sabremos si son primos o compuestos? Afortunadamente, existe un teorema para determinar si un nmero cualquiera es primo o compuesto sin tener que probarlo mediante una factorizacin (se le denomina pequeo teorema de Fermat).

El RSA no es inquebrantable
Aos despus
1. Longitud de la clave: 256 bits

Rota

0. Con el paso de los aos, los ataques contra las claves privadas mejoran porque: 1) aumenta la potencia de las computadoras empleadas; 2) se elaboran nuevas herramientas matemticas con este objetivo (quebrar las claves).

Aos despus
2. Respuesta: se aument la longitud a 512 bits

Rota Aos despus

4. Todava no, pero no falta mucho. Por eso, el INDECOPI exige este requisito (NIST lo recomienda a partir del 2010):

3. Respuesta: se aument la longitud a 1024 bits

Rota?
Longitud de la clave: 2048 bits

5. Los nmeros primos son infinitos. Por lo tanto, siempre podremos usar primos P y Q cada vez ms grandes, de los cuales depende la clave privada D. Vale decir: siempre podremos protegerla aumentando su longitud.

6. Pero a mayor longitud de la clave, mayor lentitud en el cifrado y el descifrado (problema prctico).

7. El mtodo RSA es el ms usado, pero no el nico. De los otros, hay uno que tiene la ventaja de usar claves de menor longitud y dar el mismo nivel de seguridad. Y por ser ms corta la clave, el programa es ms veloz. (Criptografa con curvas elpticas).

Otros algoritmos de clave pblica (no RSA)


En el mundo, el RSA sigue siendo el mtodo ms usado como garanta de privacidad, integridad y no repudio en las comunicaciones electrnicas. Pero sus claves extensas (1024, 2048 bits) son muy pesadas para objetos de poca capacidad como las tarjetas inteligentes y los mviles con acceso a INTERNET.

Para enfrentar el hecho, se han diseado algoritmos matemticos que emplean curvas elpticas, los cuales estn ganando terreno comercial pues emplean claves ms pequeas que las del mtodo RSA. La National Security Agency del gobierno de EE.UU. ha dado su respaldo a estos mtodos y resuelto migrar a ellos.

Lamentablemente no podemos dar una justificacin esquematizada de estos algoritmos, pues requieren de un conocimiento matemtico mucho ms complejo que el RSA. Una primera aproximacin no traumtica a las curvas elpticas (que, pese a su nombre, no tienen la forma de una elipse) se encuentra en la segunda conferencia recogida en el libro El placer esttico de las matemticas, de Serge Lang.

Comparaciones entre las criptografas de clave simtrica y asimtrica


Caracterstica Criptografa de clave simtrica La misma clave es usada para cifrado y descifrado Criptografa de clave asimtrica Una clave usada para cifrado y otra diferente para descifrado

Clave usada para cifrado / descifrado

Velocidad del cifrado / descifrado


Tamao del texto encriptado resultante Acuerdo sobre la clave / intercambio

Rpido
Usualmente igual o menor al texto original Serio problema

Lento
Ms grande que el texto original Ningn problema

Nmero de claves requeridas comparado con el nmero de participantes en el intercambio de mensajes


Uso

Tiende al cuadrado del nmero de participantes, por tanto la escalabilidad es difcil.


Garantiza privacidad, pero no asegura el no repudio y por tanto no ayuda a establecer obligaciones legalmente exigibles.

Si el nmero de participantes es n, el nmero de claves es 2n. De manera que puede escalar bien.
Garantiza privacidad pero adems permite construir firmas digitales y, por tanto, no repudio.

Mecanismo para lograr velocidad en la transmisin de documentos encriptados con la clave pblica del destinatario (1)
Sera muy til si pudisemos combinar los dos mecanismos criptogrficos, de modo que conjugramos lo mejor de ambos. Los siguientes objetivos deben alcanzarse: 1. 2. La solucin debera ser completamente segura. El cifrado y descifrado no deberan consumir mucho tiempo.

3.
4.

El texto cifrado debera ser de tamao compacto.


La solucin debera adaptarse fcilmente a un nmero grande de usuarios, sin que ello introdujese complicaciones adicionales. El problema de la distribucin de la clave debe ser resuelto por la solucin.

5.

De hecho, en la prctica la criptografa de clave simtrica y la criptografa de clave asimtrica son combinadas para obtener un solucin que no slo segura sino tambin razonablemente veloz. La forma en que se trabaja es como sigue.

Mecanismo para lograr velocidad en la transmisin (2)


Paso 1). Encriptando el texto plano con un algoritmo de clave simtrica
Emisor (Fermat) Clave simtrica (K1) inventada por Fermat

Texto Plano (TP)

Texto cifrado (TC)

Paso 2). Clave simtrica envuelta usando la clave pblica del destinatario
Clave simtrica inventada por Fermat (K1)

Fermat aplica la clave pblica de Euler (K2) La clave simtrica se encuentra encapsulada, y para abrir la cpsula se necesita la clave pr i vada del destinatario Euler.

Emisor (Fermat)

Emisor Fermat

Mecanismo para lograr velocidad en la transmisin(3)

Texto Cifrado (TC)

Web

Receptor

Euler

Texto Cifrado (TC) Clave simtrica (K1) encriptada con la clave pblica de Euler (K2)

Mecanismo para lograr velocidad en la transmisin(4)


Paso 1) Recuperacin de la clave simtrica

Euler aplica su clave privada


Clave simtrica Inventada por Fermat

Receptor

(Euler)

Paso 2) Usando la clave simtrica para recuperar el texto original


Receptor Texto Cifrado (TC) por Fermat

Euler aplica la clave simtrica (K1) inventada por Fermat


Texto Plano (TP)

(Euler)

Criptografa de clave pblica para lograr autenticidad y no repudio


Encriptando un mensaje con la clave privada del emisor Fermat encripta con su clave privada

Emisor
(Fermat)

Texto plano

Texto cifrado
Receptor

(Euler)

Fermat enva este mensaje encriptado a Euler

Una aclaracin necesaria para barrer con algunas ideas confusas


Algunos tenemos la idea de que una firma digital es algo as como una imagen de la firma manuscrita transferida a medios electrnicos. Algo as como una firma escaneada (la cual, para aumentar la confusin, tambin se denomina firma digitalizada). Pero, definitivamente, una firma digital no es eso. Hay un concepto sombrilla, deliberadamente genrico, que es el de firma electrnica. Se denomina as a cualquier smbolo basado en medios electrnicos que es utilizado por alguien con la intencin de autenticar un documento y/o garantizar su Integridad. Este concepto amplio abarca diferentes cosas. Por ejemplo, abarca a: 1) El nombre que ponemos al pie de un e-mail ordinario; 2) la firma escaneada o digitalizada; 3) la firma que se escribe como en la figura de al lado, con un lapicero especial; 4) la firma digital.

Dos modalidades de firmas electrnicas que no son firmas digitales.

En qu consiste, entonces, la firma digital ?


Antes que nada, eliminemos la idea de que una firma digital tiene una imagen parecida a los trazos que hacemos en un papel. No es as. Una firma digital es una secuencia numrica que resulta de practicar ciertos clculos sobre otra previa secuencia numrica. Veamos un ejemplo ficticio. Primero, mediante algn mtodo simple convertimos letras y signos de puntuacin en nmeros:
a
01 q 18

b
02 r 19

c
03 s 20

d
04 t 21

e
05 u 22

f
06 v 23

g
07 w 24

h
08 x 25

i
09 y 26

j
10 z 27

k
11 . 28

l
12 , 29

m
13

n
14 1

15 2 32

o
16 3 33

p
17 4 34

30

31

Encriptado con alguna clave desconocida


Mariscal Ney, ataque a las 4 a.m. Napolen

1301190920030112 30140526293001210 11822053001301201 20303430012813283 01401171612051614

1059287839623567 3495834720857200 928576094807219 375073726509211


Todo este bloque sera la firma digital de Napolen

Ahora bien, este ejemplo que hemos visto: Mariscal Ney, ataque a las 4 a.m. Napolen

Encriptado con alguna clave desconocida (???)

070514051901123014 052629300121011822 053001301201203034 300128132830140117 1612051614

1059287839623567 3495834720857200 928576094807219 375073726509211


Esta sera la firma digital de Napolen

slo sirve para una primera aproximacin al concepto de firma digital. Aparte de eso, no tiene valor alguno. En realidad, la clave usada para pasar del cuadro verde al violeta no existe. En la segunda secuencia numrica puse cualesquiera nmeros al azar, de modo que no hay forma de recuperar la primera secuencia a partir de la segunda. Pero, por lo menos, el ejemplo nos sirve para percibir a la firma digital como lo que es: una secuencia de nmeros generada a partir de otra secuencia de nmeros.

El ejemplo tambin deja ver que Napolen tendr tantas firmas digitales como distintos documentos elabore. Se volver sobre eso ms adelante.

Esquema bsico para autenticacin y no repudio


Paso 1
Texto plano

Fermat encripta con su clave privada


Texto Cifrado = Firma Digital

Fermat

Euler descifra con la clave pblica de Fermat

Paso 2

F.D.
Web

F.D.

Texto plano

Fermat Texto plano Texto plano

Fermat enva el texto cifrado y una copia del texto plano

Paso 3:

Si los dos textos coinciden, Euler sabe que el documento es autntico y no repudiable Euler

Qu pasara si ocurriese esto?

Mensaje Original (M1)

Otro mensaje original (M2)

Fermat encripta con su clave privada

Fermat encripta con su clave privada

Firma Digital (FD1)

Supongamos se produce esto:

FD 1

FD 2

Firma Digital (FD2)

Supongamos que Fermat enva primero M1 (una oferta econmica) con FD1. Despus se arrepiente de su oferta. Entonces, cambia ligeramente M1, convirtindolo en M2, pero obteniendo FD2 tal que FD2 = FD1. Despus, cuando Euler le exija cumplir la oferta M1, Fermat podr decir que l slo envi la oferta M2 y que Euler fragu M1. Y cuando Euler invoque FD1 como prueba de que Fermat envo y se comprometi a cumplir M1, Fermat demostrar que la oferta M2 (la nica que reconoce como propia) genera FD2 = FD1. As habr repudiado a M1 maliciosa y exitosamente.

Afortunadamente la aritmtica modular detrs de esta tcnica tiene como consecuencia que, aun cuando dos nmeros M1 y M2 (los mensajes originales) estn muy prximos el uno al otro, los valores resultantes FD1 y FD2 (las firmas digitales) sern muy diferentes.

Mensaje Original (M1) Otro mensaje original (M2)

Fermat encripta con su clave privada

Fermat encripta con su clave privada

Firma Digital (FD1)

Distintas

Firma Digital (FD2)

Veamos esta lmina otra vez, pero atendiendo a la segunda columna


2. Pasar letras a nmeros es algo que ya vimos. Que M sea < N es una exigencia del teorema 2. Si M > N, lo partimos en bloques M1, M2,, Mr tales que para todo k = 1, , r se tiene Mk < N. Algo anlogo vale para P.

1. 2. 3. 4. 5.

Sean P, Q dos nmeros primos grandes. Sea N = P x Q. Sea un # E tal que m.c.d. ( E, (P-1) x (Q-1) ) = 1 Sea D tal que (D x E) mod (P-1) (Q-1) = 1 Fermat da a Euler su clave pblica: (E, N). Su clave privada es D. Aqu, el mtodo se bifurca. Segn el objetivo que busquemos, seguiremos uno u otro camino.

Objetivo: privacidad 6. Euler tiene un mensaje para Fermat. El # equivalente es M < N. Lo encripta as: ME mod N = C. 7. Euler enva el # C a Fermat. 8. Fermat realiza la siguiente operacin: CD mod N y obtiene M. Por qu?

Objetivo: autenticacin y no repudio 6. Fermat tiene un documento para Euler. El # equivalente es P < N. Lo encripta as: PD mod N = F. 7. Fermat enva los # P (equivalente al texto original) y F (firma digital) a Euler. 8. Euler realiza la siguiente operacin: FE mod N y obtiene P. ( Por qu?). Luego lo compara con el otro nmero que Fermat envi y ve que son iguales. Demostracin del paso 8: FE mod N = (PD mod N)E mod N

3. C simplemente denota al resultado de la operacin ME mod N. Por ejemplo, si ME fuese 34 y N fuese 10, entonces C sera 4. Algo anlogo vale para F.

4. Obsrvese que para ambos objetivos la base matemtica es la misma: teoremas 1 y 2. 5. Autenticacin del documento recibido por Euler, e imposibilidad de repudio del mismo por parte de Fermat.

Demostracin del paso 8: CD mod N = (ME mod N)D mod N = (teorema 1) MED mod N = (teorema 1) PDE mod N = (teorema 2) M = (teorema 2) P

Mecanismo para lograr eficiencia (velocidad) al transmitir firmas digitales


El procedimiento terico descrito dos lminas atrs permite lograr dos objetivos: autenticidad de origen y no repudio. Una necesidad prctica (ganar velocidad en la transmisin) nos obligar a complicarlo ligeramente. Cuando nuestro objetivo era la privacidad de las comunicaciones, vimos que, para ganar velocidad en la transmisin, usbamos el sobre digital:
TC Web TC

Etctera
Podramos usar el mismo modelo, pero para este caso hay otro mtodo ms eficiente, por medio del cual el documento a firmar es primero- reducido a un resumen, que es lo que se firma.

Documento original (M)

Reduccin del mensaje original a un formato compacto, antes de firmar (vale decir, antes de aplicar la clave privada).

Algoritmo para resumir documento (ejemplo: SHA-1)

Resumen (R 1)

Fermat encripta con su clave privada

Resumen encriptado

Firma Digital (FD)

Nota.- Al resumen tambin se le llama huella digital del documento.

Transmisin del mensaje original y la firma digital, juntos.


Emisor
(Fermat) Receptor

(Euler)
Web

Mensaje Original (M)


Firma Digital (FD)

Mensaje Original (M)


Firma Digital (FD)

Nota.- Ya sabemos que si Fermat aplicase su clave privada sobre dos diferentes documentos, obtendra dos diferentes textos cifrados (denominados firmas digitales). Los algoritmos de reduccin deben conservar esa virtud: la ms pequea diferencia entre dos mensajes originales debe generar resmenes manifiestamente distintos. Por qu? Porque si dos mensajes ligeramente diferentes de Fermat, M1 y M2, produjesen el mismo resumen, tambin produciran la misma firma digital (que no es sino la encriptacin del resumen con la clave privada), y ms adelante Fermat podra hacer pasar el mensaje M2 (conveniente a sus intereses) como si fuera el M1 . (El fraude de tres lminas atrs se repetira aqu).

Verificacin de la firma. El receptor realiza dos operaciones:


1. Calcula por su cuenta el resumen del documento original
Mensaje Original (M)

2. Partiendo de la firma digital, recupera el resumen presuntamente calculado por Fermat


Firma Digital (FD)

Algoritmo para resumir mensaje (SHA-1).

Desencripta con la clave pblica del emisor Fermat

Resumen (R 1)

Resumen (R2)

3. Si R1 y R2 coinciden, Euler tiene garanta de que: 1) En efecto Fermat envi el documento; 2) Fermat nunca podr negar su paternidad, pues el documento slo pudo ser encriptado con la clave privada de Fermat.

Objetivo: obtener las 3 condiciones: no repudio, integridad y privacidad


Un resumen de las bondades de la criptografa asimtrica como soporte de las comunicaciones por va electrnica es el siguiente.

Procedimiento criptogrfico asimtrico


Cifrado con la clave pblica del interlocutor

Qu se consigue

Cmo se enfrenta el problema de la lentitud de las operaciones con claves asimtricas


Gana velocidad mediante la tcnica del sobre digital. Gana velocidad apoyndose en las funciones de compresin o resumen.

Asegura privacidad e integridad de los documentos


Asegura que ni la autora ni la integridad de los documentos ser validamente cuestionada por sus autores.

Cifrado con la clave privada propia

La pregunta natural es: en caso que fuera necesario, sera posible combinar ambos procedimientos en uno solo que nos garantizara las 3 condiciones? Respuesta: s. Aunque en realidad basta obtener un procedimiento que asegure privacidad y no repudio, pues ya se vio que cualquiera de estas cualidades trae implcita la integridad del contenido del documento transmitido.

Combo: No repudio y privacidad


1. Fermat quiere garantizar la privacidad y el carcter no repudiable de este documento

Mensaje original
2. Con una funcin SHA de direccin nica, Fermat obtiene un resumen
Resumen

4.- Si alguien intercepta esta secuencia de nmeros, entonces, aplicando la clave pblica de Fermat podr regresar al resumen , pero no podr regresar del resumen al mensaje original, pues la funcin de compresin, siendo de direccin nica, es prcticamente irreversible. Mensaje cifrado con clave pblica de Euler

3. Fermat cifra con su clave privada Firma Digital Mensaje original Mensaje cifrado con clave pblica de Euler Firma Digital Mensaje cifrado con clave pblica de Euler Firma Digital

Web
Mensaje original

5. Euler descifra con su clave privada

Mensaje original

3. Fermat cifra con la clave pblica de Euler

7. Euler descifra con la clave pblica de Fermat , y compara sus dos resultados.

Resumen

6. Euler aplica la misma funcin de direccin nica para obtener un resumen a partir del mensaje original.

Resumen

9. Observacin. En este escenario donde se busca, simultneamente, privacidad y no repudio, la funcin de compresin no slo se usa para lograr mayor velocidad en la transmisin, sino que es bsica para garantizar la privacidad. Ver la nota 4.

8. La igualdad implica que el resumen fue cifrado con la clave privada de Fermat.

Todo est bien, hasta que advertimos el siguiente problema.

En todo lo anterior hemos asumido que el emisor Fermat conoce el valor de la clave pblica del receptor Euler, y que a su vez Euler conoce el valor de la clave pblica de Fermat.

Parece de lo ms simple que ambas partes tengan esos datos. Fermat puede enviar su c l a v e p b l i c a a E u l e r, y solicitarle la suya. Hay algn problema con eso? S. Un tercero puede emprender

el ataque del hombre intermedio, como se ve en la siguiente lmina y con ello destruir absolutamente todas las ventajas de la criptografa de clave pblica.

El ataque del hombre en el medio


Fermat. Clave pblica = 20. Can. Clave pblica = 17. Euler. Clave pblica = 13.

1. Hola, Euler, soy Fermat. Manda tu clave pblica. Mensaje La ma es 20. interceptado

Cambiar el mensaje. 2. Hola, Euler, soy Fermat. Manda tu clave pblica. La ma es 17.

3. Hola, Fermat. Recib tu mensaje. Mi clave pblica es 13.


Mensaje interceptado

4. Hola, Fermat, aqu Euler. Mi clave pblica es 17. 5. Fermat encripta un mensaje privado con 17.

Bien! Ahora engaar a Fermat.

Mensaje interceptado

6. Can descifra el mensaje, lee y lo vuelve a encriptar, pero con 13.

7. Euler descifra el mensaje. Crea respuesta privada y la encripta con 17.

8. Can descifra el mensaje, lee y vuelve a encriptar, pero con 20.

Mensaje interceptado

La lmina anterior describe un caso en que un espa Can quiebra la privacidad de las comunicaciones, las adultera y suplanta identidades ajenas. Esto nos ensea que, por si sola, la criptografa de clave pblica no es suficiente para garantizar la autenticidad, integridad, privacidad y el no repudio de los documentos enviados por va electrnica. Se necesita una herramienta adicional. Los certificados digitales, generados por organismos dignos de crdito, constituyen dicha herramienta. El uso de certificados digitales por parte de Fermat y Euler no necesariamente impedir que Can intercepte un mensaje. Pero los certificados digitales pondrn su interceptacin en evidencia (ya veremos cmo) y por tanto impedirn que Can suplante a los verdaderos interlocutores.

Criptografa de clave pblica. Resumen.


1.- La criptografa de clave asimtrica resuelve el problema ms serio de la criptografa de clave simtrica, a saber, intercambiar claves a travs de un medio inseguro. Una vez que los interesados comparten una clave, tienen privacidad (1) y garanta de autenticidad (2) para el intercambio de documentos y comunicaciones en general. 2.- Adems, las caractersticas particulares de esta clase de criptografa impiden que un usuario malicioso repudie ms tarde sus propios documentos (3), y permite detectar adulteraciones actuales o futuras en los textos (4). 3.- En la criptografa de clave pblica (que es la principal modalidad de criptografa asimtrica), a cada usuario le corresponde una clave pblica y una privada. La primera puede y debe ser puesta en conocimiento de todos; la segunda slo debe ser conocida por el titular del par de claves.

4.- El cifrado y descifrado con claves asimtricas es lento, lo cual se subsana as: 1) en el proceso para obtener privacidad, se usa el sobre digital. 2) en el proceso para obtener autenticacin y no repudio, se usa el resumen o huella digital.
5.- Por definicin, la criptografa de clave pblica tiene un punto complicado: establecer con seguridad el vnculo entre una persona y su clave pblica. Esto se resuelve mediante la participacin de terceros oficialmente reconocidos, que son las Autoridades de Certificacin.

Criptografa de clave simtrica

Criptografa Criptografa de clave de clave pblica asimtrica