La Criptografía Algebra
La Criptografía Algebra
La Criptografía Algebra
Funciona a
travs de la utilizacin de cifras o cdigos para escribir algo
secreto en documentos y datos confidenciales que circulan en
redes locales o en internet. Su utilizacin es tan antigua como la
escritura. Los romanos usaban cdigos para ocultar sus proyectos de guerra
de aquellos que no deban conocerlos, con el fin de que slo las personas
que conocan el significado de estos cdigos descifren el mensaje oculto.
Qu es la criptografa?
La palabra criptografa es un trmino genrico que describe todas las tcnicas que
permiten cifrar mensajes o hacerlos ininteligibles sin recurrir a una accin especfica. El
verbo asociado es cifrar.
La criptografa se basa en la aritmtica: En el caso de un texto, consiste en transformar las
letras que conforman el mensaje en una serie de nmeros (en forma de bits ya que los
equipos informticos usan el sistema binario) y luego realizar clculos con estos nmeros
para:
El hecho de codificar un mensaje para que sea secreto se llama cifrado. El mtodo inverso,
que consiste en recuperar el mensaje original, se llama descifrado.
Las claves simtricas: son las claves que se usan tanto para el cifrado como para el
descifrado. En este caso hablamos de cifrado simtrico o cifrado con clave secreta.
Las claves asimtricas: son las claves que se usan en el caso del cifrado asimtrico
(tambin llamado cifrado con clave pblica). En este caso, se usa una clave para el
cifrado y otra para el descifrado.
La criptologa es la ciencia que estudia los aspectos cientficos de estas tcnicas, es decir,
combina la criptografa y el criptoanlisis.
Criptoanlisis
El criptoanlisis consiste en la reconstruccin de un mensaje cifrado en texto simple
utilizando mtodos matemticos. Por lo tanto, todos los criptosistemas deben ser resistentes
a los mtodos de criptoanlisis. Cuando un mtodo de criptoanlisis permite descifrar un
mensaje cifrado mediante el uso de un criptosistema, decimos que el algoritmo de cifrado
ha sido decodificado.
Generalmente, se distinguen cuatro mtodos de criptoanlisis:
Wikipedia):[[
Historia de la criptografa
De Wikipedia, la enciclopedia libre
Saltar a: navegacin, bsqueda
La historia de la criptografa se remonta a miles de aos. Hasta dcadas recientes, ha sido
la historia de la criptografa clsica los mtodos de cifrado que usan papel y lpiz, o
quizs ayuda mecnica sencilla. A principios del siglo XX, la invencin de mquinas
mecnicas y electromecnicas complejas, como la mquina de rotores Enigma,
proporcionaron mtodos de cifrado ms sofisticados y eficientes; y la posterior
introduccin de la electrnica y la computacin ha permitido sistemas elaborados que
siguen teniendo gran complejidad.
La evolucin de la criptografa ha ido de la mano de la evolucin del criptoanlisis el
arte de "romper" los cdigos y los cifrados. Al principio, el descubrimiento y aplicacin del
anlisis de frecuencias a la lectura de las comunicaciones cifradas ha cambiado en
ocasiones el curso de la historia. De esta manera, el telegrama Zimmermann provoc que
Estados Unidos entrara en la Primera Guerra Mundial; y la lectura, por parte de los Aliados,
de los mensajes cifrados de la Alemania nazi, puede haber acortado la Segunda Guerra
Mundial hasta dos aos.
Hasta los aos 70, la criptografa segura era dominio casi exclusivo de los gobiernos. Desde
entonces, dos sucesos la han colocado de lleno en el dominio pblico: la creacin de un
estndar de cifrado pblico (DES); y la invencin de la criptografa asimtrica.
ndice
[ocultar]
1 Criptografa clsica
2 Criptografa medieval
5 Criptografa moderna
o 5.1 Shannon
o 5.2 Criptosecretismo
o 5.3 Un estndar de cifrado
o 5.4 Clave pblica
o 5.5 Poltica y criptografa
o 5.6 Criptoanlisis moderno
6 Referencias
trabajos, junto con los otros que public sobre la teora de la informacin y la
comunicacin, establecieron una slida base terica para la criptografa y el criptoanlisis.
Para trabajar, colaborar o recibir cursos y/o recursos de la NSA a los investigadores
se les obligaba a mantener secreta la informacin y someter sus futuros trabajos al
control de la NSA. Esto provocaba que para acceder a cierto tipo de informacin era
necesario pertenecer al grupo de 'colaboradores de la NSA'.
Por ley revelar informacin sobre criptografa de la II guerra mundial era un acto de
traicin.
Todos estos puntos provocaban que muchos investigadores aceptaran colaborar con la NSA
ya que llegaban a la idea de que renunciado a colaborar con ella jams descubriran nada
que valiese la pena ni tendran una carrera profesional satisfactoria.
Segunda Guerra Mundial eran de esta clase lgica, al igual que los cifrados Csar y Atbash
y en esencia todos los cifrados y sistemas de cdigos de la historia. La clave de un
cdigo es, por supuesto, el libro de cdigos, que debe asimismo distribuirse y mantenerse
en secreto.
En estos sistemas era necesario que la partes que se iban a comunicar intercambiaran las
claves de alguna forma segura antes del uso del sistema (el trmino que se sola utilizar era
mediante un canal seguro), como un mensajero de confianza con un maletn esposado a
su mueca, o un contacto cara a cara, o una paloma mensajera fiel. Este requisito nunca es
trivial y se hace inmantenible rpidamente al crecer el nmero de participantes, o cuando
no hay canales seguros disponibles para el intercambio de claves, o cuando las claves
cambian con frecuencia (una prctica criptogrfica sensata). En particular, si se pretende
que los mensajes sean seguros frente a otros usuarios, hace falta una clave distinta para
cada par de usuarios. Un sistema de este tipo se conoce como criptosistema de clave secreta
o de clave simtrica. El intercambio de claves D-H (y las posteriores mejoras y variantes)
hizo que el manejo de estos sistemas fuera mucho ms sencillo y seguro que nunca.
En contraste, el cifrado de clave asimtrica utiliza un par de claves relacionadas
matemticamente, en el que una de ellas descifra el cifrado que se realiza con la otra.
Algunos (pero no todos) de estos algoritmos poseen la propiedad adicional de que una de
las claves del par no se puede deducir de la otra por ningn mtodo conocido que no sea el
ensayo y error. Con un algoritmo de este tipo, cada usuario slo necesita un par de claves.
Designando una de las claves del par como privada (siempre secreta) y la otra como pblica
(a menudo visible), no se necesita ningn canal seguro para el intercambio de claves.
Mientras la clave privada permanezca en secreto, la clave pblica puede ser conocida
pblicamente durante mucho tiempo sin comprometer la seguridad, haciendo que sea
seguro reutilizar el mismo par de claves de forma indefinida.
Para que dos usuarios de un algoritmo de clave asimtrica puedan comunicarse de forma
segura a travs de un canal inseguro, cada usuario necesita conocer su clave pblica y
privada y la clave pblica del otro usuario. Vase este escenario bsico: Alicia y Roberto
tienen cada uno un par de claves que han utilizado durante aos con muchos otros usuarios.
Al comienzo de su mensaje, intercambian las claves pblicas sin cifrar por una lnea
insegura. Luego Alicia cifra un mensaje utilizando su clave privada, y luego re-cifra el
resultado utilizando la clave pblica de Roberto. Luego el mensaje cifrado doblemente se
enva en forma de datos digitales mediante un cable desde Alicia hasta Roberto. Roberto
recibe el flujo de bits y lo descifra usando su clave privada, y luego descifra el resultado
utilizando la clave pblica de Alicia. Si el resultado final es un mensaje reconocible,
Roberto puede estar seguro de que el mensaje procede realmente de alguien que conoce la
clave privada de Alicia, y que cualquiera que haya pinchado el canal necesitar las claves
privadas de Alicia y Roberto para entender el mensaje.
La efectividad de los algoritmos asimtricos depende de una clase de problemas
matemticos conocidos como funciones de un solo sentido, que requieren relativamente
poca potencia de clculo para ejecutarse, pero muchsima potencia para calcular la inversa.
Un ejemplo clsico de funcin de un sentido es la multiplicacin de nmeros primos
grandes. Es bastante rpido multiplicar dos primos grandes, pero muy difcil factorizar el
producto de dos primos grandes. Debido a las propiedades matemticas de las funciones de
un sentido, la mayor parte de las claves posibles tienen poca calidad para su uso
criptogrfico; solo una pequea parte de las claves posibles de una cierta longitud son
candidatas ideales, y por tanto los algoritmos asimtricos requieren claves muy largas para
alcanzar el mismo nivel de seguridad proporcionado por las claves simtricas,
relativamente ms cortas. Las exigencias de generar el par de claves y realizar el
cifrado/descifrado hacen que los algoritmos asimtricos sean costosos computacionalmente.
Como, a menudo, los algoritmos simtricos pueden usar como clave cualquier serie
seudoaleatoria de bits, se puede generar rpidamente una clave de sesin desechable para
uso a corto plazo. Por consiguiente, es una prctica comn utilizar una clave asimtrica
larga para intercambiar una clave simtrica desechable mucho ms corta (pero igual de
fuerte). El algoritmo asimtrico, ms lento, enva de forma segura una clave simtrica de
sesin, y entonces el algoritmo simtrico, ms rpido, toma el control para el resto del
mensaje.
La criptografa de clave asimtrica, el intercambio de claves Diffie-Hellman y los famosos
algoritmos de clave pblica/clave privada (es decir, lo que se suele llamara algoritmo RSA),
parecen haber sido desarrollados de manera independiente en una agencia de inteligencia
britnica antes del anuncio pblico de Diffie y Hellman en el 76. El GCHQ ha publicado
documentos que afirman que ellos haban desarrollado la criptografa de clave pblica antes
de la publicacin del artculo de Diffie y Hellman. Varios artculos clasificados fueron
escritos en el GCHQ durante los aos 60 y 70, que finalmente llevaron a unos sistemas
esencialmente idnticos al cifrado RSA y al intercambio de claves Diffie-Hellman en 1973
y 1974. Algunos de ellos se acaban de publicar, y los inventores (James H. Ellis, Clifford
Cocks y Malcolm Williamson han hecho pblico parte de su trabajo.
Despues, el mensaje es convertido a numeros dividido en vectores fila sin codificar, cada uno con n
elementos.
FORMACIN DE UN VECTOR FILA SIN CODIFICAR
Por ejemplo para escribir el mensaje "MAANA HAY EXAMEN" en un vector fila sin codificar de
tamao (1 x 3) se hace lo siguiente:
[13 1 15] [1 14 1] [0 8 1] [26 0 5] [25 1 13] [5 14 0]
M A AN A_ H AY _ E X AM E N _
CODIFICACIN DE UN MENSAJE
Para codificar un mensaje seleccione una matriz A invertible de (n x n) y multiplique los vectores
filas sin codificar por A para obtener matrices rengln codificadas.
Por ejemplo para codificar el mensaje "MAANA HAY EXAMEN" se usar la matriz A (matriz
codificadora).
Nota: Se puede usar cualquier matriz, siempre y cuando sea inversible (tenga
inversa).
Se multiplica cada vector fila por la matriz A
y se obtiene:
[27 -40 -31] [-12 11 40] [-7 7 20] [31 -57 32] [37 -62 1] [-9 4 52]
Quitando corchetes se forma el criptograma.
27 -40 -31 -12 11 40 -7 7 20 31 -57 32 37 -62 1 -9 4 52
DECODIFICACIN DE UN MENSAJE
Para quienes desconocen la matriz A, decodificar el criptograma es complicado, pero para un
receptor autorizado que conoce la matriz A, decodificar es sencillo. El receptor solo necesita
multiplicar los vectores filas codificados por la inversa de la matriz A (matriz decodificadora) para
recuperar los vectores fila sin codificar.
Por ejemplo, para decodificar el siguiente mensaje:
Objetivo
Crear un mtodo sencillo de codificacin(diseo
de algoritmos) de mensajes introduciendo las
ideas bsicas de la criptografa y programacion,
mediante el uso de herramientas bsicas del
lgebra matricial.
Competencia
Disearalgoritmos de codificacin dominando las
nociones bsicas de matrices y vectores; como
suma,resta, multiplicacin y las propiedades de
matrices invertibles(matrices quasi-ortogonales
o ortogonales) para la creacin de cdigos y
mensajes, adems descifrar los mensajes
creados por sus compaeros de clase,
conociendo elcdigo y la matriz de codificacin.
Indicadores
Indicadores
Conceptuales
Reconoce el
sistema
matricial m*n.
Identifica la
matriz
Ortogonal.
Conoce la
formula de
calcular el
determinante
del sistema
m*n.
Define las
propiedades de
las matrices.
Identifica la
matriz
invertible.
Reconoce la
transformacin
matricial.
Conoce las
formulas de
suma, resta,
multiplicacin
Indicadores
Procedimentales
Calcula la
inversa de una
matriz.
Calcula
correctamente
la suma, resta y
multiplicacin
de matrices.
Genera el
cdigo y la
matriz de
codificacin que
cumpla que la
matriz sea
invertible y
ortogonal.
Elabora el
algoritmo de
codificacin del
mensaje.
Decodifica
eficazmente el
mensaje
realizado por
sus compaeros
Indicadores
Actitudinale
Cumple
tareas
asignad
Adquier
confianz
segurida
desarrol
codificac
decodifi
Valora l
relacion
existent
el sistem
matricia
solucin
problem
Propicia
debates
tema en
compa
clases.
Valora e
product
obtenido
constan
del sistema
matricial
de clase.
Fenomenologa
Fenomenologa de los conocimientos. Bloque
funciones:se trabaja con transformacin
matricial, pues se disea algoritmos biunvoco
que asigna a cada carcter del mensaje otro
carcter.
Ejemplo de Modelizacin:
dedicaci
El mensaje
matriz inversa matriz de codificacin
mensaje codificado
QU ED AM OS EN EL SA MB IL AL AS NU EV EZ
En este caso yo le agregue el carcter Z al final del
mensaje de tal forma que el receptor deseche los
caracteres que no tienen sentido.
Ahora colocamos los caracteres en vectores columna de
dimensin dos asignndole el cdigo de la tabla:
261670476943220231423164335564154357043643534
2051284724
El Proceso es compatible con cualquier otra dimensin
de matrices, lo que cambia es que dependiendo del
tamao que tomemos la matriz de codificacion, vamos
agrupar los caracteres del mensaje, es decir si tomamos
la matriz de codificacion de orden 3 agruparemos los
caracteres de tres en tres. Notar que el proceso de
codifiaccin de fases puede aumentar, todo depende
del programador, teniendo en cuenta que tambin
puede aumentar ellas posibilidades de error.
Es mas cmodo que la matriz de codificacion elegida
sea ortogonal( su determinante es uno) pues los
clculos son menos engorrosos.
Ejercicio
Codificar el siguiente mensaje: ArthurnCayley
desarrolla el algebra matricial, definiendo las
operaciones basicas,la inversa de una matriz,las
potencias de una matriz, matrices simetricas y
antisimetricas, por ello se considera el fundador del
algebra de matrices.
Ejemplo en Programacin
Se requiere un algoritmo para informar la matricula y
la condicion final de cada alumno en una materia. En la
materia se Tomeron cuatro examenes parciales y no
hubo recuperativo, las condiciones finales pueden ser:
Reprobado: el alumno obtuvo un promedio menor que
10 puntos.
Regular: el alumno obtuvo un promedio entre 10 y 15
puntos.