métodos modernos de criptografía e identificación remota2025-09-01/... · introducción....
TRANSCRIPT
Dr. Hugo D. ScolnikProf. Titular Dpto. Computación FCEN -UBA
FIRMAS DIGITALES [email protected]
CONSECRI 2001
“ Métodos modernos de criptografía e identificación remota "
1. Introducción. Definiciones básicas. 2. Inalterabilidad de los mensajes. El concepto de hashing. 3. Métodos simétricos. Confiabilidad, longitud de claves, el
problema de la distribución de las claves. 4. Métodos asimétricos, transmisión de claves. Sobres
digitales. El concepto de firma digital, claves privadas y públicas. Seguridad de los protocolos. Firma digital y firma electrónica.
5. Conceptos de tecnología PKI. Autoridades certificantes y certificados digitales. Normas a cumplir.
6. Modelos de e-commerce seguro. Sesiones SSL. SecureMail. Form Signing.
7. Autenticación fuerte de clientes remotos. Biometría. Comparación entre técnicas tradicionales y nuevas tendencias hacia el uso masivo.
8. Aspectos legales de la criptografía aplicada en nuestro País.
9. Consultas y discusión abierta con los participantes.
Introducción. Definiciones básicas: texto plano, texto cifrado, encripción, desencripción, llaves, ataques por fuerza bruta.
�• Criptografía: es el arte de transformar mensajes de modo tal que sean ilegibles para todos aquellos a los que no se les confiere el modo de acceder a los mismos.
�• Criptoanálisis: es el estudio de las técnicas para quebrar mensajes criptografiados.
�• Criptología: es el estudio de la Criptografía y el Criptoanálisis.
�• Texto plano: es un mensaje original.�• Texto cifrado: es el resultado de criptografiar un texto
plano.
ELEMENTOS BÁSICOS DE CRIPTOLOGÍA
OBJETIVOS DE LA CRIPTOGRAFÍA
• CONFIDENCIALIDAD
• INTEGRIDAD
• CERTIFICACIÓN DE ORIGEN
• NO REPUDIO
CONFIDENCIALIDADCONFIDENCIALIDAD
Encripción: es cualquier procedimiento para transformar un texto plano en un texto cifrado.
Desencripción: es el procedimiento de transformar un texto cifrado en el correspondiente texto plano.
Llave : es la clave - normalmente alfanumérica -para el proceso de encripción.
Entidad: alguien que envía, recibe, o manipula información.
Emisor: una entidad que es un legítimo transmisor de información
Receptor: idem
Espía: una entidad que no es ni el emisor ni el receptor y que trata de alterar el proceso de comunicación.
Canales: un canal es un medio de transmitir información de una entidad a otra,
Un canal es físicamente inseguro si un adversario puede borrar, insertar, leer o modificar datos.
Un esquema de encripción es quebrable si un adversario sin un conocimiento a priori del par (e,d) puede sistemáticamente recuperar el texto plano a partir del cifrado en un tiempo “razonable”.
El objetivo de un diseñador es lograr que el ÚNICO ataque posible sea el de fuerza bruta
ATAQUE DE FUERZA BRUTA
Consiste en probar en forma sistemáticamente todas las
combinaciones posibles de las claves, hasta descubrir la que fue usada en una encripción
debe depender únicamente del desconocimiento de las claves
y no del algoritmo(este es generalmente conocido)
Seguridad de un sistema criptográfico
Punto 2.
Inalterabilidad de los mensajes. El concepto de hashing. Los algoritmos MD5, SHA, SHA-1 y otros.
INTEGRIDADINTEGRIDAD
Cómo sabemos que un mensaje que recibimos y desciframos no ha sido alterado ? Un espía o saboteador pudo haber interceptado el mensaje y haberlo alterado para estudiar el mecanismo o para causar daño.
HASHING
Hash Function
ν Es una función H que toma un string M, y produce otro, h, de tamaño fijo (generalmente más corto)
ν Al resultado (h) de aplicar una hash function a un string se lo suele llamar simplemente hash del string M
Hash: dado un mensaje de bits una función de hashing aplicada al mismo da como resultado otro “mensaje” de longitud que constituye un “resumen”del mismo. La idea es que aunque obviamente hay otros mensajes que producen el mismo hash, es extremadamente difícil encontrarlos y aún más difícil que tengan un significado. Por lo tanto si se transmite un mensaje (encriptado o no) por una vía y su correspondiente hashing por otro (o firmado digitalmente), se puede verificar si el mismo ha sido alterado.
Secure Hash Functionsν h = H ( M ) con los siguientes requisitos:
– Dado M es fácil computar h– Dado h es difícil encontrar el M original– Dado M, es difícil encontrar otro M’ tal que
H ( M ) = H ( M’ )
ν 2 tipos de s.h.f.:– Sin clave, son las normales– Con clave, llamadas MACs
ν Aplicaciones: integridad de mensajes o archivos, firma de digestos en vez de mensajes.
PÁGUESE A HUGO SCOLNIKU$S 12.000.000
Bill Gates
A2F508DE091AB30135F2
HASHING
A2F508DE091AB30135F2
FUNCIÓN TRAMPA
FÁCIL IMPOSIBLE
PÁGUESE A HUGO SCOLNIKU$S 12.000.000
Bill Gates
... sin colisiones!
Secure Hash FunctionsSecure Hash Functions
ν Sinónimos y variantes en distintos escenarios:– compression function,– contraction function, – message digest, – fingerprint, – cryptographic checksum, – data integrity check (DIC),– manipulation detection code (MDC), – message authentication code (MAC), – data authentication code (DAC)
““SecureSecure” ” hasheshashesν SNEFRU (128/256 bits); El SNEFRU de 2 pasos se puede
quebrar, usando una PC, en 3 minutos [birthday: dado M, hallar M’ cuyo H(M’)=H(M)], o en 1 hora (hallar un mensaje M dado un hash h)
ν N-HASHν MD2 (Message Digest-2, Ron Rivest, 128 bits, mas lento, menos seguro
que MD4, usado en PEM)
ν MD4 (Message Digest-4, Ron Rivest, 128 bits, muy usado)
ν MD5 (Message Digest-5, Ron Rivest, 128 bits, MD4 con mejoras, muy usado, usado en PEM, SSL)
ν SHA/SHA-1/SHA 256/SHA 512 (secure hash
algorithm, 160 a 512 bits, usado en DSS, SSL)
ν RIPEMD 128 / RIPEMD 160ν OTROS
Métodos simétricos, DES, 3DES, IDEA, AES, Cryptoflash, confiabilidad, longitud de claves, el problema de la distribución de las claves.
MÉTODOS DE ENCRIPCIÓN SIMÉTRICOS
CLAVE(ÚNICA)
#@Y6&(*-+jW3!’G&%;{I8=U
ESTAMOS HABLANDO DE CRIPTOGRAFÍA
ENCRIPCIÓN SIMÉTRICA
Algoritmos simétricosAlgoritmos simétricosν DES (block, clave de 56 bits)
ν 3DES (block, clave de 112/168 bits)
ν RC2 (block, Ron Rivest, reemplazo para DES, clave de tamaño
variable)
ν RC6 (block, Ron Rivest, clave arbitraria)
ν IDEA (block, international data encryption algorithm. clave de
128 bits)
ν NCT (block, non-linear curves traveller, clave arbitraria)
ν AES - RIJNDAEL (block, clave 128/256-bits)
ν CRYPTOFLASH (Stream, clave de 1024-bits)
Elementos básicos de los métodos simétricos. Todos los algoritmos criptográficos transforman a los mensajes en secuencias numéricas. Por ejemplo, si numeramos las letras del alfabeto utilizado en el idioma castellano obtenemos: A B C D E F G H I J K L M N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Ñ O P Q R S T U V W X Y Z 15 16 17 18 19 20 21 22 23 24 25 26 27 El mensaje: V A M O S A L C I N E Se escribe: 23 01 13 16 20 01 12 03 09 14 05
Donde escribimos A à 01, etc, para dejar en claro la codificación. Aquí no hemos hecho distinción de mayúsculas y minúsculas ni hemos agregado los signos de puntuación con propósitos ilustrativos (en la vida real se utiliza todo el código ASCII o EBCDIC)El método más simple es el de corrimiento (shift cipher en inglés) que se remonta a la época de Julio César y consiste simplemente en asignarle a cada letra la que le corresponde k posiciones mas adelante. En el ejemplo anterior, si usamos k=3 como lo hacía Julio César, resulta:
23 +3 =26 à Y ; 01+3=4à D, etc, obteniendo finalmente:
YDORVD ÑFLPH
En los sistemas que hemos visto suscintamente hasta el momento los caracteres sucesivos son encriptados usando la misma clave. Estos métodos se llaman de bloques (block ciphers). Un método alternativo muy utilizado es el de flujo (stream ciphers). La idea esencial es un flujo de claves cambiantes que dependen de la clave inicial fijada, y de los caracteres anteriores. Por ello, un cifrado de bloques es un caso especial de un cifrado de flujo donde la clave es siempre la misma.
Los stream ciphers son muy utilizados actualmente (p.ej. CryptoFlash)
I.V.
xD$#!0). xD$#!0). xD$#!0).
aaaaaaaa aaaaaaaa aaaaaaaa
MODO ECB (sin feedback)
MODO CBC (con feedback)
4”kG8xb: eT5$m>ls Rq0@Ñ+#*
aaaaaaaa aaaaaaaa aaaaaaaa
MODOS OPERATIVOS
580000 años8.9 años1.2 horasBytes (256)
2300 años51 dias4.5 minCaracteres ASCII (128)
6.9 años16 horas15 secCaracteres alfanuméricos
(62)
33 dias36 min1.7 secminúsc + dígitos (36)
2.4 dias5 min.5 secMinúsculas (26)
8 Bytes6 Bytes4 BytesCLAVE
Exploración a razón de 1.000.000 pruebas/segundo
(y el poder computacional se duplica cada 18 meses)
RC4 cipher, 128-bit key
RC2 cipher, 128-bit key
Triple-DES cipher, 168-bit key
IDEA cipher, 128-bit key
DES cipher, 56-bit key
RC4-Export cipher, 40-bit key
RC2-Export cipher, 40-bit key
No Encryption cipher
SEGURIDAD ALGORITMO Y CLAVE
•En 1980 Stephen Wolfram desarrolla un nuevo algoritmo simétrico basado en un AC, su uso quedó relegado por su baja performance. Fue criptoanalizado en 1981, bajo ciertas restricciones.
• En Mayo de 1998 se quiebra el DES 56-bits con una Workstation dotada con una plaqueta especial en menos de 24 Horas y un presupuesto de $200.000 (ataque de fuerza bruta = 256 = 72.057.594.037.927.936)
•En 1998 se abre el concurso al reemplazante del DES (AES). La selección ha concluído en octubre 2000, habiéndose seleccionado un algoritmo de bloques (Rijndael) con clave de 128/256-bits.
•En Agosto 1999 se desarrolló en Argentina un algoritmo de flujo basado en un AC no lineal con clave de 1024-bits (CryptoFlash)
RELATIVE BENCHMARK OF Cryptoflash AND THE SYMMETRIC ALGORITHM SELECTED BY THE NIST (10/02/2000) AS THE AES
(Advanced Encryption Standard)
ON A STANDARD PENTIUM USING TEXTS WITH LENGTHS > 215 bytes
Bibliography:[1] Wolfram,S., “Cryptography with Cellular Automata”, CRYPTO’85[2] Meier,W. et al., “Analysis of Pseudo Random Sequences Generated by Cellular Automata”, EUROCRYPT’91[3] Hecht, J.P., ,”Generación de caos determinístico y atractores extraños usando AC”, FOUBA, Mar 2000[4]. Schneier et al, “Performance Comparison of the AES Submissions – Vers 1.4b – Jan 15, (1999)
http://www.counterpane.com/aes-performance.html [5] http://csrc.nist.gov/encryption/aes/round2/AESAlgs/Rijndael/Rijndael.pdf
- CPU Fully scalable(8/16/32/64-bits) with same performance- inverse and direct take the same code & time
Max key length:
1024-bits7
CPU cycles/byte
285% faster
Cryptoflash
--difficult scalability with performance slowdown -the inverse takes more
code & time
Max key length:
256-bits20
CPU Cycles/byteAES
Rijndael
Métodos inquebrables. One time pad o anotador de única vez.
Si consideramos que el texto a encriptar es una sucesión de números binarios, un método de criptografía puede considerarse como un algoritmo que genera números binarios que se SUMAN a los anteriores módulo 2 (es la operación XOR que corresponde a la tabla de verdad de la disyunción excluyente). Esta tabla es:
011101110000
x yyx ⊕
Stream ciphers
El encriptamiento de un bloque depende de la “historia”
M = { a1, a2, a3, ....}K = { k1, k2, k3, ...}E = { e1, e2, e3, ...}
Se cumple queiii
iii
kea
kae
⊕=⊕=
iii eak ⊕=! CUIDADO Pero
Si a cada número binario del texto original se le suma módulo 2 (XOR) un bit aleatorio en una secuencia que se usa UNA SOLA VEZ,
se obtiene el llamado “one time pad”, método que se puede demostrar mediante la teoría de la información desarrollada por Shannon que es inviolable. El problema es que hay que distribuír tantas claves (bits)
como longitud tengan los mensajes a transmitir.
0
0
1
0
1
.
XOR1
0
0
1
0
.1
0
0
1
0
1
1
1
0
1
0
1
1
0
Métodos asimétricos, transmisión de claves. El método de Diffie-Hellman. Sobres digitales, RSA. El concepto de firma digital, claves privadas y públicas. Seguridad de los protocolos.
Como distribuir las claves secretas
La idea es disponer de un conjunto numerado de claves y transmitir códigos ininteligibles para un espía que permiten arribar mediante operaciones matemáticas al mismo número. Este valor en común entre los usuarios habilitados será utilizado luego como llave de un algoritmo simétrico.
Método de Diffie-Hellman
Este fue el primer algoritmo de clave pública y es universalmente utilizado para el intercambio seguro de claves.
sea p un entero primo “grande” y a un entero menor a p
Los usuarios 1 y 2 eligen arbitrariamente exponentes enteros x, y que mantienen
SECRETOS y proceden a calcular y envíarserecíprocamente lo siguiente:
El usuario 1 calcula y envía a 2 f(x) = (a)^x mod pEl usuario 2 calcula y envía a 1 f(y) = (a)^y mod p
Ahora 1 calcula
K = ( f(y) ) ^x mod p = ( (a)^y ) ^x mod p
...y 2 calcula
K = ( f(x) ) ^y mod p = ( (a)^x ) ^y mod p
donde K = Ky ambos usan esa nueva clave !
Ejemplo:
Sea p a x y= = = =23 5 6 10, , , . Ahora elusuario 1 calcula:f x a px( ) mod( ) mod( )
mod( )
= = ==
5 23
15625 23 8
6
y se lo envía al usuario 2.
El usuario 2 calculaf y a py( ) mod( ) mod( )
mod( )
= = ==
5 23
9765625 23 9
10
y se lo envía al usuario 1.
El usuario 2 recibió el número 8 yprocede a calcular:
K f x py= = =( ) mod( ) mod( )8 23 310
El usuario 1 recibió el número 9 ycalcula:
K f y px= = =( ) mod( ) mod( )9 23 36
Por lo tanto ambos llegaron a la MISMAclave.
Qué consigue un espía ? Intercepta los números y aunque conozca el primo elegido y la base (o sea ) , no sabe cuales fueron los números .Para encontrar la clave común tendría que resolver el llamado problema del logaritmo discreto, por ejemplo:
Cuando los números involucrados son muy grandes, y están bien elegidos, este problema es computacionalmente irresoluble en un tiempo razonable.
5 23 8x mod( ) =
Ejemplo: p a
x
y
= ===
1000475149 876543098
12345678909876543
654375426738848
, ,
,
Los resultados son: f x f y( ) ( )= =993617947 839026926 ,
y la c lave común a la que ambos arr iban es: K = 708448295 Obviamente puede usarse esta c lave en un algoritmo simétr ico o puede ser una referencia a un conjunto de c laves numeradas,
El espía (si llegó a conocer losnúmeros p a, ) tendría que resolver laecuación:
876543098 1000475149 993617947x mod( ) =
En la práctica se usan números muchomayores, lo que solo es factible con unsoftware o hardware muy bienimplementado.
Tests de primalidad Tests de primalidad basados en la simetrbasados en la simetríía a
de los subgruposde los subgruposde bases node bases no--testigostestigos. .
AlumnaAlumna: Marcela Noemí Nievas.: Marcela Noemí Nievas.DirectorDirector: Dr. Hugo Daniel Scolnik.: Dr. Hugo Daniel Scolnik.
ObjetivoObjetivoDeterminar la Determinar la primalidadprimalidad de un de un
número número nn impar dado, en forma impar dado, en forma
más eficientemás eficiente a la usual, a la usual,
disminuyendo la cota de errordisminuyendo la cota de error, al , al
declarar al número declarar al número nn, como primo., como primo.
Objetivo
¿Quiénes necesitan ¿Quiénes necesitan números primos?números primos?
νν CriptosistemasCriptosistemas––RSARSA
νν Esquemas de Firmas DigitalesEsquemas de Firmas Digitalesνν Esquema de Intercambio de Esquema de Intercambio de
ClavesClaves
Introducción
Introducción
RSARSA• Obtener P y Q primos grandes, distintos.• Calcular n = P ×× Q
• Elegir e primo relativo con ∅(n) = (P-1).(Q-1)• Calcular d, tal que e.d ≡ 1 mod (∅(n))
• Destruir P, Q y ∅(n)• Clave pública (e, n) y clave privada (d, n), ó
viceversa.
• Se encripta m, haciendo c = m e mod (n)• Se desencripta c, haciendo m = c d mod (n)
Porque su Porque su seguridadseguridad radica radica en no poder factorizar el en no poder factorizar el número número nn = = PP ×××× QQ, en , en un tiempo razonable.un tiempo razonable.
¿Por qué se necesitan ¿Por qué se necesitan números primos?números primos?
Introducción
Tests de Tests de PrimalidadPrimalidad
ννTest de Test de FermatFermatννTest de MillerTest de MillerννTest de MillerTest de Miller--RabinRabin
¿En qué se basan ¿En qué se basan los tests de primalidad?los tests de primalidad?
Se basan en las propiedades Se basan en las propiedades
algebraicas que cumplen algebraicas que cumplen
los números primoslos números primos
Test de primalidad
Pequeño Teorema de FermatPequeño Teorema de Fermat::
Si Si nn es primo. es primo. ∀∀b b entero, tal que MCD(entero, tal que MCD(bb,,nn) = ) = 11
entonces entonces bb nn--11 ≡≡ 11 mod mod ((nn))
Test de FermatTest de Fermat::
Buscar algBuscar algúún n bb tal que, tal que, bb nn--11 �� 11 mod mod ((nn))
Si lo encuentra Si lo encuentra ⇒⇒ ““nn es compuestoes compuesto””
Si no, declara a Si no, declara a nn como posible primocomo posible primo
Test de primalidad
Problemas con Problemas con el Test de Fermatel Test de Fermat
––Los seudo primos de base Los seudo primos de base bb––Números de CarmichaelNúmeros de Carmichael
Son números compuestos
Test de primalidad
Seudo Primos de Base Seudo Primos de Base bb–– Cumplen con Cumplen con bb nn--11 ≡≡ 11 mod mod ((nn))
para para n n compuestocompuesto
Números de Carmichael Números de Carmichael
(1910)(1910)–– ∀∀ bb enteroentero / MCD(/ MCD(bb,,nn) = ) = 11, ,
ccumplen umplen bb nn--11 ≡≡ 11 mod mod ((nn))
Test de primalidad
Los tests basados en el teorema de Fermat calculaban
an-1 mod (n), con a = 2 y comprobaban si el resultado era igual a 1 ó no. Pero este método no fué suficiente, dado que existen números compuestos n que satisfacen el teorema.
Por ejemplo, tomando n = 341 se puede comprobar que
2340 ≡≡ 1 mod (341) siendo 341 = 11 ⋅⋅ 31.
Seudo primos de base b
Sea n un número impar compuesto. Si existe b, tal que bn-1 ≡≡ 1 mod (n) para algún 1≤≤ b << n, entonces n es llamado seudo primo de base b porque cumple con la propiedad de Fermat, aunque n sea compuesto. En el ejemplo anterior, 341 es llamado seudo primo de base 2.
La existencia de estos seudo primos, invalidó el uso del teorema de Fermat como Test de primalidad.
Una solución parcial, fue cambiar de base igual a 2 a base igual a 3. De esta forma algunos seudo primos de base 2 fueron detectados. En nuestro ejemplo, 3340 ≡≡ 56 mod (341), por lo que es detectado como compuesto.
Aquí se dice que 3 es Testigo y 2 es No-Testigo de que 341 es compuesto, utilizando el pequeño Teorema de Fermat como test de primalidad.
Pero también existen números que son seudo primos de bases iguales a 2 y 3 y de bases iguales a 2, 3 y 5 simultáneamente.
Ejemplo,
265340 ≡≡ 1 mod (65341),
365340 ≡≡ 1 mod (65341) y
565340 ≡≡ 1 mod (65341) pero 65341 = 181 ⋅⋅ 361, compuesto
Entonces, ¿Existe algún n que sea seudo primo para toda base en el intervalo
[1,…,n-1]?
Secuencia de Miller Secuencia de Miller (1976)(1976)
Miller de secuencia la obtiene
se ),1(1 ,algún Para
1 impar, entero con
21 impar, entero 3
−≤≤•≥
⋅=−≥∀•
nbb
kq
qnn k
Test de primalidad de Miller
}{ 222 1 qqqq kk
,b, ... ,b, bb ⋅⋅⋅ −
Propiedad de MillerPropiedad de Miller
10con
)( mod )1(
)( mod 1
que, sucede }{
sec. la dadaimpar primo es Si
2
222 1
−≤≤−≡•
≡•
⇒
⋅
⋅⋅⋅ −
kj
nnb
ónb
,b, ... ,b, bb
n
q
q
qqqq
j
kk
Test de primalidad de Miller
Test de MillerTest de Miller
νν Se basa en elegir bases Se basa en elegir bases bb al al azar en el intervalo [1,...,azar en el intervalo [1,...,nn--1] y 1] y comprobar si cumplen comprobar si cumplen o no, o no, con la propiedad de Miller.con la propiedad de Miller.
Test de primalidad de Miller
Testigos y NoTestigos y No--TestigosTestigosνν Para Para nn entero compuesto imparentero compuesto impar
–– bb es TESTIGO si con él se detecta es TESTIGO si con él se detecta que que nn es compuesto.es compuesto.
–– bb es NOes NO--TESTIGO si con él TESTIGO si con él nono se se puede comprobar puede comprobar que que nn es es compuesto.compuesto.
Test de primalidad de Miller
Test de primalidad de Miller
Seudo Primos FuertesSeudo Primos Fuertes
2.0472.047ΨΨ11
3.215.031.7513.215.031.751ΨΨ44
25.326.00125.326.001ΨΨ33
1.373.6531.373.653ΨΨ22
Seudo Primo FuerteSeudo Primo Fuerterr
Sean q1, ..., qr los primeros r primos. Ψr es el menor entero positivo que es seudo primo para las bases las bases q1, ..., qr
Algunos de ellos son:
¿Cuántos No¿Cuántos No--Testigos hay?Testigos hay?
νν En 1977, En 1977, Michael Michael Rabin demostró Rabin demostró que la cantidad de bases Noque la cantidad de bases No--Testigos para todo Testigos para todo nn entero entero compuesto impar es menor a compuesto impar es menor a nn/4./4.
Test de primalidad de Miller-Rabin
√
PeroPero ......Sea Sea nn entero impar de 155 entero impar de 155
dígitos decimales ( dígitos decimales ( ≅≅ 1010155155))
Hay que probar con (Hay que probar con (nn/4) /4)
bases pero (bases pero (nn/4) /4) ≅≅ 1010154154
Test de primalidad de Miller-Rabin
Investigación Investigación de las Bases de las Bases NoNo--TestigosTestigos
Análisis de las bases Análisis de las bases NoNo--TestigosTestigos
Sea Sea nn = 561, el primer Carmichael.= 561, el primer Carmichael.
Las bases NoLas bases No--Testigos para Testigos para n n sonson
{1, 50, 101, 103, 256, {1, 50, 101, 103, 256,
305, 458, 460, 511, 560}305, 458, 460, 511, 560}
Investigación
(I) (I) SecuenciasSecuencias de Miller para 561de Miller para 561
{560, 1, 1}{560, 1, 1}560560{1, 1, 1}{1, 1, 1}511511{1, 1, 1}{1, 1, 1}460460
{560, 1, 1}{560, 1, 1}458458{560, 1, 1}{560, 1, 1}305305{1, 1, 1}{1, 1, 1}256256{{11, 1, 1}, 1, 1}103103
{560, 1, 1}{560, 1, 1}101101{560, 1, 1}{560, 1, 1}5050{1, 1, 1}{1, 1, 1}11
Secuencia de MillerSecuencia de MillerBase NoBase No--TestigoTestigo
Investigación
Sea b ∈ [1,..., n-1], con n y q enteros impares, entonces
b q ≡ 1 mod (n) ⇔
⇔ (n-b) q ≡ (n-1) mod (n).
Teorema 1Teorema 1
Investigación
Sea b ∈ [1,..., n-1], con n y qenteros impares, entonces
b q ≡ (n-1) mod (n) ⇔
⇔ (n-b) q ≡ 1 mod (n).
Corolario 1Corolario 1.1.1
Investigación
Dado n número entero impar,
b es No-Testigo para n
⇔ (n-b) es No-Testigo para n
(usando el método de Miller).
Teorema Teorema 22
Investigación
ResumenResumen
v b es No-Testigo ⇔ (n-b) es No-Testigo
Investigación
∀ n ≥ 3 entero impar, sucede que
las bases 1 y (n-1) siempre son
No-Testigos para n
(usando el método de Miller).
Corolario 2Corolario 2.1.1
Investigación
ResumenResumen
v b es No-Testigo ⇔ (n-b) es No-Testigo
v 1 y (n-1) siempre son No-Testigos
Investigación
1 (n-1)
Por el Teorema 2, tenemos que:
Si partimos el intervalo [1,...,n-1] por la mitad
Investigación
b n-b
Entonces, tenemos igual cantidad de
bases No-Testigos en cada subintervalo∴
∀ n ≥ 3 entero impar, la cantidad
de bases No-Testigos en el intervalo
[1, ..., (n-1)] es par
(usando el método de Miller).
Corolario Corolario 2.22.2
Investigación ∴
ResumenResumen
v b es No-Testigo ⇔ (n-b) es No-Testigo
v 1 y (n-1) siempre son No-Testigos
v La cantidad de No-Testigos es par
Investigación
ResumenResumen
v b es No-Testigo ⇔ (n-b) es No-Testigo
v 1 y (n-1) siempre son No-Testigos
v La cantidad de No-Testigos es par
v Las bases No-Testigos conforman un subgrupo propio de
*nZ
Investigación
(II) (II) SecuenciasSecuencias de Miller para 561de Miller para 561
{560, 1, 1}{560, 1, 1}560560{1, 1, 1}{1, 1, 1}511511{1, 1, 1}{1, 1, 1}460460
{560, 1, 1}{560, 1, 1}458458{560, 1, 1}{560, 1, 1}305305{1, 1, 1}{1, 1, 1}256256{{11, 1, 1}, 1, 1}103103
{560, 1, 1}{560, 1, 1}101101{560, 1, 1}{560, 1, 1}5050{1, 1, 1}{1, 1, 1}11
Secuencia de MillerSecuencia de MillerBase NoBase No--TestigoTestigo49
49
51
51
2
153
153
2
49
Investigación
Teorema 4Teorema 4
].1,...,1[ intervalo
elen Testigos-No bases lascon
espejadasestán ],...,1[ intervalo elen
Miller, de método el utilizandoimpar
entero para Testigos-No bases Las
21
21
−+−
−
n
n
n
n
1 50 103 256 305 458 511 560
101 460
Investigación
ResumenResumenv b es No-Testigo ⇔ (n-b) es No-Testigo
v 1 y (n-1) siempre son No-Testigos
v La cantidad de No-Testigos es parv Las bases No-Testigos conforman un
subgrupo propio de
v Las bases No-Testigos están espejadas
*nZ
Investigación
1 (n-1)
4)1(
4)1(3
de Testigo-No es /
de Testigo es / −
−
<
≥n
n
nbb
nbb
8)1( de Testigo-No es / −< nnbb
Por Rabin sabemos quePor Rabin sabemos que
b n-b
Investigación
Teorema Teorema 55
primo. es número el entonces
,e"concluyent noTest " es respuesta
la casos los en todosy ],[2,...,en
distintas bases con Miller deTest
el utiliza se si impar, entero 9
21-n
81-n
n
n ≥∀
Investigación
ResumenResumenv b es No-Testigo ⇔ (n-b) es No-Testigo
v 1 y (n-1) siempre son No-Testigos
v La cantidad de No-Testigos es parv Las bases No-Testigos conforman un
subgrupo propio dev Las bases No-Testigos están espejadas
*nZ
v [ ] Testigos.-No bases
de menoshay 2,..., intervalo elEn
81-n
21-n
Investigación
Tests Tests PropuestosPropuestos
ResumenResumenv b es No-Testigo ⇔ (n-b) es No-Testigo
v 1 y (n-1) siempre son No-Testigos
v La cantidad de No-Testigos es par
v Las bases No-Testigos conforman un subgrupo propio de
v Las bases No-Testigos están espejadas
*nZ
v [ ] Testigos.-No bases
de menoshay 2,..., intervalo elEn
81-n
21-n
Tests Propuestos
v La brecha más grande de No-Testigos ≤ Log10 (n) + 6
TESTS
Tests Propuestos
Test MillerTest Miller--MásUnoMásUno10) cantIteraciones = 0
15) l = ParteEnteraInferior (Log(10, n)) + 1 + 5
20) b = EnteroAlAzarDentroDelIntervalo (2, ((n-1)/2) - l - 1)
30) Si Testigo(b, n) entonces
40) Declarar a n como compuesto.
50) sino
60) cantIteraciones = cantIteraciones + 1
70) Si (cantIteraciones = (l+1)) entonces
80) Declarar a n como primo
90) b = b +1
100) ir a 30
Toma una base b que pertenezca al intervalo.
Cant. de dígitos de n en base 10, más 5.
Basadose en la Conjetura.
con prob. de error ≤≤ 4 – (ll+1).
Tests Propuestos
Test MillerTest Miller--EvitarNoTestigosEvitarNoTestigosToma la primera base al azar
),(FENT tn
10) Lista = CrearListaVacia()
20) b = EnteroAlAzarDentroDelIntervalo (2, (n-1)/2)
25) cantIteraciones = 0
30) Si Testigo(b, n) entonces
40) Declarar a n como compuesto
50) sino
55) cantIteraciones = cantIteraciones + 1
60) Lista.Agregar (b)
70) Si (cantIteraciones = t) entonces
80) Declarar a n como primo, con prob. error ≤90) b = NuevaBase (Lista)
100) ir a 30
Agrega la base No-Testigo a la lista.
Calcula una nueva base que tenga chance de ser Testigo.
Tests Propuestos
Función: NuevaBaseEntrada: L: Lista de EnterosSalida: c: Entero
1 13 15 48 249
12 14 47 49 100 248 250
3512
1 =−n
47L
47×47 mod(703) = 100
100
c = 100 + 1
vSi c pertenece a la lista, entonces continúa recorriendo la lista.
250
250×250 mod(703) = 636. Espejo(636) = 67
67
n = 703
vSi ya no quedan elementos en la lista, entonces calcula una nueva base con la función EnteroAlAzarDentroDelIntervalo
Test MillerTest Miller--EvitarNoTestigosEvitarNoTestigos
Resultados Resultados ObtenidosObtenidos
Resultados Obtenidos
NNúúmeros Primosmeros PrimosMuestra de 500 números primos de 155 dígitos decimales.
0,2350,23512,87112,87126,82426,82442,13042,13045,71345,71359,07659,076
MillerMiller--EvitarNoTestigosEvitarNoTestigos
--------
38,49538,495--
MillerMiller--MásUnoMásUno
0,2480,24812,45512,45524,69524,69537,48937,48940,50540,50550,15250,152
115050100100150150161161200200
MillerMiller--RabinRabintt
Tiempos en segundos
Resultados Obtenidos
Seudo Primo Seudo Primo ψψ44
12,30312,303
MillerMiller--EvitarNoTestigosEvitarNoTestigos
12,80312,803
MillerMiller--MásUnoMásUno
13,08713,0871616
MillerMiller--RabinRabintt
Tiempos en segundos
Tiempo promedio empleado por los Tests para declarar a ψ4 como compuesto.
Se realizaron 100.000 pruebas para cada Tests.
Resultados Obtenidos
Tras varias ejecuciones, el Test de Miller-Rabin respondió con 16 pruebas, que el seudo primo fuerte Ψ4 era primo.
Lo cual, bajo la hipótesis de la conjetura, nunca hubiera ocurrido si se hubiese utilizado el Método Miller-MásUno
Seudo Primo Seudo Primo ψψ44
I I -- ConclusiónConclusión
Se redujo a la mitad, la
cantidad de bases que deben
ser testeadas, para declarar a
un número n como primo,
sin cometer error.
Conclusiones
Conclusiones
][2,..., 21-n
II II -- ConclusiónConclusiónLa propiedad de espejo, permitió la
reducción del intervalo a en el Test Miller-Rabin, logrando así evitar
que el generador seudo aleatorio devuelva los espejos de bases No-
Testigos ya testeadas.
Algoritmos de clave públicaAlgoritmos de clave públicaν Diffie-Hellman (distribución de claves)
ν RSA (encriptado, firmas digitales)
ES EL ESTÁNDAR INTERNACIONAL DE FACTOν ElGamal (distribución de claves, encriptado)
ν DSA (firmas digitales)
ν La mayor parte basados en uno de estos tres problemas difíciles:– logaritmo discreto:
p, primo: g y M enteros, encontrar x tal que gx = M (mod p)
– factoreo (RSA ?)– knapsack (dado un conjunto de números particulares, encontrar un
subconjunto cuya suma sea N)
Conclusiones
Si se demuestra la Conjetura presentada, entonces el Test
Miller-MásUno, respondería si un número n dado es primo o no, sin
cometer errores, en tiempo computacional aceptable.
IV IV -- ConclusiónConclusión
Conclusiones
Inicialmente las bases NoInicialmente las bases No--Testigos, eran Testigos, eran bases que engañaban al bases que engañaban al TestTest de de MillerMiller--RabinRabin
y solo podían ser acotadas.y solo podían ser acotadas.
Conclusión FinalConclusión Final
Tal como se hizo en los Tal como se hizo en los TestTest presentados.presentados.
Ahora, dadas las propiedades demostradas, Ahora, dadas las propiedades demostradas, estas bases brindan información estas bases brindan información muy muy
relevanterelevante para la construcción de nuevos para la construcción de nuevos TestTest de de PrimalidadPrimalidad. .
MÉTODOS DE ENCRIPCIÓN ASIMÉTRICOS(pueden ser de clave pública)
CLAVE (PÚBLICA)
CLAVE (PRIVADA)
Criptografía de Clave Pública(caso particular de la Asimétrica)
ν Mediante un programa, el usuario genera un PAR de claves. Una es la pública, la otra es la privada (secreta).
ν Si se encripta con una, se desencripta con la otra.
P E D
Kprivada Kpública
CP
P E
Kpública Kprivada
CPD
K*#5Al[#@Y6&(*-8!-U
]fQ1^+jW3!’G&%;{I8=
PRIVADA
PÚBLICA
ENCRIPCIÓN ASIMÉTRICA
ESTAMOS HABLANDO DE CRIPTOGRAFÍA
Resguardo de clave privada
gen. de# al azar
Clave pública
Clave priv.
passphrasesalt clave privadacifrada
salt
almacenam.
3DES
gen. declavesRSA
+
Criptografía Criptografía –– PROTECCIÓN DE LA CLAVE PRIVADA
EL USUARIO ES EL ÚNICO RESPONSABLE DEL
USO (o abuso) DE SU CLAVE PRIVADA.
�CÓMO PROTEGERSE ?
v IDENTIFICACIÓN BIOMÉTRICA (huella digital)
v ALMACENAMIENTO PORTATIL (smartcards, eToken)
RSA (Rivest-Shamir-Adleman) Cada usuario tiene una clave pública y una secreta donde todos los números involucrados son enteros. El algoritmo es el siguiente:
viceversao
),( pública lay ),( es privada clave La 5)
)! única esy (existe 1))(mod(.
modularecuación la desolución ,Calcular 4)
1))(,( que talElegir )3
)1).(1()( ,.Calcular )2
y distintos primos dosElegir 1)
ndnc
ndc
d
ncMCDc
q-p-nqpn
qp
=
===
φ
φφ
Para encriptar un mensaje se fraccionael mismo en bloques de bits de longitudM tal que 1 ≤ ≤M N y se calcula
M M NC1 = mod( )
Para descifrar el mensaje el destinatario(que es el único que conoce D) calcula
M N MD1 mod( ) =
Ejemplo: P = 127 , Q = 103 , N = 127*103 = 13081, φ (N) = (P - 1)*(Q - 1) = 12852 Elegimos C = 59. Entonces , C*D mod(φ (N)) = 59*D mod (12852 ) La soluc ión es D = 1307. Si el problema es transmit ir la letra B usamos M = 2 . M M NC
1 = m o d ( ) = 2 13081 100415 9 mod( ) = que es lo que se transmite
El que recibe calcula
2)13081mod(10041)mod( 13071 ==NM D
Normalmente se dividen los mensajesen bloques cuya longitud es la mayorpotencia de 2 menor que el númeroprimo utilizado, aunque existenconsideraciones de precisión numérica -dependiendo de la cantidad de bitsutilizados en la implementación - quepueden llevar a disminuír dicho valor.
* * * CLAVE PRIVADA 2048-bits* * *
D:
823427215415179540996660748057165507769220516579261219010182700597172417670894688448283849593286404387451417422439873537632752733928350383282961331428731652392657044591361450787096368126806133948396536032162839334957610749156560127927590793349351059161171930991318551977817134046321507469378640661481
N:
8222324287592170447555919370286950127846979804460275823170246829457482033497561394766141717298129983040589962912649393292598462176629688322257534874632993295939108416083069703888479642832829546767592831197497120145627432463138676997978739687715769863203330885138581401336977078858487734666726832360766535371291701447661076290721473571329882334440518365848328490232405303137734345415362896310526096803008806147665716708253161197711890775186754730970901045245320329988176204169500715588781409707253920446577655161390929141215981556472427179341954033498402299627664976510410267545088131687504361360947849966613183169592687
611 dígitos
306 dígitos
* * * CLAVE PUBLICA 2048-bits* * *
C:
1216743048675132547884001893569666736444779915636173016941029370266200733361687234443454606479727504296448967701581418117851658881441385399458669269571606126460137729360603360365188927389121198072208925739935915077851888929075598115517486359359769591906465393318547932136435935931458826087424416340626832545607788784369332552874835733444682524962748732501260313022864648301148292301314444598314294860536319449733480189911490978506931790887648005887281898044752649253577780745208937848760408181503258886084499856438027451052247952262735932103716496433110531364988774412929122162067753192022781500856868149620659341521641
610 dígitos
Encriptemos el siguiente mensaje:
Prueba de RSA con longitud 2048
El resultado de aplicarle RSA con la clave privada a un mensaje ES UN NÚMERO. En nuestro caso resulta:
2479195648819295407143322833053804131194707960990284937974470330679917402920772476959589733849643307721385871820708011147889218141950242124542126073884616970765169869470391134634580659511193405369292888810418759581837134902304386647067193658645247779225224731306646039300162029845973883599058813702117167004849132455060997010179437174430304215170940646697769416968926265441302199577647780910979866285964394346613330024058616673003852093468576207584550298876566733481855127983832063457418448771217341424644235222380209786614800001985635196358713801794568743227772528042026547443645439795994825048808962961821623451730376
Si a este número le aplicamos la CLAVE PUBLICA del emisor obtenemos el mensaje original:
Prueba de RSA con longitud 2048
Por lo tanto este es un mensaje firmado DIGITALMENTE por el emisor, pues es la única persona que conoce la CLAVE PRIVADA utilizada para encriptar.
N = p.q forma parte de la clave pública. Si se lo puede factorizar entonces se quiebra RSA, aunque ambos problemas no son equivalentes (Fiat-Shamir crearon un algoritmo para el cual quebrar es equivalente a factorizar)
Sin embargo los ataques de tipo “matemático” conocidos son todos intentos de factorizar N (hay ataques sobre los protocolosutilizados).
Desafíos actuales
Por ejemplo el premio para factorizar RSA 576 =
188198812920607963838697239461650439807163563379417382700763356422988859715234665485319060606504743045317388011303396716199692321205734031879550656996221305168759307650257059
es de 10.000 U$S y para RSA 2048 es de 200.000 U$S
A2F508DE091AB30135F2
GENERACIÓN DE FIRMA DIGITAL
HASHING
PÁGUESE A HUGO SCOLNIKU$S 12.000.000
Bill Gates
CLAVE(PRIVADA)
#3Ds@*j0{28z!^}Tc)%4+<6FD
A2F508DE091AB30135F2
VERIFICACIÓN DE FIRMA DIGITAL
RECALCULAR HASHING
PÁGUESE A HUGO SCOLNIKU$S 12.000.000
Bill Gates
CLAVE(PÚBLICA)
#3Ds@*j0{28z!^}Tc)%4+<6
A2F508DE091AB30135F2
SON IGUALES ?
FD
Autoridades certificantes y certificados digitales. Normas a cumplir.
Criptografía Criptografía –– Concepto de certificado digital X.509 versión 3
Certificados de clave pública• Objeto: acreditar una relación entre una identidad
(y/o sus atributos) y una clave pública.
• Un certificado de clave pública es una estructura de datos que contiene
– el nombre de un usuario (el “subject”),– su clave pública,
– el nombre de una entidad (el “issuer”, A.C.) que garantiza que la clave pública está asociada al nombre.
• Estos datos son firmados criptográficamente usando la clave privada del “issuer” (A.C.)
Criptografía Criptografía –– CLASES DE CERTIFICADOS DIGITALES
�CLASE 1: certif de EMail
�CLASE 2: certif ID personal ante
terceros (DNI, Domicilio) apto E-
Commerce
�CLASE 3: institucional, vinculado
a la empresa o institución que se
pertenezca
Criptografía Criptografía –– certificado digital X.509 versión 3
Identidad: Nombres distinguibles(DN :distinguished names)
• Rec. ITU-T serie X.500X500, X501, X.509, X.511,X.518, X.519,X.520,
X.521
• Country name– C = "AR".
• State or Province Name– S = “Córdoba".
• Locality Name– L = “La Falda“.
• Common name– CN = “Ing. Civil Juan Jorge Gomez“.
Criptografía Criptografía –– certificado digital X.509 versión 3
X.520 - Tipos de atributosATTRIBUTE TYPES• A Aliased Object Name *
• Authority Revocation List
• B Business Category
• C CA Certificate
• Certificate Revocation List
• Common Name• Country Name• Cross Certificate Pair
• D Description
• Destination Indicator
• F Facsimile Telephone Number
• I International ISDN Number
• K Knowledge Information
• L Locality Name
• M Member
• O Object Class *
• Organization Name• Organizational Unit Name
• Owner
ATTRIBUTE TYPES• P Physical Delivery Office Name
• Post Office Box
• Postal Address
• Postal Code
• Preferred Delivery Method
• Presentation Address
• R Registered Address
• Role Occupant
• S Search Guide
• See Also
• Serial Number
• State or Province Name• Street Address
• Supported Application Context
• Surname
• T Telephone Number
• Teletex Terminal Identifier
• Telex Number
• Title
• U User Certificate
• User Password
• X X.121 Address
Criptografía Criptografía –– La tecnología PKI – AUTORIDAD CERTIFICANTE
Autoridades Certificantes (CA´s)• Función: certificación de firmas
requiere
– verificación de identidad (procedimiento administrativo)
– almacenamiento de certificados y numeración
– mantenimiento de CRLs
– publicación de directorios de claves públicas
– confiabilidad / disponibilidad
– reconocimiento / reputación
• setup de una CA: requiere equipamiento e instalaciones especiales, procedimientos y mecanismos para asegurar trusted paths, personal seleccionado especialmente, almacenamiento seguro de la clave privada de la CA
Criptografía Criptografía –– La tecnología PKI – CADENA DE CONFIANZA
Cadena de confianzaSolaris es el mejor sistema operativo
Firmado: Scott McNeally
Certifico que la firma que antecede es válida y corresponde a Scott McNeallyFirmado: George W. Bush
Certifico que la firma que antecede es válida y corresponde a George W. Bush
Firmado: Bill Gates (root key)
Criptografía Criptografía –– La tecnología PKI - CR
Solicitud de certificado: PKCS#10Certificate Request:
Data:Version: 0 (0x0)Subject: C=AR, SP=Buenos Aires, L=Cap. Federal,
O=Firmas Digitales SRL., OU=Investigación y Desarrollo, CN=Pedro Hecht, [email protected]
Subject Public Key Info:Public Key Algorithm: rsaEncryptionPublic Key: (1024 bit)
Modulus:00:b7:96:f9:23:50:66:cf:ff:a1:3d:f9:91:e3:e3:...e3:61:98:a2:71:34:78:06:ec:f9:b4:cd:5c:8f:4b:c0:97:e2:ac:2a:f6:23:c5:0d
Exponent: 65537 (0x10001)Attributes:
a0:00Signature Algorithm: md5withRSAEncryption
34:57:8a:c2:57:02:cc:41:d7:0e:f6:c4:00:7f:7e:d9:b4:36:...61:59:51:2d:a3:74:c7:57:4e:9d:2a:43:9c:79:e6:4a:cf:b1:3c:32
Criptografía Criptografía –– La tecnología PKI – Cert X.509
Certificado emitido por la CA: PKCS#6
Certificate:Data:
Version: 0 (0x0)Serial Number: 1 (0x1)Signature Algorithm: md5withRSAEncryptionIssuer: C=AR, SP=Buenos Aires, L=Capital Federal,
O=Certisur SA, OU=Depto. Certificaciones, CN=Hugo Scolnik, [email protected]
ValidityNot Before: Oct 9 02:47:53 1996 GMTNot After : Oct 9 02:47:53 1997 GMT
Subject: C=AR, SP=Buenos Aires, L=Cap. Federal, O=Firmas Digitales SRL., OU=Investigación y Desarrollo, CN=Pedro Hecht, [email protected]
Subject Public Key Info:Public Key Algorithm: rsaEncryption
Modulus:00:b7:96:f9:23:50:66:cf:ff:a1:3d:f9:91:e3:e3:...e3:61:98:a2:71:34:78:06:ec:f9:b4:cd:5c:8f:4b:c0:97:e2:ac:2a:f6:23:c5:0d
Exponent: 65537 (0x10001)Signature Algorithm: md5withRSAEncryption
8b:8e:20:1e:32:02:67:c7:ae:df:50:e9:21:17:48:7b:80:d5: f4:b8:ff:d9:3a:11:3b:49:17:b6 ...
Criptografía Criptografía –– La tecnología PKI – Ej Cert X.509v3
certificado digital x.509v3(formato MIME base 64)
-----BEGIN CERTIFICATE-----MIICmTCCAkMCAQEwDQYJKoZIhvcNAQEEBQAwgbYxCzAJBgNVBAYTAkFSMRAwDgYDVQQIEwdOZXVxdWVuMRowGAYDVQQHExFQaWVkcmEgZGVsIEFndWlsYTEiMCAGA1UEChMZVHJvb2NoIENlcnRpZmljYWRvcywgTHRkLjEfMB0GA1UECxMWRGVwdG8uIENlcnRpZmljYWNpb25lczERMA8GA1UEAxMIWW8tWW8gTWExITAfBgkqhkiG9w0BCQEWEnlveW9AdHJvb2NoLmNvbS5hcjAeFw05NjEwMDkwMjQ3NTNaFw05NzEwMDkwMjQ3NTNaMIGzMQswCQYDVQQGEwJBUjEVMBMGA1UECBMMQnVlbm9zIEFpcmVzMRUwEwYDVQQHEwxDYXAuIEZlZGVyYWwxJTAjBgNVBAoTHENvbnN1bHRvcmEgU2FuIEdhYnJpZWwgUy4gQS4xGDAWBgNVBAsTD0RlcHRvLiBDb250YWJsZTETMBEGA1UEAxMKSnVhbiBQZXJlejEgMB4GCSqGSIb3DQEJARYRanBlcmV6QGNzZy5jb20uYXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALeW+SNQZs//oT35kePjcMHxSMkNXdhyS/wYogIAqALWGHoVYi8nqbrHSk+e3Ldpk6UmiuDz6hR3I8j7C50J4vfJ9KngpMjKbFZafHEkDufF5DOaUVF/08v5qM7+cbUC8xgXFDHvytSk42GYonE0eAbs+bTNXI9LwJfirCr2I8UNAgMBAAEwDQYJKoZIhvcNAQEEBQADQQCLjiAeMgJnx67fUOkhF0h7gNW3nW0HyA+szY5O5VdZQv5CBN9E/sm7FWpcWwWX4FTPL4WCRUf0uP/ZOhE7SRe2-----END CERTIFICATE-----
Criptografía Criptografía –– La tecnología PKI - CONSIDERACIONES
Pero..
• Estos mecanismos sólo “garantizan” la integridad del mensaje y la relación entre un DN (distinguished name) y el poseedor de una clave privada.
• La confianza se translada a la autoridad certificante (AC)
• El sistema requiere la consulta online de Listas de Certificados Revocados (CRLs)
• ATENCION!!!!!! La filtración inadvertida de una clave privada no puede distinguirse de una firma verídica.
• El firmante puede negar la firma denunciando fraudulentamente su pérdida. - Control por Timestamping
Modelos de e-commerce seguro.
Criptografía Criptografía –– EE--COMMERCECOMMERCE
B-to-B93%
B-to-C7%
�E-COMMERCE: transacciones en Internet
�basado en la confianza y la seguridad mutuas
�BUSINESS-TO-BUSINESS: 125.000 Millones U$S
�BUSINESS-TO-CONSUMER: 9.000 Millones U$S
�REVENUES MUNDIALES E-COMMERCE AÑO 2000
INTERNET• es abierta• es universal• es económica• es insegura
e-Commerce• requiere confidencialidad• requiere autentificación• requiere control de integridad• requiere simplicidad• es el futuro
pero la realidad actual muestra el
divorcio entre ambos....
[01.01.09] Li [Quit Crew] UCES Edu (www.uces.edu.ar)[01.01.10] Lr [DevilSoul] UTN Edu (AR) (linus.frm.utn.edu.ar) 01. [01.02.08] NT [Cr1m3 0rg4n1z4d0] www.ssn.gov.ar (www.ssn.gov.ar)
[01.02.13] NT [Cr1m3 0rg4n1z4d0] M #2 Sernah (AR) (www.sernah.gov.ar) 01.[01.02.27] NT [OSH] #2 Argentina Department of Finance, Import Export and Immigration
01.03.02] NT [Anti-401] M www.muninqn.gov.ar (www.muninqn.gov.ar) [01.03.05] NT [Zeta_Blok] Teveco-net (www.teveco.com.ar) [01.03.29] Ir [quit crew] M Keytech (AR) (www.keytech.com.ar)[[01.04.14] NT [USDL] #2 UNT Edu (www.csnat.unt.edu.ar)
[01.04.14] NT [USDL] M Facultad de Ciencia Politica y RR.II. - UNR (www.fcpolit.unr.edu.ar) [01.04.18] NT [cr1m3 0rg4n1z4d] M Arzbaires Edu (www.arzbaires.edu.ar)
[01.04.19] NT [Cr1m3 0rg4n1z4d] M Austral Edu (www.austral.edu.ar) [01.04.19] NT [cr1m3 0rg4n1z4d0] www.agrarias.unca.edu.ar (www.agrarias.unca.edu.ar)
[01.04.24] NT [hex] Canal5 (AR) (www.canal5.com.ar) 200.47.45.6[01.04.25] Sc [Supreme Entity] C Cable Dos Net (www.cabledosse.com.ar) 200.50.169.50 [01.04.26] NT [tty0] Instituto Nacional de Tecnologia Argentina (www.inta.gov.ar) [ [ [01.05.04] 2k [Prime Suspectz] McDonalds Argentina (www.mcdonalds.com.ar)
[01.05.06] IR [Prime Suspectz] Instituto Nacional de Educación Tecnológica) [01.05.06] Lr[br0k3d] Boldt (www.boldt.com.ar) 200.47.10.228
[01.05.07] NT [JoeGoeL] (www.asesorbaires.gov.ar) 200.51.67.114[01.05.07] NT [Ne0tz] Concordia (AR) (www.concordia.com.ar) 200.3.119.193[01.05.08] IR [WFD] C INET Edu (AR) (www.inet.edu.ar) 168.83.21.35[01.05.10] IR [Prime Suspectz] Revista Electrónica del Derecho de las TelecomunicacionesFuente: http://www.attrition.org/mirror/attrition/ar.html
la solución es...
...aplicar tecnología PKI
QUÉ ES PKI?(Public Key Infraestructure)
q No es un producto ni un servicio.
q Es una capacidad adquirible para generar tráfico de
información confidencial inviolable en redes abiertas
e inseguras (Internet/Intranet/Extranet), usando
criptografía de clave pública.
MODELO I -LA SOLUCIÓN B2C ES....
INTERNET
USUARIO
SERVER
certifX.
509
USO:• SSL sin autenticación cliente (form-filling)
Autenticación del Servidor con Certificado Digital
MODELO II - SOLUCIÓN INTEGRAL
INTERNET
USUARIO
SERVER
certifX.509
USO:•SSL con autenticación cliente•e-Mail seguro•Transacciones seguras(form-signing)•Túnel VPN (IPsec)
certifX.509
Autenticación del Servidor y del Cliente con Certificados Digital
Y SE POTENCIA CON ALMACENAMIENTO PORTÁTIL Y CAPA BIOMÉTRICA......
INTERNET
USER HOSTING
SERVER
certifX.509USO:
•SSL con autenticación cliente•e-Mail seguro•Transacciones seguras(form-signing)•Túnel VPN (IPsec)•Solución móvil
USB
smart certifX.509
Criptografía Criptografía – CONSIDERACIONES DEL ENROLL
� Los procesos estándar de Enroll generan claves
débiles (RSA-512 bits) y certificados que negocian
suites débiles (RC2-40 bits). Aún las CSP
enhanced (RSA-1024 bits/RC2-128 bits) no logran
la máxima seguridad posible.
� Para aplicaciones comerciales inviolables hay
que usar CSP especiales que generen claves
muy fuertes (RSA-2048 bits) y certificados que
negocien suites muy fuertes (3DES-168 bits)
Usar un CSP fuertepara aplicar en ....
ν Secure E-Mailing ν Secure Form-Signingν SSL v3 point-to-point authenticationν VPN (IPsec) point-to-point tunnel (solución B2B)ν Client Hosting (soluciones móviles)ν Barreras de alta seguridad (capa biométrica,
autenticación smartcard o eToken, etc)
Criptografía Criptografía ––REDES VPN
Certificado IPsec
VPN (virtual private network)
� INTERNET Certificado IPsec
Paquetes
encriptados
INTERNET
VPN
Túnel IPSec
clientes
Distribuidor A
VPN
clientes
Distribuidor B
VPN
clientes
Distribuidor C
VPN
CASA CENTRAL
Nodo IPSec+ Firewall+ Proxy
Nodo IPSec+ Firewall+ Proxy
RED PRIVADA VIRTUAL
(VPN-IPsec)
aplicación VPN al e-Commerce (B2B)
Los nodos deben tener:+Firewall (Packet Filtering)+Proxy Server
Métodos de autenticación para el e-commerce.
e-commerce modelo II requiere
autenticar clientes remotos
autenticaciónfuerte =
algo que Ud. tiene+
algo que Ud. sabe
y básicamente esto hace la firma digitaly la firma electrónica.....
firma digital yfirma electrónica
+Con
inversiónde prueba
+--firmaelectrónica
++++firmadigital
norepudio
certificación de origen
Integri dad
Confidencialidad
técnicas de autenticación fuerte
• certificado digital X.509(firma digital)
• soportes físicos portátiles (firma digital)
• métodos biométricos (firma digital o electrónica)
• calculadoras token (firma electrónica)• nuevas soluciones token de bajo costo
(firma electrónica)
soportes físicos portátilesesta solución permite almacenar claves privadas y certificados digitales en un medio semi-portátil(requiere interfases y/o drivers instalados)
métodos biométricos se pueden usar combinados con la tecnología PKI para proteger claves privadas o independientemente para autenticar al cliente (firma electrónica)(requiere dispositivos lectores y drivers instalados)
Calculadoras tokense logra firma electrónica a través del cálculo de secuencias numéricas
Es 100% portátil pero posee desventajas en cuanto a su costo, duración de batería
y desincronización
se ha desarrolladoFIRMA ELECTRÓNICA
por medio de un miniCD
nuevas soluciones token de bajo costo
100% portatil, seguro y muy económico
con un soporte muy económico y portátil,un mini CD(que se ejecuta en cualquier PC sin necesidad de instalar)
combinando un método matemático a prueba de hackers...• generador de secuencias numéricas al azar• clave de 1024-bits• genera 2128 secuencias (para 232 personas)• matemáticamente inquebrable• de altísima velocidad operativa -7 ciclos CPU/byte (50 MB / seg en una Pentium I)•sólo se repite cada 10.000 años•cambia su valor cada minuto•se sincroniza automáticamente con un reloj atómico GMT en EEUU
CD Card deautenticación fuerteEl usuario lleva su
miniCD en su billetera...
Inserta su miniCD en cualquier PC sin necesidad de instalar drivers o usar interfases, calculando el valor
de su firma electrónica válida por 1 minuto... ...la que es controlada desde un
centro de autenticación
ν Autenticación fuerte de 2 factores (algo que Ud. sabe+ algo que Ud. tiene)ν Basado en un algoritmo inquebrable ( Cryptoflash 1024 bits) personalizado para
cada usuario en forma particularν La secuencia se repite cada 10.000 añosν Sincronización automática on-line con un reloj atómico GMT
el nuevo sistema defirma electrónicapaso a paso
BUSINESS CASE
cada cliente recibe un miniCD y una tarjeta raspable con una contraseña personal que deberá memorizar
maria644
Nro de serie 5233
el cliente toma su mini CD y lo pone en cualquier PC(casa, trabajo, locutorio,...)
no necesita instalar nada, automáticamente se abre(en 15 segundos) el programa defirma electrónica
ingresa su contraseña ingresa su contraseña personal y da personal y da <enter><enter>
se obtiene la firma electrónica(el número que varía de minuto en minuto y es único para ese cliente)
olvídese del programa: se cierra sólo a los 30
segundos. LISTO!!
no necesitará memorizar ese número, se copió automáticamente a la memoria....
bastará “pegarlo” en el casillero destinado de la página activa del server
(use el botón derecho del mouse)
un componente activeX se encarga de calcular la secuencia personal
de cada miniCD
la página hace el resto....
EL SERVIDOR RECALCULA EL NÚMERO PARA ESE CLIENTE, SI ES IGUAL AL QUE COMPLETÓ EL OPERADOR CON SU MINI CD SE DA FÉ DE LA IDENTIDAD DE ESA PERSONA...
y autoriza el ingreso....
la Firma Electrónica es a prueba de hackers
aunque alguien“escuche” el número...
...no podrá reutilizarlo ni adivinar cuál será el
próximo...
DISCUSIÓN CON LOSPARTICIPANTES