You are on page 1of 19

Asymmetric

PublicKey
Cryptosystems
Jose David Fuentes Olivares
Integracin de Tecnologas
Trabajo individual

ndice

1. Introduccin
1.1 Criptografa simtrica vs asimtrica
2.2 Criptosistemas asimtricos de clave pblica
3.3 Principales algoritmos
2. Intercambio de claves DH
3. RSA
3.1 Encriptacin RSA
3.2 Firma digital con RSA

Criptografa
simtrica vs asimtrica
Criptografa simtrica > una clave compartida
Criptografa asimtrica > uso de una clave pblica y otra privada
La criptografa simtrica es ms insegura ya que el hecho de pasar la clave es
una gran vulnerabilidad.
Por otro lado, se puede cifrar y descifrar en menor tiempo del que tarda la
criptografa asimtrica.
Se usar una u otra dependiendo del uso que se pretenda dar al algoritmo.

Criptosistemas
asimtricos de clave
pblica
La criptografa de clave pblica surgi en 1976, cuando Whitefield Diffie y Martin
Hellman propusieron el concepto innovador de un sistema de intercambio de
claves exponencial.
Desde 1976, numerosos algoritmos de clave pblica han sido propuestos, pero la
mayora han sido rotos, o bien no pueden ser llevados a cabo en la prctica
Slo hay en la actualidad unos pocos algoritmos seguros y realizables, de los
cuales algunos son adecuados para encriptacion y otros para firma digital.
RSA, ElGamal, Schnorr y ECC son los nicos algoritmos adecuados para ambos
propsitos.

Principales
algoritmos
Diffie-Hellman
RSA
DSA
ElGamal
Criptografa de curva elptica
Schnorr

DHKE

DHKE
DHKE tiene dos partes:
1. El protocolo de preparacin set-up
2. El protocolo principal
El protocolo de preparacin puede ser realizado por :
Una entidad de confianza, la cual elige los parmetros pblicos que son
necesitados para el intercambio de claves,
Los mismos participantes en el intercambio de claves los que generen dichos
parmetros pblicos.
El set-up protocol consiste en los siguientes pasos:
1. Elegir un primo grande p
2. Elegir un entero alfa entre 2 y p-2
3. Publicar p y alfa

Una vez que las partes participantes conocen los parmetros pblicos p y alfa
calculados en la fase de set-up, pueden generar una clave secreta compartida k con
el siguiente protocolo de intercambio de claves:

Las entidades calculan la misma clave KAB, que es ahora la clave de sesin
compartida entra ambos.
Pueden usar la clave de sesin para establecer una comunicacin segura entre
ambos, por ejemplo, ellos pueden usar la clave KAB como clave de sesin para un
algoritmo simtrico AES o 3DES.

Ejemplo con pequeos nmeros:


Dados p=29 y alfa=2, el protocolo procede de la siguiente forma:

Ambas partes calculan el mismo KAB, por lo que podr ser usado como una
clave compartida, por ejemplo, como una clave de sesin para una
encriptacin simtrica.

RSA

RSA
Es actualmente el esquema de criptografa asimtrica ms usado.
Se usa con dos fines:
1. Encriptacin de pequeas piezas de datos (habitualmente para el
transporte de claves)
2. Firmas digitales (certificados digitales en internet)
Para encriptacin de datos se prefiere usar algoritmos simtricos, como AES.
RSA, es usado para asegurar el intercambio de claves en algoritmos simtricos.
La funcin fundamental de sentido nico de RSA (por lo que no se puede
romper), es el problema de factorizacin de enteros, ya que se puede multiplicar
dos nmeros primos grandes fcilmente, pero factorizar el resultado es muy
difcil.

Encriptacin y
desencriptacin
Ambas son hechas en anillos de enteros Zn, realizando las
operaciones en aritmtica modular.
Encriptacin: Dada la clave pblica (n,e)=kpub y el texto plano x, la
funcin de encriptacin es la siguiente: k=ekpub(x)=x^e mod n
Desencriptacion: Dada la clave privada d=kpr y el texto cifrado y, la
funcin de desencriptacin es: x= dkpr(y) = y^d mod n
Tanto x,y,n as como d deben ser nmeros muy grandes en la prctica,
normalmente como mnimo de un tamao de 1024 bits o superior.

Generacin de claves
Los pasos para la generacin de clave kpub , kpr son:
1. Elegir dos primos grandes p y q
2. Calcular n =p * q
3. Calcular phi(n)=(p-1)*(q-1)
4. Elegir el exponente pblico e, que sea un numero comprendido entre
phi(n)-1 y que adems gcd(e, phi(n))=1, es decir que e y phi(n) sean primos
relativos.
5. Calcular la clave privada d=2^-1 mod phi(n)

Ejemplo con pequeos


nmeros

Firmas digitales con


RSA
Con la firma digital proporcionamos los servicios de:
1. Confidencialidad: la informacin es guardada en secreto
2. Integridad: los mensajes no pueden ser modificados durante la transmisin.
3. Autenticacin: El emisor del mensaje es autenticado, por lo que el receptor
est seguro de que le manda el mensaje quien le dice ser.
4. No repudio: El emisor del mensaje no puede haber sido el autor de tal
mensaje.
El esquema de firma digital RSA, est basado en la encriptacin RSA, por lo
que su seguridad se basa en la dificultad de factorizar un producto de 2 primos
grandes.

Los roles entre clave pblica y privada en relacin con el esquema de


encriptacin son intercambiados, ya que para firmar y desencriptar se usa la
clave privada y para cifrar la clave pblica.
En este caso, en el lado de desencriptado, la clave privada es usada y para
verificacin la pblica.

Ejemplo
Bob quiere mandar el mensaje x=4 a Alice. En este caso Bob es quien genera
las claves (el mismo que firma, a diferencia del esquema de encriptacin, que
genera las claves el receptor del mensaje) siguiendo los mismos pasos que para
encriptar un mensaje.

Bibliografa
Wireless Mobile Internet Security.
Man Young Rhee

Understanding Cryptography.
Christof Paar, Jan Pelzl

Gracias

You might also like