Criptografía clásica.

En la criptografía clásica existen varias técnicas básicas de cifrado que se han utilizado desde el principio de nuestra civilización hasta mediados del siglo pasado, éstas son:

Sistemas de cifrado clásico

Sustitución.

En esta técnica de cifrado se establece una correspondencia entre los signos del alfabeto en el que está escrito el mensaje original y los elementos de otro alfabeto que puede ser el mismo o distinto. El mensaje cifrado tiene el mismo orden, cantidad de signos y estructura que el mensaje original, pero las palabras no tienen significado salvo que se conozca la equivalencia de los nuevos caracteres. El emisor y receptor deben establecer las condiciones y alfabeto a utilizar. El primer método conocido es el de Polybios, del siglo II ane.

 

Aunque existen muchas variantes podemos considerar los siguientes tipos básicos:

 

Monoalfabética. Se establece una equivalencia entre alfabetos signo a signo. Para identificar el algoritmo se puede utilizar el análisis de frecuencias. Uno de los primeros en utilizar este cifrado fue Julio Cesar, lo podemos ver en el siguiente ejemplo:

 

A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z Alfabeto
D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z A B C Alteración
E J E M P L O D E C I F R A D O C E S A R E J E M P L Mensaje Original
H M H O S Ñ R G H F L I U D G R F H V D U H M H O S Ñ Mensaje Cifrado

 

Polialfabética. La sustitución se aplica carácter a carácter y varía en función de la posición que ocupe éste dentro del texto claro. En realidad se utilizan varios alfabetos, realizándose múltiples sustituciones monoalfabéticas. Un mismo signo o letra, puede ser representado en un mismo mensaje con más de un carácter. La forma de operar es la siguiente: Se toman las letras del mensaje original, fijándonos en las columnas, y se cruzan con la letra que le corresponde con clave utilizada que está situada en las filas. La primera vez que se conoce un instrumento para este cifrado es el realizado por León Battista Alberti en 1.466, denominado Disco de Alberti.

 

En el ejemplo, el cifrado Vigenère o Della Porta, posterior al de Alberti.

 

A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z Alfabeto
A A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z
B B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z A
C C D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z A B
D D E F G H I J K L M N Ñ O P Q R S T U V W X Y Z A B C
E E F G H I J K L M N Ñ O P Q R S T U V W X Y Z A B C D
F F G H I J K L M N Ñ O P Q R S T U V W X Y Z A B C D E
G G H I J K L M N Ñ O P Q R S T U V W X Y Z A B C D E F
H H I J K L M N Ñ O P Q R S T U V W X Y Z A B C D E F G
I I J K L M N Ñ O P Q R S T U V W X Y Z A B C D E F G H
J J K L M N Ñ O P Q R S T U V W X Y Z A B C D E F G H I
K K L M N Ñ O P Q R S T U V W X Y Z A B C D E F G H I J
L L M N Ñ O P Q R S T U V W X Y Z A B C D E F G H I J K
M M N Ñ O P Q R S T U V W X Y Z A B C D E F G H I J K L
N N Ñ O P Q R S T U V W X Y Z A B C D E F G H I J K L M
Ñ Ñ O P Q R S T U V W X Y Z A B C D E F G H I J K L M N
O O P Q R S T U V W X Y Z A B C D E F G H I J K L M N Ñ
P P Q R S T U V W X Y Z A B C D E F G H I J K L M N Ñ O
Q Q R S T U V W X Y Z A B C D E F G H I J K L M N Ñ O P
R R S T U V W X Y Z A B C D E F G H I J K L M N Ñ O P Q
S S T U V W X Y Z A B C D E F G H I J K L M N Ñ O P Q R
T T U V W X Y Z A B C D E F G H I J K L M N Ñ O P Q R S
U U V W X Y Z A B C D E F G H I J K L M N Ñ O P Q R S T
V V W X Y Z A B C D E F G H I J K L M N Ñ O P Q R S T U
W W X Y Z A B C D E F G H I J K L M N Ñ O P Q R S T U V
X X Y Z A B C D E F G H I J K L M N Ñ O P Q R S T U V W
Y Y Z A B C D E F G H I J K L M N Ñ O P Q R S T U V W X
Z Z A B C D E F G H I J K L M N Ñ O P Q R S T U V W X Y
E J E M P L O D E C I F R A D O V I G E N E R E E J E Mensaje original
E S T O E S E S T O P A E S T O E S E S T O P A E S T Clave
I B X A T D S V X Q X F V S W D Z A K W G S H E I B X Mensaje Cifrado

 

Ejemplo de Cifrado Vigenère en lenguaje Java

Cifrado Vigenère
Cifrado Vigenère

 

Ejemplo de Cifrado Polybios en lenguaje Java

Cifrado Polybios
Cifrado Polybios

 

Homófonica

Para evitar el análisis de frecuencias surge la sustitución Homofónica, esta permite establecer una equivalencia múltiple de varios signos respecto a uno sólo del mensaje original. Sin embargo, esto no quiere decir que sea invulnerable, las letras tienen ciertas características que, aun con mayor dificultad, revelarían la correspondencia. A diferencia de los cifrados polialfabéticos, cada uno de los números del ejemplo anterior se correspondería con una única letra, no variando el significado de cada elemento del texto cifrado en su correspondencia con el texto claro.

Spanish Strip Cipher (SSC)

Un ejemplo cercano es el utilizado en la guerra civil Española (1.936-1.939), denominado Spanish Strip Cipher (SSC) aunque se utilizada desde el siglo XIX   Este método es un cifrado de sustitución, en el que una letra de texto en claro se le puede asignar entre tres o cinco homófonos en el texto cifrado. En la fotografía una herramienta realizada con materiales de bajo coste.

 

Uno de los más conocidos es el utilizado por el ejército EE.UU. en la segunda guerra mundial. Para ello “alistaron”, de sus reservas, a 30 indios Navajos, estrategia similar a la seguida en la 1ª guerra mundial con los Cherokee. El objetivo era provocar dos dificultades:

  • Japón desconocía el idioma.
  • El idioma Navajo tiene tres formas distintas para las seis primeras letras más frecuentes del inglés, dos para las seis siguientes y una para el resto.

Si hubiese sido un indio Navajo estaría muy cabreado, en el 2.001 fue cuando les otorgaron una medalla por los servicios prestados (un poco tarde) y suponiendo que matar tenga premio.

 

En el ejemplo se toma nuestro alfabeto y se altera el orden de las letras, construyéndose una matriz donde se asigna un dígito aleatorio en la intersección de las mismas. La disposición del alfabeto, en columnas y de la clave en las filas es aleatoria así como el valor de la intersección.

 

 

ATCDHFGEKOIVZNÑJRWPSBQLUXYM

A 274 650 380 353 326 299 278 245 494 461 440 915 413 487 468 433 908 406 379 224 834 657 622 595 568 932 293
T 137 642 388 361 334 307 270 253 502 453 448 923 421 394 367 340 313 264 259 232 138 641 638 611 584 948 802
C 920 659 383 356 329 302 275 248 485 470 431 906 404 377 350 323 296 281 242 215 830 661 618 591 564 928 803
D 838 653 626 599 572 936 545 518 491 464 437 912 410 620 593 566 930 539 512 221 831 660 619 592 565 929 351
H 132 645 385 358 331 304 273 250 804 324 297 280 243 216 189 337 310 267 256 229 839 652 627 600 573 937 498
F 921 646 389 362 335 308 269 254 805 457 193 166 846 390 363 336 309 268 255 228 135 644 386 359 332 305 634
G 833 658 621 594 567 931 540 513 806 607 192 165 845 526 499 456 445 850 418 391 828 663 616 589 562 926 496
E 283 648 382 355 328 301 276 247 807 459 191 164 832 637 610 583 947 556 529 226 199 172 145 108 685 712 808
K 282 649 381 354 327 300 277 246 495 460 441 916 414 636 609 582 800 555 528 225 198 171 144 809 684 711 109
O 829 662 617 590 563 927 536 509 482 473 428 903 401 374 347 320 801 284 239 212 185 158 131 110 671 698 810
I 840 651 628 601 574 938 547 520 493 462 439 914 412 486 469 432 907 405 378 223 196 169 142 811 682 709 111
V 844 647 632 605 578 942 551 524 497 458 443 918 416 633 606 579 943 552 525 227 200 173 146 112 686 713 812
Z 136 643 387 360 333 306 271 252 501 454 447 922 420 393 366 339 312 265 258 231 204 177 150 113 690 717 813
N 837 654 625 598 571 935 544 517 490 465 436 911 409 631 604 577 941 550 523 220 444 919 417 814 679 706 114
Ñ 836 655 624 597 570 934 543 516 489 466 435 910 408 630 603 576 940 549 522 219 580 944 553 815 678 705 115
J 207 180 153 100 693 720 542 515 488 467 434 909 407 629 602 575 939 548 521 218 442 917 415 116 677 704 816
R 197 170 143 101 683 710 541 514 635 608 581 945 554 527 500 455 446 851 419 392 365 163 843 117 676 703 817
W 205 178 151 102 691 718 557 530 503 452 449 924 422 395 368 341 314 263 260 233 206 179 152 118 692 719 818
P 188 161 134 103 674 701 537 510 483 472 429 904 402 375 348 321 294 849 240 213 186 159 901 119 672 699 819
S 194 167 140 104 680 707 538 511 484 471 430 905 403 376 349 322 295 848 241 214 187 160 133 120 673 700 820
B 202 175 148 105 688 715 546 519 492 463 438 913 411 384 357 330 303 847 249 222 195 168 141 121 681 708 821
Q 201 174 147 106 687 714 272 251 352 325 298 279 244 217 190 338 311 266 257 230 203 176 149 822 689 716 122
L 364 162 842 107 675 702 535 508 481 474 427 902 400 373 346 319 292 285 238 211 184 157 130 123 670 697 823
U 827 664 615 588 561 997 534 507 480 475 426 880 372 399 345 318 291 286 237 210 183 156 129 124 824 696 669
X 826 665 614 587 560 998 533 506 479 476 425 900 398 371 344 317 290 287 236 209 182 155 128 825 668 695 125
Y 825 666 613 586 559 999 532 505 478 477 424 899 397 370 343 316 289 288 235 208 181 154 127 126 667 694 826
M 139 640 639 612 585 949 558 531 504 451 450 925 423 396 369 342 315 262 261 234 835 656 623 596 569 933 946
C I F R A D O H O M O F O N I C O Mensaje original
C L A V E R E P E T I D A C L A V Clave
383 427 299 943 283 101 459 674 459 802 462 936 461 377 427 380 458 Mensaje Cifrado

 

 

 

 

Poligrámica cifrado en bloque. En las anteriores versiones se cifraba un signo cada vez, en este caso se toman bloques de varios signos.

 

Transposición

Técnica de cifrado que consiste en alterar la posición de los símbolos del mensaje original colocándolos en un orden distinto, de ésta forma el criptograma contiene los mismos símbolos del texto origen, pero colocados de forma ininteligible. Todos los cifradores por transposición son cifradores monoalfabéticos en bloque. El primer ejemplo de esta técnica fue la Escítala Ateniense. Las variantes principales son:

 

Por Columnas.

Se toma el texto y se introduce en una matriz, las celdas sin valor se rellenan con un valor predefinido (O). Para cifrar se toman las columnas y se ordenan como filas, concatenándose posteriormente.

 

Mensaje original

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
S E T O M A E L T E X T O Y S E I N T R O D U C
E E N U N A M A T R I Z D E O R D E N P R E D E
F I N I D O . P A R A C I F R A R S E T O M A N
L A S C O L U M N A S C O M O F I L A S O O O O

Mensaje cifrado:

1 2 3 4 5 6 7 8 9 10 11 12
SEFL EEIA TNNS OUIC MNDO AAOL EM.U LAPM TTAN ERRA XIAS TZCC
13 14 15 16 17 18 19 20 21 22 23 24
ODIO YEFM SORO ERAF IDRI NESL TNEA RPTS DEMO OROO UDAO CENO

 

 

Por Filas

Se toma el texto y se introduce en las columnas de una matriz, las celdas sin valor se rellenan con un valor predefinido (O). Para cifrar se toman las filas y se concatenan.

 

Mensaje original

S M T O I O E N T D D R F D A I R O L O N
E A E Y N D E A R E E E I O R F S M A L A
T E X S T U N M I O N D N . A R E A S U S
O L T E R C U A Z R P E I P C A T N C M O

 

Mensaje cifrado

S M T O I O E N T D D R F D A I R O L O N E A E Y N D E A R E E E I O R F S M A L A T E X S T U N M I O N D N . A R E A S U S O L T E R C U A Z R P E I P C A T N C M O

 

 

Por Bloques

Se divide el texto origen en bloques de igual tamaño permutándose los signos del bloque.

Mensaje original

S E D I V I D E E L T E X T O E N B L O Q U E S

 

Permutaciones del bloque

1-4
2 S E D I V 5
3 V D I S E 2
4-3
5-1

Mensaje cifrado

V D I S E E L D E I T O E X T L O N B E S U E Q

 

 

 

Por Series

Los signos del mensaje original se ordenan en función de series. El conjunto de signos, su relación y ordenación pueden ser tan variado como nuestra imaginación nos permita. Se pueden proponer tomar los signos que ocupen posiciones pares de 2 en 2 seguidos de los impares, …

 

Mensaje original

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
S E P U E D E P R O P O N E R T O M A R

 

 

Mensaje cifrado

2 4 1 3 6 8 5 7 10 12 9 11 14 16 13 15 18 20 17 19
E U S P D P E E O O R P E T N R M R O A