Para empezar, vamos a asegurarnos de entender la diferencia entre un cifrado y un código. De hecho, te desafío a que en este momento te levantes y le hagas esa misma pregunta a la primera persona que veas. Mientras tú haces eso yo te espero aquí y admiro esta máquina de cifrado de Lorenz...
¿Ya tienen una respuesta? Para la mayoría de las personas, es como si les preguntaras la diferencia entre mezclar y combinar. Es una pregunta difícil. Afortunadamente, tenemos un video sobre el código Morse el cual presenta la idea de un libro de códigos.¡Revísalo! En el video vemos cómo los operadores de telégrafo podían ahorrar tiempo al mapear enunciados completos en palabras más cortas.
Aquí, la palabra "accountant" es un código para "Come at once. Do not delay" (Ven de inmediato. No te demores). Un código es un mapeo de alguna unidad significativa, como una palabra, enunciado o frase, en algo más, típicamente un grupo más corto de símbolos. Por ejemplo, podríamos hacer un código donde la palabra manzana se escriba como 67. Por lo general, los códigos son maneras de ahorrar tiempo, y cuando se envían mensajes alrededor del mundo, el tiempo es dinero.
Un libro de códigos es sencillamente una lista de estos mapeos. Los libros de códigos han estado presentes desde que comenzamos a escribir. Solo recuerda, un código requiere de un libro de códigos.
Bien, ¿y qué hay de los cifrados?
Lo más importante es que los cifrados no involucran significados. En lugar de eso, son operaciones mecánicas, conocidas como algoritmos, que se realizan sobre letras individuales o sobre pedazos pequeños de letras. Por ejemplo, en el cifrado César vimos cómo cada letra en el alfabeto fue mapeada a una letra diferente: A=D,  B=E y C=F, de acuerdo a un desplazamiento específico, en este caso tres. Este tipo de cifrado se conoce como cifrado por desplazamiento. Revisa cómo funciona esto al usar la siguiente herramienta interactiva:
En este caso, no necesitamos un libro de códigos. En lugar de eso, seguimos una serie de instrucciones (desplazar una letra por un cierto número) también conocidas como un algoritmo. El algoritmo requiere un pedazo de información compartida conocida como una llave. En el ejemplo anterior la llave es 3. Esta llave compartida es requerida por ambas partes para cifrar (HELLO = KHOOR) y descifrar (KHOOR=HELLO) mensajes.
Así que de regreso a nuestra pregunta: ¿cuál es la diferencia entre los códigos y los cifrados? Los códigos por lo general operan sobre la semántica, significados, mientras que los cifrados operan sobre la sintaxis, símbolos. Un código se almacena como un mapeo en un libro de códigos, mientras que los cifrados transforman símbolos individuales de acuerdo con un algoritmo.
Ahora, en el siguiente ejercicio vamos a revisar la mecánica involucrada en el cifrado César.