A cualquiera le basta con consultar el manual para saber cómo funciona el mecanismo que abre y cierra la cerradura de la puerta de entrada. Aun así, podemos salir de casa con tranquilidad porque el secreto está en la llave que tenemos en la mano y no en el funcionamiento de la cerradura. En el mundo de la criptografía existe un antiguo principio que recoge exactamente esta misma idea. Es el «principio de Kerckhoffs (Kerckhoffs's Principle)».
En pocas palabras, el principio de Kerckhoffs es un principio de diseño según el cual «un sistema criptográfico debe ser seguro aunque se conozca todo salvo la clave». La idea es diseñarlo de modo que baste con proteger una sola clave, pequeña y fácil de cambiar, en vez de intentar proteger el sistema ocultando el método.
Repasaremos, en orden, el contexto del siglo 19 en el que nació este principio, por qué es más seguro mantener en secreto solo la clave, qué sistemas fallaron al confiar en la ocultación y qué lecciones deja todo ello para el diseño de sistemas seguros en la actualidad.

Qué necesita un sistema de cifrado para ser seguro aunque su método sea público
¿De dónde viene el principio de Kerckhoffs?

El autor de este principio fue Auguste Kerckhoffs, lingüista y criptógrafo de origen neerlandés. Investigaba la criptografía mientras enseñaba alemán en una escuela de posgrado en administración de empresas en París. En 1883 publicó en dos entregas, en una revista académica militar, un artículo titulado «La criptografía militar (La Cryptographie Militaire)».
(1) El telégrafo transformó el campo de batalla
En aquella época, la difusión del telégrafo aumentó considerablemente el volumen de mensajes que se intercambiaban en el campo de batalla. También creció el riesgo de que todas las comunicaciones quedaran expuestas si el enemigo se apoderaba de los voluminosos libros de claves secretos que se llevaban consigo. Kerckhoffs formuló seis condiciones que debía cumplir la criptografía militar para adaptarse a esa realidad.
(2) La segunda de las seis condiciones
Entre las seis condiciones figuraban que el cifrado debía ser prácticamente imposible de descifrar, que la clave debía poder memorizarse sin apuntarla y que una sola persona debía poder manejar el sistema. La segunda condición decía que «el sistema no debe requerir secreto y debe poder caer en manos del enemigo sin causar problemas». Hoy, cuando se habla del principio de Kerckhoffs, se hace referencia precisamente a esta condición.
¿Por qué es más seguro ocultar solo la clave?

Mantener en secreto todo el método de cifrado puede parecer más seguro, pero en la práctica ocurre lo contrario. En un artículo de 1949, el matemático estadounidense Claude Shannon reformuló esta idea en una sola frase: «El enemigo conoce el sistema». También se la conoce como la máxima de Shannon.
- El secreto acaba por salir a la luz (Inevitable Disclosure). El enemigo puede capturar equipos en el campo de batalla, el software puede examinarse con herramientas de análisis y las personas pueden ser sobornadas o amenazadas.
- El costo de sustitución es distinto (Cost of Replacement). Si se revela el método, hay que rehacer todos los equipos y programas. Si se revela la clave, basta con distribuir una nueva.
- Hacer público el método permite someterlo a escrutinio (Public Scrutiny). Cuando se publica el método, especialistas de todo el mundo pueden detectar sus puntos débiles. Cuanto más tiempo resista ese examen, más confianza merece.
El investigador estadounidense en seguridad Steven M. Bellovin cuenta que un antiguo miembro de la Agencia de Seguridad Nacional de Estados Unidos le dijo que allí se partía de la premisa de que la unidad número 1 de cualquier equipo nuevo caería de inmediato en manos del país adversario. La idea central de este principio es que, cuantos menos secretos haya que proteger y más sencillos sean, más fácil será mantenerlos a salvo.
Casos en los que falló la seguridad basada en la ocultación

La seguridad que depende de ocultar el método suele llamarse «seguridad por oscuridad (Security through Obscurity)». La historia ofrece muchos casos en los que este enfoque duró poco.
El cableado de Enigma
Enigma, la máquina de cifrado que las fuerzas armadas alemanas utilizaron desde la década de 1920, mantenía en secreto tanto su estructura como la configuración que cambiaba a diario. Sin embargo, a finales de 1932, el matemático polaco Marian Rejewski aplicó un análisis matemático a los documentos obtenidos por los servicios de inteligencia franceses y descubrió el cableado interno de la máquina. Una vez revelada la estructura, la configuración quedó como única línea de defensa, y esto sentó las bases para que más adelante los Aliados descifraran Enigma.
El sistema anticopia de los DVD
En la década de 1990, los DVD incorporaban un sistema que protegía el contenido de video mediante un método de cifrado secreto. Sin embargo, en 1999 se difundió por Internet un programa capaz de descifrarlo. El sistema quedó prácticamente inutilizado y tampoco había forma de cambiar el método en los numerosos dispositivos que ya se habían vendido.
El chip de las tarjetas de transporte
A finales de la década de 2000, un grupo de investigadores analizó el cifrado secreto de un chip de tarjetas sin contacto que se usaba en tarjetas de transporte y credenciales de acceso en varias ciudades del mundo. Para descubrir el método, los investigadores llegaron a retirar capas del chip y examinar sus circuitos al microscopio. Al hacerlo, también salieron a la luz las debilidades que habían permanecido ocultas.
Lecciones para el diseño de sistemas seguros en la actualidad

La mayor parte de la criptografía civil moderna sigue el principio de Kerckhoffs y hace públicos sus métodos.
(1) Un estándar elegido mediante un concurso público
En 1997, el Instituto Nacional de Estándares y Tecnología de Estados Unidos (NIST) abrió una convocatoria pública para seleccionar un nuevo estándar de cifrado. Durante varios años, investigadores de todo el mundo pusieron a prueba los métodos candidatos sometiéndolos a ataques. Como resultado, en 2000 se eligió el método creado por dos investigadores belgas, que se convirtió en el estándar de cifrado avanzado (Advanced Encryption Standard), ampliamente utilizado hoy.
(2) Centrar los esfuerzos en la gestión de las claves
Como el método es público, la seguridad en la práctica depende de lo bien que se generen, almacenen y cambien las claves. La costumbre de usar contraseñas largas y distintas y de cambiarlas de inmediato si se sospecha que se han filtrado se basa en el mismo principio.
(3) La ocultación como medida complementaria
Abstenerse de divulgar el método no es en sí perjudicial. Debe ser solo una capa más de defensa, sin convertirse en el único fundamento de la seguridad.
Han pasado más de 140 años desde que Kerckhoffs formuló este principio. En ese tiempo, el telégrafo dio paso a Internet y los libros de claves a los programas informáticos, pero la idea de fondo sigue vigente. De hecho, ahora que cualquiera puede examinar el funcionamiento interno de un programa, el principio se ha vuelto aún más necesario.
Hay que partir de que cualquier secreto puede salir a la luz algún día y diseñar el sistema para que siga siendo seguro cuando eso ocurra.
Dar por hecho que el adversario lo sabe todo y proteger bien una sola clave es el primer paso para diseñar un sistema de seguridad en el que se pueda confiar.