Sunteți pe pagina 1din 4

El sistema RSA

El primer algoritmo de cifrado de clave pblica (cifrado asimtrico) fue desarrollado por R.
Merckley M. Hellman en 1977. Gracias al trabajo de los famosos analistas
criptogrficos Shamir, Zippel yHerlestman, se qued obsoleto rpidamente.
En 1978 apareci el algoritmo de clave pblica creado por Rivest, Shamir y Adelman (de aqu
el nombre RSA). Este algoritmo todava se usaba en 2002 para proteger los cdigos de las
armas nucleares de Estados Unidos y Rusia.

Cmo funciona RSA


El funcionamiento del criptosistema RSA se basa en la dificultad para factorizar grandes
nmeros enteros.
Digamos que p y q son dos nmeros primos, y d un nmero entero tal que d se factoriza
en (p-1)*(q-1)). De esta manera, el terceto (p,q,d) representa la clave privada.
As, la clave pblica es un doblete (n, e) creado con la clave privada a travs de las siguientes
transformaciones:
n = p * q e = 1/d mod((p-1)(q-1))

Digamos que M es el mensaje a enviar. El mensaje M necesita factorizarse en la clave n. El


descifrado se basa en el teorema de Euler, que estipula que si M y n se factorizan, entonces:
M

= 1 mod(n)
Phi(n) ser la funcin totient y, en este ejemplo, tendra un valor de (p-1)*(q-1).
Por lo tanto, es necesario que M no sea un mltiplo de p, q o n. Una solucin sera dividir el
mensaje M en bits Mi de manera que la cantidad de nmeros en cada Mi sea estrictamente
inferior a la de p y q. Esto supone entonces que p y q son grandes, que es lo que sucede en la
prctica ya que el principio de RSA yace en la dificultad de encontrar p y q en un perodo de
tiempo razonable cuando se conoce n; esto asume que p y q son grandes.
phi(n)

En la prctica...
Supongamos que un usuario (llamado Bob) quiere enviar un mensaje M a una persona
(llammosla Alice). Simplemente necesita obtener la clave pblica de Alice (n,e) y luego
calcular el mensaje cifrado c:
c = M mod(n)
e

Luego, Bob enva el mensaje c a Alice, quien es capaz de descifrarlo con su clave privada
(p,q,d):
M=M

e*d

mod(n) = c mod(n)
d

DES (Estndar de Cifrado de Datos), descifrado de


la clave secreta
El 15 de mayo de 1973, el NBS (National Bureau of Standars, en castellano: Agencia Nacional
de Normalizacin) hoy en da denominada NIST (National Institute of Standars and
Technology, en castellano: Instituto Nacional de Normalizacin y Tecnologa), hizo un
llamamiento en el Federal Register (el equivalente en Espaa del Boletn Oficial del
Estado) para la creacin de un algoritmo de cifrado que cumpliera con los siguientes
requisitos:

ofrecer un alto nivel de seguridad relacionado con una pequea clave utilizada para
cifrado y descifrado

ser comprensible

no depender de la confidencialidad del algoritmo

ser adaptable y econmico

ser eficaz y exportable

A finales de 1974, IBM propuso "Lucifer", que gracias a la NSA (National Standard Agency, en
castellano: Agencia Nacional de Seguridad) fue modificado el 23 de noviembre de 1976,
convirtindose en DES (Data Encryption Standard, en castellano: Estndar de Cifrado de
Datos). El DES fue aprobado por el NBS en 1978. El DES fue estandarizado por
el ANSI (American National Standard Institute, en castellano: Instituto Nacional Americano de
Normalizacin) bajo el nombre de ANSI X3.92, mas conocido como DEA (Data Encrytion
Algorithm, en castellano: Algoritmo de Cifrado de Datos).

Principio de funcionamiento del DES


Se trata de un sistema de cifrado simtrico por bloques de 64 bits, de los que 8 bits (un byte)
se utilizan como control de paridad (para la verificacin de la integridad de la clave). Cada uno
de los bits de la clave de paridad (1 cada 8 bits) se utiliza para controlar uno de los bytes de la
clave por paridad impar, es decir, que cada uno de los bits de paridad se ajusta para que
tenga un nmero impar de "1" dentro del byte al que pertenece. Por lo tanto, la clave tiene una
longitud "til" de 56 bits, es decir, realmente slo se utilizan 56 bits en el algoritmo.
El algoritmo se encarga de realizar combinaciones, sustituciones y permutaciones entre el
texto a cifrar y la clave, asegurndose al mismo tiempo de que las operaciones puedan
realizarse en ambas direcciones (para el descifrado). La combinacin entre sustituciones y
permutaciones se llama cifrado del producto.

La clave es codificada en 64 bits y se compone de 16 bloques de 4 bits, generalmente


anotadas dek1 a k16. Dado que "solamente" 56 bits sirven para el cifrado, puede haber hasta
256 (o 7.2*1016) claves diferentes!

El algoritmo DES
Las partes principales del algoritmo son las siguientes:

fraccionamiento del texto en bloques de 64 bits (8 bytes),

permutacin inicial de los bloques,

particin de los bloques en dos partes: izquierda y derecha,


denominadas I y Drespectivamente,

fases de permutacin y de sustitucin repetidas 16 veces (denominadas rondas),

reconexin de las partes izquierda y derecha, seguida de la permutacin inicial


inversa.

S-ar putea să vă placă și