Curso Seguridad física y criptografía: Algoritmos básicos.
Dictado en la Universidad Simón Bolívar -USB, Lima - Perú, ciclos 2011-2 (agosto/2011) y 2015-1 (marzo/2015).
Curso: Seguridad física y criptografía: Algoritmos básicos
1. Seguridad física y criptografía
Ingeniería de Sistemas y Seguridad Informática
Mg. Ing. Jack Daniel Cáceres Meza, PMP
jack_caceres@hotmail.com
Sesiones 10, 11 y 12
Algoritmos básicos
2. 2
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Algoritmos básicos
César
Playfair
Hill
3. 3
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado de César
Uno de los criptosistemas más antiguos se lo debemos a Julio César. El
método es bastante sencillo, está basado en sustituciones: la letra
cifrada se obtiene a partir de la original desplazándola k posiciones a la
derecha. El alfabeto se considera cíclico, esto es que la letra siguiente a
la z es la a y que la anterior a la a es la z.
La llave (clave) de este cifrado es el valor de k que se ha usado para
cifrar el texto, y este valor debe permanecer secreto, ya que si se hace
público, cualquiera podría descifrar el texto de forma fácil, con sólo
desplazar a la izquierda las letras del texto cifrado k lugares a la
izquierda...
4. 4
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado de César
A cada letra se le asigna un código numérico que no es más que su
posición en el alfabeto, la codificación de las letras es por tanto:
De una forma más formal el cifrado de César se puede definir como:
E sub k = (i+k) mod q
5. 5
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado de César
Veamos algunos ejemplos:
E sub 26 (IBM) = HAL
E sub 6 (HOLA) = NUQA
E sub 1(PATATA) = QBUBUB
6. 6
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
El criptoanálisis de textos cifrados con este método va a ser muy fácil,
ya que existen sólo 27 llaves (claves). Además, como con todos los
cifrados monoalfabéticos, se van a mantener las frecuencias de
aparición de las letras del alfabeto. En este caso estarán desplazadas
según la llave que se haya escogido. En las siguientes gráficas se puede
apreciar cómo se desplazan las frecuencias del castellano al aplicar el
cifrado E3.
7. 7
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Fuerza bruta
Ya que sólo existen 27 llaves posibles, se trata de ir probando cada uno
de los posibles desplazamientos hasta que el texto cifrado cobre
sentido. Vamos a intentar descifra el texto: JYOWAVNYHMOH
8. 8
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Análisis estadístico del texto
Supongamos que nos encontramos con el siguiente texto cifrado:
Edqjnrn qr hud od flxgdg iuhvfd b wudqtxlod gh whpsorv b fdqdohv txh br
hvshuded. Ho oxjdu kdeld shuglgr vx ruljlqdo fdudfwhu wdl kdvwd wdo sxqwr
txh or txh txhgded uhvxowded devxugr b shuyhuvr hq phglr gh wdq dfxvdgd
rfflghqwdolcdflrq. Orv uhvlghqwhv hawudqmhurv hvwdedq gh dfxhugr hq txh
kdeld vlgr xq oxjdu kdelwdeoh kdvwd txh oohjdurq odv wursdv
hvwdgrxqlghqvhv
9. 9
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Análisis estadístico del texto
Lo primero que hay que hacer es hacer un análisis estadístico del texto
cifrado y ver cuáles son las letras más frecuentes, que en este caso son
d, h, v, u y r, y se intentan sustituir por las letras más frecuentes del
castellano, que según la gráfica anterior son: e, a, o, s y n.
Probamos a sustituir la d por la e, esto significa que estamos
suponiendo que el texto se cifró con E sub 26, ya que d = (e + 26) mod
27 , luego si deshacemos los veintiséis desplazamientos a la derecha
que hace E sub 26 tenemos que la primera palabra del texto Edqjnrn
pasa a ser Dcpimqm, que no tiene mucho sentido en castellano. Luego
parece que E sub 26 no se usó para cifrar el texto
10. 10
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Análisis estadístico del texto
Vamos a probar ahora a sustituir la segunda letra más probable del texto
cifrado, h por la e a ver si hay mejor suerte. Este cambio supone que para cifrar
se usó E sub 3. Probemos pues con la primera palabra a ver si toma sentido.
Edqjnrn se convierte en Bangkok, que parece una palabra castellana. Para
asegurarnos si verdaderamente hemos encontrado la llave vamos a probar
ahora con la palabra flxgdg. Esta palabra pasa a ser ciudad, que es claramente
una palabra castellana. Desciframos el resto del texto y obtenemos:
«Bangkok no era la ciudad fresca y tranquila de templos y canales que yo
esperaba. El lugar había perdido su original carácter hasta tal punto que lo que
quedaba resultaba absurdo y perverso en medio de tan acusada
occidentalización. Los residentes extranjeros estaban de acuerdo en que había
sido un lugar habitable hasta que llegaron las tropas estadounidenses.»
11. 11
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado de César con palabra clave
Es otra modificación del cifrado de César. En este caso se escoge un
entero k entre 0 y 26 (ambos extremos incluidos) y una palabra o una
frase corta a la que llamaremos palabra llave (clave). Si en la palabra
llave hay letras repetidas, sólo se tendrá en cuenta la primera
ocurrencia de cada una. La palabra llave será escrita debajo del
alfabeto, empezando en la posición que indique k y saltando las letras
repetidas. Por ejemplo, si escogemos k = 7 y la palabra llave
EXTREMADURA tenemos:
12. 12
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado de César con palabra clave
El resto de las letras se emparejan con las que quedan en orden
alfabético, empezando justo después de la palabra llave:
Una vez que se ha completado la sustitución, ya se puede cifrar
cualquier texto, por ejemplo, la frase "Hoy no me puedo levantar"
queda como "EBÑ DB AW CJWVB MWKPDIPG".
El número de llaves (claves) de este cifrado es grande, aunque no
podamos encontrar llaves para las 27! sustituciones posibles como en
una sustitución monoalfabética general. Es un método más fuerte que
el cifrado de César normal.
13. 13
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
El criptoanálisis de textos cifrados con este cifrado no es demasiado
complejo. El análisis a fuerza bruta consistiría en probar con todas las
permutaciones posibles hasta que el texto cifrado cobre sentido. No
vamos a entrar en él, ya que hay 27! permutaciones.
Es menos costoso hacer un análisis estadístico del texto cifrado ya que
todos los cifrados monoalfabéticos mantienen las frecuencias de
aparición de las letras del alfabeto. En este caso las frecuencias estarán
cambiadas de sitio según la permutación que se haya escogido para
cifrar el texto, pero se corresponderán con las del lenguaje.
14. 14
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Supongamos que nos encontramos con el siguiente texto cifrado:
Q YB TGLYO VBJKTBKY MVUHD, WDB OT XYOVWTXYST Q XLHYST JDOD
FDJVUOYJ YB YO WHVJKTO. LBT MVUHTWVDB KYBLY WDAD YO YWD, D YO
HYWLYHXD; XLHT Q fHTIVO T LB KVYAFD, WTFTS XY XYHHVUTH LB ALHD D
XYJFYHKTH LB WDHTSDB. Q YJT MVUHTWVDB TAYBTSD, FDH LB VBJKTBKY,
YJKTOOTH YB AVO FYXTSDJ OT LHBT GLY TFHYJTUT YO WDHTSDB XYO HYQ.
FYHD YO JDHKVYIVD YHT ALQ FDXYHDJD, D OT BTKLHTOYST XY HYQ FDWD
FHDFVWVT T KTOYJ WDJTJ. XY JLYHKY GLY, XY VBAYXVTKD, OT MVUHTWVDB
WYJD, Q XY BLYMD YO WDHTSDB XYO HYQ FYHATBYWVD T JTOMD
Si hacemos un análisis estadístico del texto tenemos que las letras mas
usadas ordenadas por mayor uso son Y, T, D, H, B y O.
15. 15
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Las tres letras más frecuentes en castellano son e, a y o. Vamos a
sustituirlas por las tres letras más frecuentes del texto cifrado para ver
lo que obtenemos:
Q eB aGLeO VBJKaBKe MVUHo, WoB Oa XeOVWaXeSa Q XLHeSa JoOo
FoJVUOeJ eB eO WHVJKaO. LBa MVUHaWVoB KeBLe WoAo eO eWo, o
eO HeWLeHXo; XLHa Q fHaIVO a LB KVeAFo, WaFaS Xe XeHHVUaH LB
ALHo o XeJFeHKaH LB WoHaSoB. Q eJa MVUHaWVoB aAeBaSo, FoH LB
VBJKaBKe, eJKaOOaH eB AVO FeXaSoJ Oa LHBa GLe aFHeJaUa eO
WoHaSoB XeO HeQ. FeHo eO JoHKVeIVo eHa ALQ FoXeHoJo, o Oa
BaKLHaOeSa Xe HeQ FoWo FHoFVWVa a KaOeJ WoJaJ. Xe JLeHKe GLe, Xe
VBAeXVaKo, Oa MVUHaWVoB WeJo, Q Xe BLeMo eO WoHaSoB XeO HeQ
FeHAaBeWVo a JaOMo.
16. 16
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
En el texto encontramos eO y Oa; eO podría ser en, es o el, con lo que
Oa podría ser na, sa o la respectivamente. Parece lógico que
cambiemos la O por una l, que es lo único que parece tener sentido:
Q eB aGLel VBJKaBKe MVUHo, WoB la XelVWaXeSa Q XLHeSa Jolo
FoJVUleJ eB el WHVJKal. LBa MVUHaWVoB KeBLe WoAo el eWo, o el
HeWLeHXo; XLHa Q fHaIVl a LB KVeAFo, WaFaS Xe XeHHVUaH LB ALHo o
XeJFeHKaH LB WoHaSoB. Q eJa MVUHaWVoB aAeBaSo, FoH LB
VBJKaBKe, eJKallaH eB AVl FeXaSoJ la LHBa GLe aFHeJaUa el WoHaSoB
Xel HeQ. FeHo el JoHKVeIVo eHa ALQ FoXeHoJo, o la BaKLHaleSa Xe HeQ
FoWo FHoFVWVa a KaleJ WoJaJ. Xe JLeHKe GLe, Xe VBAeXVaKo, la
MVUHaWVoB WeJo, Q Xe BLeMo el WoHaSoB Xel HeQ FeHAaBeWVo a
JalMo.
17. 17
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Tenemos las palabras Xel y Xe, con lo que parece razonable sustituir la
X por una d:
Q eB aGLel VBJKaBKe MVUHo, WoB la delVWadeSa Q dLHeSa Jolo
FoJVUleJ eB el WHVJKal. LBa MVUHaWVoB KeBLe WoAo el eWo, o el
HeWLeHdo; dLHa Q fHaIVl a LB KVeAFo, WaFaS de deHHVUaH LB ALHo o
deJFeHKaH LB WoHaSoB. Q eJa MVUHaWVoB aAeBaSo, FoH LB
VBJKaBKe, eJKallaH eB AVl FedaSoJ la LHBa GLe aFHeJaUa el WoHaSoB
del HeQ. FeHo el JoHKVeIVo eHa ALQ FodeHoJo, o la BaKLHaleSa de HeQ
FoWo FHoFVWVa a KaleJ WoJaJ. de JLeHKe GLe, de VBAedVaKo, la
MVUHaWVoB WeJo, Q de BLeMo el WoHaSoB del HeQ FeHAaBeWVo a
JalMo.
18. 18
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Tenemos la palabra de una Q, que podría descifrarse por y o a, pero la
a ya la hemos sustituido, así que sustituimos la Q por una y:
y eB aGLel VBJKaBKe MVUHo, WoB la delVWadeSa y dLHeSa Jolo
FoJVUleJ eB el WHVJKal. LBa MVUHaWVoB KeBLe WoAo el eWo, o el
HeWLeHdo; dLHa y fHaIVl a LB KVeAFo, WaFaS de deHHVUaH LB ALHo o
deJFeHKaH LB WoHaSoB. y eJa MVUHaWVoB aAeBaSo, FoH LB VBJKaBKe,
eJKallaH eB AVl FedaSoJ la LHBa GLe aFHeJaUa el WoHaSoB del Hey.
FeHo el JoHKVeIVo eHa ALy FodeHoJo, o la BaKLHaleSa de Hey FoWo
FHoFVWVa a KaleJ WoJaJ. de JLeHKe GLe, de VBAedVaKo, la
MVUHaWVoB WeJo, y de BLeMo el WoHaSoB del Hey FeHAaBeWVo a
JalMo.
19. 19
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Tenemos la palabra Hey, que puede ser rey o ley, con lo que la H se
puede sustituir por r o por l. Para resolver el problema basta que nos
fijemos en la palabra eHa, que con las dos sustituciones posibles de H
queda como era o ela. Parece más adecuado realizar la sustitución de
la letra H por r, con lo que queda:
y eB aGLel VBJKaBKe MVUro, WoB la delVWadeSa y dLreSa Jolo FoJVUleJ
eB el WrVJKal. LBa MVUraWVoB KeBLe WoAo el eWo, o el reWLerdo;
dLra y fraIVl a LB KVeAFo, WaFaS de derrVUar LB ALro o deJFerKar LB
WoraSoB. y eJa MVUraWVoB aAeBaSo, For LB VBJKaBKe, eJKallar eB AVl
FedaSoJ la LrBa GLe aFreJaUa el WoraSoB del rey. Fero el JorKVeIVo era
ALy FoderoJo, o la BaKLraleSa de rey FoWo FroFVWVa a KaleJ WoJaJ. de
JLerKe GLe, de VBAedVaKo, la MVUraWVoB WeJo, y de BLeMo el
WoraSoB del rey FerAaBeWVo a JalMo.
20. 20
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
En el texto aparece la palabra Fero, que se descifra por pero, lo que
nos hace sustituir la F por la p:
y eB aGLel VBJKaBKe MVUro, WoB la delVWadeSa y dLreSa Jolo poJVUleJ
eB el WrVJKal. LBa MVUraWVoB KeBLe WoAo el eWo, o el reWLerdo;
dLra y fraIVl a LB KVeApo, WapaS de derrVUar LB ALro o deJperKar LB
WoraSoB. y eJa MVUraWVoB aAeBaSo, por LB VBJKaBKe, eJKallar eB AVl
pedaSoJ la LrBa GLe apreJaUa el WoraSoB del rey. pero el JorKVeIVo era
ALy poderoJo, o la BaKLraleSa de rey poWo propVWVa a KaleJ WoJaJ. de
JLerKe GLe, de VBAedVaKo, la MVUraWVoB WeJo, y de BLeMo el
WoraSoB del rey perAaBeWVo a JalMo.
21. 21
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Con la palabra poderoJo deducimos que la J se sustituye por la s:
y eB aGLel VBsKaBKe MVUro, WoB la delVWadeSa y dLreSa solo posVUles
eB el WrVsKal. LBa MVUraWVoB KeBLe WoAo el eWo, o el reWLerdo;
dLra y fraIVl a LB KVeApo, WapaS de derrVUar LB ALro o desperKar LB
WoraSoB. y esa MVUraWVoB aAeBaSo, por LB VBsKaBKe, esKallar eB AVl
pedaSos la LrBa GLe apresaUa el WoraSoB del rey. pero el sorKVeIVo era
ALy poderoso, o la BaKLraleSa de rey poWo propVWVa a Kales Wosas. de
sLerKe GLe, de VBAedVaKo, la MVUraWVoB Weso, y de BLeMo el
WoraSoB del rey perAaBeWVo a salMo.
22. 22
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Ya se ven algunas palabras claramente. Sustituimos la B por la n, la W
por la c, la K por la t, la U por la b y la M por la v:
y en aGLel Vnstante vVbro, con la delVcadeSa y dLreSa solo posVbles en
el crVstal. Lna vVbracVon tenLe coAo el eco, o el recLerdo; dLra y fraIVl a
Ln tVeApo, capaS de derrVbar Ln ALro o despertar Ln coraSon. y esa
vVbracVon aAenaSo, por Ln Vnstante, estallar en AVl pedaSos la Lrna GLe
apresaba el coraSon del rey. pero el sortVeIVo era ALy poderoso, o la
natLraleSa de rey poco propVcVa a tales cosas. de sLerte GLe, de
VnAedVato, la vVbracVon ceso, y de nLevo el coraSon del rey perAanecVo
a salvo.
23. 23
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
Ya parece claro que el texto original es:
Y en aquel instante vibró, con la delicadeza y dureza sólo posibles en el
cristal. Una vibración tenue como el eco, o el recuerdo; dura y frágil a un
tiempo, capaz de derribar un muro o despertar un corazón. Y esa
vibración amenazó, por un instante, estallar en mil pedazos la urna que
apresaba el corazón del Rey. Pero el sortilegio era muy poderoso, o la
naturaleza de Rey poco propicia a tales cosas. De suerte que, de
inmediato, la vibración cesó, y de nuevo el corazón del Rey permaneció a
salvo.
24. 24
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptoanálisis
¿Cual fue la palabra y en que posición?
Con lo que podemos asegurar que el texto ha sido cifrado con la llave
"invierno" empezando en la posición 6.
25. 25
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado por Sustitución
Sustitución Poligráfica
En lugar de sustituir una letra por otra se sustituyen digramas,
trigramas, etc., de letras.
Objetivo: Destruir las frecuencias de los monogramas; cifrando un
n-grama de una vez mayor seguridad.
26. 26
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado por Sustitución
Poligráfica
La Playfair es una cifra de bloque primitiva, usando algunos principios
comunes a las cifras de bloque actuales.
El mejor medio de aproximarse de la criptología moderna, sin tener
que enfrentar la teoría de los números y la matemática, es
entendiendo la Playfair.
Sustitución de letras, tomas dos a dos (bloque bigrámico), de acuerdo
con reglas aplicadas la una reja de 5 por 5 que contiene el alfabeto
cifrante.
27. 27
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado por Sustitución
Poligráfica
Característica
Sustitución de letras, tomas dos a dos (bloque bigrámico), de acuerdo
con reglas aplicadas la una matriz de 5 por 5 que contiene el alfabeto
cifrante.
28. 28
Mg, Ing. Jack Daniel Cáceres Meza, PMP
EJEMPLO
Elegir una palabra clave. “NUMABOA”.
Completar la matriz con el resto del alfabeto,
como es de 5 x 5 hay algunas letras que se
repetirán
La preparación del texto claro es
extremadamente fácil: basta formar grupos
de 2 letras, los bloques digrámicos.
Cada bloque recibirá un tratamiento de
acuerdo con las reglas cifrantes.
N U M A B
O C D E F
G H I J K
L P Q R S
T V X Y Z
29. 29
Mg, Ing. Jack Daniel Cáceres Meza, PMP
EJEMPLO
El texto claro que será cifrado con La Playfair es:
Sérgio Vieira de Melo, o brasileiro embaixador da paz, acaba de ser assassinado
Preparamos o texto para ser cifrado:
SE RG IO VI EI RA DE ME LO OB RA SI LE IR OE MB
AI XA DO RD AP AZ AC AB AD ES ER AS SA SS IN AD O
De inmediato notamos que el último bloque quedó con sólo una letra y
que existe un bloque con letra doble (SS). Letras repetidas impiden que
la cifra pueda ser aplicada correctamente. En estos casos, por
convención, generalmente son usados la X y o/la Z. Si falta una letra en
el final, se añade X o Z. Corrigiendo los bloques obtenemos:
SE RG IO VI EI RA DE ME LO OB RA SI LE IR OE MB
AI XA DO RD AP AZ AC AB AD ES ER AS SA SX SI NA DO
30. 30
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Algoritmo
Las letras de un bloque pueden tener sólo 3 localizaciones en la reja:
están en la misma línea, están en la misma columna o están en líneas y
columnas diferentes. Por lo tanto, existen sólo 3 reglas que deben ser
aplicadas a los bloques digrámicos:
Letras en la misma línea: son sustituidas por las letras a la su derecha.
Si una de las letras del bigrama esté en la última columna de la reja, "se rueda
la línea" y se utiliza la letra de la primera columna.
Letras en la misma columna: son sustituidas por las letras abajo de ellas.
Si la letra esté en la última línea, "se rueda la columna" y se utiliza la letra de
la primera línea.
Letras en líneas y columnas diferentes: las letras del bigrama forman un
"cuadrilátero" y sustituidas por las letras posicionadas en los cantos
contrarios del cuadrilátero.
31. 31
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Ejemplos de los casos
La regla 1 indica como el
digrama OE debe ser
sustituido.
La letra O por la letra a su
derecha C y la letra E por la
letra a su derecha F.
Otros ejemplos serían PS
sustituido por QL y MA
sustituido por AB.
N U M A B
O C D E F
G H I J K
L P Q R S
T V X Y Z
32. 32
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Ejemplos de los casos
Observe la regla 2 en
funcionamiento, donde
sustituimos RA por YE.
Si el digrama fuera GT, la G sería
sustituido por L y la T sería
sustituido por N.
Si el digrama fuera GL, sería
sustituido por LT.
N U M A B
O C D E F
G H I J K
L P Q R S
T V X Y Z
33. 33
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Ejemplos de los casos
En la regla 3, tomemos como ejemplo el
digrama LE.
Visualice inicialmente el cuadrilátero
formado por estas dos letras.
Conforme la regla, las letras del digrama
serán sustituidas por las letras de la
misma línea pero en el canto opuesto.
Siendo así, L es sustituida por R y E es
sustituida por O.
Por la regla 3, MG por IN y BP por SU.
N U M A B
O C D E F
G H I J K
L P Q R S
T V X Y Z
34. 34
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Cifrado por Sustitución
Poligráfica
Estas tres reglas son el alma de la cifra Playfair. Obviamente, las mismas reglas son
aplicadas para descifrar el texto, sólo que son usadas "al contrario".
EJEMPLO DESCIFRADO
Obedeciendo las reglas para la sustitución, encuentre el texto cifrado del ejemplo.
SE RG IO VI EI RA DE ME LO OB RA SI LE IR OE MB
AI XA DO RD AP AZ AC AB AD ES ER AS SA SX SI NA DO
35. 35
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Principios
Basado en el álgebra lineal
Es otro algoritmo polialfabético inventado en 1919 por Lester S.Hill.
Primer sistema criptográfico poli- alfabético
Trabaja con mas de tres símbolos simultáneamente.
36. 36
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Principios
Como ya vimos la ventaja de los sistemas poli-alfabéticos es que puede
darse que un mismo carácter en un mensaje a enviar se cifre en dos
caracteres distintos en el mensaje cifrado.
37. 37
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Funcionamiento
Entonces para la lengua española trabajaremos con un alfabeto de 26
caracteres.
• Se elije un entero d que determina bloques de d
elementos que son tratados como un vector de d
dimensiones.
• Se elije de forma aleatoria una matriz de d × d
elementos los cuales serán la clave a utilizar.
• Los elementos de la matriz de d × d serán enteros entre
0 y 25, además la matriz M debe ser invertible en
38. 38
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Funcionamiento
Para la encriptación, el texto es dividido en bloques de d
elementos los cuales se multiplican por la matriz d × d
Todas las operaciones aritméticas se realizan en la forma
modulo 26, es decir que 26=0, 27=1, 28=2 etc.
Dado un mensaje a cifrar debemos tomar bloques del
mensaje de "d" caracteres y aplicar:
M×Pi=C, donde C es el código cifrado para el mensaje Pi
39. 39
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Ejemplo:
Si tomamos la matriz
El primer bloque "COD" se codificará
como "WLP"
El segundo bloque "IGO" se
codificará como "GSE"
Luego 'CODIGO' encriptado
equivale a 'WLPGSE'.
Para cifrar el mensaje "CODIGO"
debemos cifrar los seis caracteres
de "CODIGO" en bloques de 3
caracteres cada uno
40. 40
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Descifrado
Para descifrar el método es idéntico al anterior pero
usando la matriz inversa de la usada para cifrar.
41. 41
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Descifrado
Cálculo de la matriz inversa
Primero se debe verificar que la matriz elegida sea invertible en modulo
26.
La forma mas sencilla de saber esto a través del cálculo del determinante.
Si la determinante de la matriz es 0 o tiene factores comunes con el
módulo (en el caso de 26 los factores son 2 y 13), entonces la matriz no
puede utilizarse.
42. 42
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Descifrado
Cálculo de la matriz inversa
Para ver si es invertible calculo el determinante de A
5 (23 · 13 – 3 ·11) – 17 (9 · 13 – 3 · 2) + 20 (9 · 11 – 23 · 2) =
1215 – 1734 + 1060 = 503
503 = 9 mod 26
La matriz A es invertible en modulo 26 ya que 26 y 9 son co-primos
43. 43
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Descifrado
Cálculo de la matriz inversa
Para hallar la inversa de la matriz modulo 26, utilizamos la fórmula
Donde CT es la matriz de cofactores de A transpuesta.
Hay que tener en cuenta que debe realizarse en modulo 26 por lo tanto,
para el ejemplo, la inversa de 9 (mod 26) es 3 (mod 26) ya que 9 (mod 26)
· 3 (mod 26) = 27 mod 26 = 1 (mod 26)
Por lo tanto 3 es la inversa multiplicativa de 9 en modulo 26
Para calcular C hay que calcular los cofactores de A
44. 44
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Descifrado
Cálculo de la matriz inversa
Para calcular C hay que calcular los cofactores de A
45. 45
Mg, Ing. Jack Daniel Cáceres Meza, PMP
Criptosistema de Hill
Descifrado
Cálculo de la matriz inversa
Ahora aplicamos la formula de la inversa
46. Mg. Ing. Jack Daniel Cáceres Meza, PMP
jack_caceres@hotmail.com
Gracias por su atención
¿Preguntas?
Mg. Ing. Jack Daniel Cáceres Meza, PMP
jack_caceres@hotmail.com