criptosistemas clÁsicos

Upload: weblesson

Post on 10-Feb-2018

304 views

Category:

Documents


1 download

TRANSCRIPT

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    1/13

    CRIPTOSISTEMAS CLSICOS

    La palabra cdigo alude a un tipo muy particular de comunicacin secreta, queha ido cayendo en desuso a lo largo de los siglos. En un cdigo, una palabra o unafrase es reemplazada por una palabra, un nmero o un smbolo. Por ejemplo, los

    agentes secretos tienen nombres codificados, palabras que se utilizan en ez de suserdaderos nombres para enmascarar su identidad. La alternatia al cdigo es la cifra,una t!cnica que funciona a un niel m"s b"sico, reemplazando letras en ez de

    palabras enteras. Por ejemplo, cada letra de una frase podra reemplazarse por lasiguiente letra del alfabeto.

    Tipos de Cifrados Clsicos

    #e puede hacer una gran diisin de los cifrados segn el tipo de operacin quese realiza en el cifrado. $ada la caracterstica finita del alfabeto y la hiptesis de noariacin de la longitud del te%to, e%isten dos opciones para el cifrado. La primera,

    llamada sustitucin, consiste en sustituir las unidades del te%to original por otras& lasegunda llamada transposicin, consiste en crear el te%to cifrado simplementedesordenando las unidades que forman el te%to original. Los algoritmos de sustituciny los cdigos, preseran el orden de los smbolos en claro, pero los disfrazan. 'diferencia de !stos, los algoritmos de transposicin, reordenan las letras pero no lasdisfrazan.

    Ejemplo de transposicin()* #E+E)- E# )* P#-/E-& # L- #*EL)'#, )0 EE# #* P#-/E-

    Ejemplo de sustitucin(E/+-/)12-/-# ' 2E$'/-+3E

    ' $ 3 4 2 - # * 5 6 7

    8 9 : ; < + = L / E > P )

    *#2=7L*+=#=/ 8 +*9;8#=2:*

    Este es un ejemplo ilustratio claro de una funcin matem"tica& a cada letra delalfabeto llano ?elemento del dominio@ le hace corresponder una letra del alfabeto cifrado?elemento del rango o conjunto imagen de la funcin@. Por otra parte, para el proceso dedescifrado es necesario contar con que la funcin sea biyectia para poder serinersible. Los sistemas criptogr"ficos donde la clae de descifrado se pueden deducirde la clae de cifrado se llaman simtricos o de clae secreta!

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    2/13

    Los criptgrafos a menudo piensan en t!rminos de alfabeto llano o claro, elalfabeto que se usa para el mensaje original, y alfabeto cifrado, las letras que sustituyena las del alfabeto llano.

    +ada una de las cifras puede ser considerada en t!rminos de un m!todo de

    codificacin general, conocido como el algoritmo, y una clave, que especifica losdetalles e%actos de una codificacin particular. En los casos siguientes, el algoritmoconllea sustituir cada letra del alfabeto llano por una letra del alfabeto cifrado y elalfabeto cifrado puede consistir de cualquier combinacin del alfabeto llano.

    El algoritmo de transposicin m"s comn es el de tipo columnar& la clae delcifrado debe ser una palabra que no tenga ninguna letra repetida, en el ejemplo que se

    presenta a continuacin la clae es la palabra 2E;':*+4. El propsito de la clae esel de numerar las diferentes columnas que se formar"n, de forma que la columna A esaquella que queda bajo la letra de la clae m"s pr%ima al principio del alfabeto y assucesiamente. El te%to en claro se escribe debajo de la clae en renglones

    horizontales& el te%to cifrado se lee por columnas, comenzando por la columna cuyaletra clae tiene el menor alor.

    )e%to llano( please transfer one million dollars to my+lae de cifrado( 2 E ; ' : * + 4

    2 E ; ' : * + 4

    B C D A F G H

    p l e a s e t r

    a n s f e r o ne m i l l i o n

    d o l l a r s t

    o m y a b c d e

    )e%to cifrado( afllaselabtoosdlnmomesilyrnntepaedoerirc

    Para desbaratar un cifrador de transposicin, el criptoanalista debe estar primeroenterado de que se trata efectiamente de un cifrado de transposicin. Esto puede

    comprobarse de una forma relatiamente sencilla, obserando la frecuencia de las letrase, t, a, o, i, n, ... ya que en los cifrados de este tipo se cambia de lugar las letras, pero nose cambian las letras propiamente, por lo que si la frecuencia de aparicin de las letrasse corresponde con la obserada para el lenguaje natural, es decir, la e es la que m"saparece, ... entonces se podra afirmar con mucha seguridad que el cifrador es detransposicin y no de sustitucin.

    El siguiente paso consistira en determinar cu"l es el nmero de columnas. Enmuchos casos una palabra o frase probable, puede llegar a adiinarse a partir delconte%to del mensaje. #i el criptoanalista sabe, o supone que una determinada palabra ofrase est" contenida en el mensaje, entonces no le costar" mucho esfuerzo determinar elnmero de columnas.

    El ltimo paso consistira en ordenar las columnas.

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    3/13

    Cifrado de Cesar

    El algoritmo de +!sar, llamado as porque es el que empleaba

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    4/13

    Para descifrar un mensaje hay que utilizar la funcin inersa( T%a23'+,%&' # a6& (36& donde a6 # a+,mod .& 36# 7 a+,3 mod ..

    /-)' 2P-)'/)E( Es necesario que / sea primo para que e%ista y sea nico aNA.

    Puede ser interesante hallar la gr"fica de la transformacin y de su inersa para

    entender estos procedimientos.

    La simplicidad y fortaleza de los cifrados de sustitucin hicieron que !stosdominaran el arte de la escritura secreta a lo largo del primer milenio de nuestra era.

    La cifra Pi8pen

    La cifra de sustitucin monoalfab!tica perdur a tra!s de los siglos en formasdiersas.

    Por ejemplo la cifra de los templarios(El )emple era una orden de monjes fundada en el siglo 9., cuya misin

    principal era asegurar la seguridad de los peregrinos en )ierra #anta.. "pidamente, lostemplarios se desentendieron de este objetio, y se enriquecieron considerablementehasta el punto de llegar a ser tesoreros del rey y del Papa. Para codificar las letras decr!dito que ellos intercambiaban, ellos remplazaban cada letra por un smbolo,siguiendo la sustitucin siguiente (

    -tro ejemplo es la cifra Pigpen fue utilizada por los masones en el siglo 98para preserar la priacidad de sus archios, y todaa la usan los niKos hoy en da. Lacifra no sustituye una letra por otra, sino que sustituye cada letra por un smbolo deacuerdo al siguiente modelo(

    Para codificar una letra particular, encuentre su posicin en una de las cuatrocuadrculas y luego dibuje esa porcin de la cuadrcula para representar esa letra. Portanto(

    #i conoce la clae, la cifra Pigpen es f"cil de descifrar. #i no, se puede descifrarf"cilmente con el(

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    5/13

    Los criptoanalistas "rabes lograron encontrar un m!todo para descifrar la cifrade sustitucin monoalfab!tica ?un nico alfabeto cifrado@, aunque no se sabe qui!n fue

    el primero en darse cuenta de que la ariacin en la frecuencia de las letras podae%plotarse para descifrar.

    *na de las mejoras m"s sencillas de la seguridad de la cifra de sustitucinmonoalfab!tica fue la introduccin de nulos, es decir, smbolos o letras que no eransustitutos de letras aut!nticas, sino meros huecos que no representaban nada. Porejemplo, era posible sustituir cada letra llana pon un nmero entre J y MM, lo quedejaba BG nmeros que no representaban nada y que podan ser salpicadosaleatoriamente y con frecuencias ariables por todo el te%to cifrado.

    El cifrado 9ifido o de Poli3io

    En el siglo a.+. Polibio fue miembro de la Liga 'quea dirigida por>ilip!menes que fue derrotada por los romanos en Pidna, Polibio fue lleado comoreh!n a oma para ser maestro de Escipin Emiliano. Presenci la destruccin deCartagoy posiblemente estuo en el sitio de /umancia. Escribi cuarenta libros donderecoge sus O3istoriasO, conser"ndose slo cinco en los que se manifiesta su deseo deapartar de los acontecimientos todo resto de mitologa, utopa o poesa.

    Polibioest" en el origen de un m!todo muy original para cifrar ?!l describa unsistema de seKales a distancia basado en el empleo de antorchas@. Para esto, se disponen

    las letras en un cuadrado D%D ?'l ser un cuadro slo de D%D nos emos obligados acifrar de la misma forma la y la

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    6/13

    El cuadrado de Polibio posee algunas propiedades interesantes. En particular,reduce el nmero de smbolos utilizados para la codificacin, lo que hace su an"lisism"s difcil. 'dem"s altera la frecuencia de los caracteres a diferencia de lo que ocurre

    por ejemplo con los cifrados monoalfab!ticos. Es por lo que lo hace un precursor de losm!todos modernos. emarquemos que podemos llenar el cuadrado de manera diferente

    de como se ha hecho aqu, por ejemplo comenzando poniendo una palabra clae y luegoel resto de las letras en orden alfab!tico.

    -bseremos un ejemplo donde la clae para el alfabeto desordenado es$PL-2'(

    : , ) $ ; , que a su ez define una lnea particular en el cuadro 8igenRre. Lalnea que comienza por 3, la lnea B, es el alfabeto cifrado que se utilizar" paraencontrar la letra que sustituir" a la ddel te%to llano. -bseramos dnde se cruza lacolumna que comienza por dcon la lnea que comienza por >y resulta ser la letra 4.

    Por consiguiente, a esa letra ddel te%to llano la representa la 4 en el te%to cifrado.. Paracodificar la segunda letra del mensaje, e, repetimos el proceso. La letra clae que haysobre la ees la , as, que la codificamos mediante una lnea diferente del cuadro de8igenRre( la lnea I ?lnea F@, que es un nueo alfabeto cifrado. Para codificar la eobseramos dnde se cruza la columna que empieza por econ la lnea que comienza porI, y resulta ser la letra 2

    )e%to cifrado 425;5L:8 7 $ 3'E ) - #5= L # 7 :

    *na palabra clae m"s larga, una frase clae, introducira m"s lneas enel proceso de codificacin e incrementara la complejidad de la cifra.

    El siguiente muestra un cuadro de 8igenRre

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    9/13

    a b c d e f g h i j S l m n o p q r s t u % y z

    La debilidad fundamental de la cifra 8igen!re es su naturaleza cclica. #i laclae tiene cinco letras, entonces cada cinco letras del te%to llano est" codificad segn el

    mismo alfabeto cifra. #i el criptoanalista puede identificar la longitud de la clae, elte%to puede ser tratado como una serie de cinco cifras monoalfab!ticas, y cada una deellas se puede descifrar con el an"lisis de frecuencia.

    Cifrado de =ernam2 de cuaderno de uso ?nico o de cinta aleatoria

    Para eitar el inconeniente del sistema de 8igen!re, en AMAB el ingenieroamericano 8ernan, propone un sistema de sustitucin polialfab!tico de granimportancia en la criptografa, pues es el nico que se demuestra matem"ticamente

    perfecto. En !l podemos abordar cuestiones probabilsticas, en concreto sobre lageneracin de nmeros aleatorios.

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    10/13

    +onocida el tamaKo, S, del mensaje que deseamos cifrar, consideramos unasucesin finita de S de ariables aleatorias independientes e id!nticamente distribuidassegn una distribucin equiprobable sobre 7m, que ser" la clae usada. Entoncesrealizaremos una suma mdulo m entre cada letra del mensaje con cada letra de estasucesin de claes. Las mejores claes aleatorias se crean utilizando procesos fsicos

    naturales como la radiactiidad, que se sabe e%hibe una conducta erdaderamentealeatoria. El criptgrafo podra colocar algo de material radiactio en una banqueta ydetectar su emisin con un contador ;eiger.

    Las comunicaciones militares requeran elocidad y simplicidad, ya que podaneniar y recibir cientos de mensajes cada da, por lo que los mandos militares semostraban reticentes a adoptar la cifra polialfab!tica, a causa de su complejidad y

    buscaron formas intermedias, que fueran m"s difciles de descifrar que lasmonoalfab!ticas pero m"s sencillas que una cifra polialfab!tica.

    's surgi la cifra de sustitucin @omofnica. En ella cada letra es reemplazada

    por una ariedad de sustitutos, y el nmero de sustitutos potenciales es proporcional ala frecuencia de la letra. Por ejemplo, la letra asupone el FT de todas las letras delingl!s escrito, de manera que asignaramos ocho smbolos para representarla. +ada ezque apareciese una aen el te%to llano sera reemplazada en el te%to cifrado por uno delos ocho smbolos elegido al azar, de forma que al final de la codificacin cadasmbolo constituira apro%imadamente el AT del te%to codificado.

    La cifra AB=D

    En la cifra '$>;89 hay sustitucin y transposicin. La codificacin comienzadibujando una cuadrcula de H%H, y llenando los GH cuadrados con una disposicinaleatoria de las H letras y los AJ dgitos. +ada lnea y cada columna de la cuadrcula seidentifica con una de las seis letra ', $, > , ;, 8 o 9. La disposicin de los elementosde la cuadrcula funciona como parte de la clae, de modo que el receptor necesitaconocer los detalles de la cuadrcula para poder descifrar los mensajes.

    A B = DA F p G d A n l t C o a hB B S b c D z j u H Q g m

    = % s i r D M e y J f q

    La primera fase de la codificacin es tomar cada letra del mensaje, localizar suposicin en la cuadrcula y sustituirla con las letras que dan nombre a sus lnea y sucolumna. Por ejemplo, F sera sustituido por '', y p sera reemplazado por '$.8eamos un mensaje corto codificado segn este sistema.)e%to llano( en a las AJ de la noche)e%to cifrado fase A( 8> 9$ '9 $8 $' $8 8$ '8 9; '; 9$ $' $8 '9 $; >; $9 9$

    3asta ahora, es una simple cifra de sustitucin monoalfab!tica, y bastara unan"lisis de frecuencia para descifrarla. #in embargo, la segunda fase de '$>;89 es

    una transposicin, lo que dificulta muchsimo m"s el criptoan"lisis. La transposicindepende de una palabra clae, que en este caso es la palabra P'+-, y que debe

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    11/13

    compartirse con el receptor. La transposicin se llea a cabo de la siguiente manera.Primero, las letras de la palabra clae se escriben en la lnea superior de una nueacuadrcula. Luego el te%to cifrado fase A se escribe debajo en una serie de lneas, talcomo se muestra a continuacin. $espu!s, las columnas de la cuadrcula se cambian de

    posicin de modo que las letras de la palabra clae queden en orden alfab!tico. El te%to

    cifrado final se logra descendiendo cada columna y escribiendo las letras en este nueoorden.

    )e%to cifrado final( >9'$;$8;99$$''$'>9$888;'9;$8'$899$$$

    El te%to cifrado final se transmitira entonces en cdigo 2orse, y el receptorinertira el proceso de codificacin para obtener el te%to original. )odo el te%to cifradose compone con slo seis letras ?esto es, ', $, >, ;, 8, 9@, porque !stas son las que dannombre a las lneas y las columnas de la cuadrcula inicial de H%H. ' menudo, la gente

    se pregunta por qu! se eligieron esas letras, en ez de, pongamos ', :, +, $, E y >. Larespuesta es que ', $, >, ;, 8 y % son muy diferentes entre s cuando se conierten enlas lneas y puntos del 2orse, de modo que la eleccin de letras reduce al mnimo elriesgo de errores durante la transmisin.

    Cifrado de >ill

    Los cifrados monogr"ficos, en los que se sustituye un car"cter por otro de unaforma preestablecida, son ulnerables al an"lisis de frecuencia de aparicin de lasletras. Para eitarlo se desarrollaron esquemas basados en cifrar bloques de letras de

    una cierta longitud fija, o sea, cifrados poligr"ficos. El esquema que aqu trataremos sedebe a 3ill ?hacia A.MGJ@. )iene un inter!s did"ctico importante debido al uso dematrices que en !l se hace.

    *n cifrado de 3ill se obtiene al transformar bloques de ncaracteres en un te%tocifrado a tra!s de la relacin

    C # %A P ( 9'%mod )F', donde(

    G A es una matriz n%n, que debe ser inersible mdulo F, es decir, el m.c.d?determinante deUlaUmatriz VV', F@ I A.

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    12/13

    G Pes un bloque de ncaracteres. P I nZEF

    W 9 es una matriz n&,

    G Ces la matriz columna resultante del cifrado de P. + I nZEF

    G )Fes el nmero de smbolos del alfabeto( U ' : + $ E > ; 3 < 4 L 2 / - P = # ) * 8 5 9 6 7 que se corresponden con los nmeros del J al B ?el J corresponde alespacio en blanco separador de dos palabras@

    *n ejemplo para un cifrado digr"fico ?bloques de caracteres@ sera para elte%to original siguiente( E#)'+-/ +E/)'L 9

    $isponemos el te%to de la forma siguiente y aplicamos la transformacin indicada(

    E ) + - E ) '# ' / + / L 9

    )omando como ' la matriz

    GJ

    EBA

    & y como : la matriz

    J

    A

    hacemos (

    +A I ???A X PA@ Y ?B X P@@ YA@ ?mod F@

    + I ???J X PA@ Y ?G X P@@YJ@ ?mod F@

    $onde P, y P) son dos caracteres del mensaje sin cifrar, C, 6 C) loscorrespondientes cifrados y H.

    +ontinuando con el ejemplo y codificando

    siendo E I D y # I J, entonces(

    +AI ???A X D@ Y ?B X J@ Y A@?mod F@ I DCH ?mod F@ I AC ?mod F@ ?letra /@

    +I ???J X D@ Y ? G X J@ Y J@@?mod F@ I HJ ?mod F@ I C ?mod F@ ?letra $@

    +

    =

    J

    A

    GJ

    EBA

    E

    A

    E

    A

    P

    P

    C

    C?mod F@

    6 as sucesiamente para cada bloque de caracteres, resultando(

    E # ) ' + - / + E / ) ' L 9D

    J

    A

    A G M A

    H

    A

    C

    J G D A

    C

    A

    A

    M

    A A

    J D

    E#

  • 7/22/2019 CRIPTOSISTEMAS CLSICOS

    13/13

    )e%to cifrado( /$)+87+/6#/+'=3$

    La consecuencia es que el mismo car"cter se codifica de distintas formas ?la primera Ese ha codificado como una /, y la segunda E del te%to original se ha codificado comouna #@.

    El descifrado del sistema de 3ill es sim!trico ?la clae de desencriptacin secalcula a partir de la clae de encriptacin y iceersa@ y ser" aplicar la transformacin(

    P I 'NAZ ?+ [ :@ ?mod F@ , donde 'NAes la matriz inersa de ' mod F

    Para calcular la inersa mdulo .de una matriz cualquiera( #i Aes una matriztal que m.c.d?det?A@, .@IA y llamamos d I det?A@ entonces A+,I d+,.9donde d+,es elinerso de dmdulo .y 9es la transpuesta de la matriz adjunta de A.

    8amos a cifrar la palabra 2'9 utilizando un cifrado poligr"fico de tamaKo G.

    )omemos sus equialentes num!ricos(2 ' 9AG A D

    #i las matrices de cifrado ' y : son(

    ' I

    =

    EBAA

    EAA

    GJEB

    AAA

    EAA

    GJA

    & : I

    J

    J

    J

    $et?'@ I d I G entonces tendremos que dNAI AM pues G.AM I DB I A?mod F@& por otrolado

    'dj?'@ I

    =

    =EBDED

    AEHG

    JGED

    ADG

    AEG

    JGG

    & 'dj ?'@tI

    AAJ

    DEG

    GGG

    Por lo que 'NAI AM.

    EBDED

    AEHG

    JGED

    I

    =

    MAMJ

    AAAFA

    EBAEB

    AMAMJ

    AAAJA

    AAA

    Para cifrar

    =

    =

    AB

    F

    H

    ED

    A

    AG

    AAA

    EAA

    GJA

    G

    E

    A

    C

    C

    C

    el resultado es \H HC NAA] es decir \AF F AB] tom"ndolo mdulo H. 's que el bloque

    que corresponde a 2'9 es =3P. Probemos con el descifrado(

    =

    =

    G

    A

    AG

    AB

    F

    H

    AMAMJ

    AAAJA

    AAA

    G

    E

    A

    P

    P

    P

    el resultado es como era de preer \AG A D], es decir el bloque 2'9 original.