stringtranslate.com

Principio de Kerckhoff

El principio de Kerckhoffs (también llamado desiderátum , suposición , axioma , doctrina o ley de Kerckhoffs ) de la criptografía fue enunciado por el criptógrafo de origen holandés Auguste Kerckhoffs en el siglo XIX. El principio sostiene que un criptosistema debe ser seguro, incluso si todo lo relacionado con el sistema, excepto la clave , es de conocimiento público. Este concepto es ampliamente aceptado por los criptógrafos, en contraste con la seguridad por oscuridad , que no lo es.

El principio de Kerckhoff fue formulado por el matemático estadounidense Claude Shannon como "el enemigo conoce el sistema", [1] es decir, "uno debe diseñar sistemas bajo el supuesto de que el enemigo se familiarizará inmediatamente con ellos". En esa forma, se llama máxima de Shannon .

Otra formulación del investigador y profesor estadounidense Steven M. Bellovin es:

En otras palabras, diseñe su sistema asumiendo que sus oponentes lo conocen en detalle. (Un ex funcionario del Centro Nacional de Seguridad Informática de la NSA me dijo que la suposición estándar allí era que el número de serie 1 de cualquier dispositivo nuevo era entregado al Kremlin.) [2]

Orígenes

La invención de la telegrafía cambió radicalmente las comunicaciones militares y aumentó drásticamente la cantidad de mensajes que debían protegerse del enemigo, lo que llevó al desarrollo de cifrados de campo que debían ser fáciles de usar sin grandes libros de códigos confidenciales propensos a ser capturados en el campo de batalla. [3] Fue este entorno el que condujo al desarrollo de los requisitos de Kerckhoffs.

Auguste Kerckhoffs fue profesor de lengua alemana en la École des Hautes Etudes Commerciales (HEC) de París. [4] A principios de 1883, el artículo de Kerckhoffs, La Cryptographie Militaire , [5] fue publicado en dos partes en el Journal of Military Science , en el que enunciaba seis reglas de diseño para cifrados militares .  [6] Traducidos del francés, son: [7] [8]

  1. El sistema debe ser prácticamente, si no matemáticamente, indescifrable;
  2. No debería requerir secreto y no debería ser un problema si cae en manos enemigas;
  3. Debe ser posible comunicar y recordar la clave sin utilizar notas escritas, y los corresponsales deben poder cambiarla o modificarla a voluntad;
  4. Debe ser aplicable a las comunicaciones telegráficas;
  5. Debe ser portátil y no se requieren varias personas para manipularlo u operarlo;
  6. Por último, dadas las circunstancias en las que se va a utilizar, el sistema debe ser fácil de usar y no debe resultar estresante ni requerir que sus usuarios conozcan y cumplan una larga lista de reglas.

Algunas reglas ya no son relevantes, dada la capacidad de las computadoras para realizar cifrados complejos. La segunda regla, conocida ahora como el principio de Kerckhoff , sigue siendo de importancia crítica. [9]

Explicación del principio

Kerckhoffs consideraba que la criptografía era un rival y una mejor alternativa a la codificación esteganográfica , que era común en el siglo XIX para ocultar el significado de los mensajes militares. Un problema con los esquemas de codificación es que se basan en secretos que están en manos de los humanos, como los "diccionarios" que revelan, por ejemplo, el significado secreto de las palabras. Los diccionarios de tipo esteganográfico, una vez revelados, comprometen permanentemente el sistema de codificación correspondiente. Otro problema es que el riesgo de exposición aumenta a medida que aumenta el número de usuarios que guardan los secretos.

En cambio, la criptografía del siglo XIX utilizaba tablas sencillas que permitían la transposición de caracteres alfanuméricos, generalmente con intersecciones de filas y columnas que podían modificarse mediante claves que, por lo general, eran cortas, numéricas y podían memorizarse. El sistema se consideraba "indescifrable" porque las tablas y las claves no transmiten significado por sí mismas. Los mensajes secretos sólo pueden verse comprometidos si un conjunto coincidente de tabla, clave y mensaje cae en manos del enemigo en un período de tiempo relevante. Kerckhoff consideraba que los mensajes tácticos sólo tenían unas pocas horas de relevancia. Los sistemas no están necesariamente comprometidos, porque sus componentes (es decir, tablas de caracteres alfanuméricos y claves) pueden modificarse fácilmente.

Ventajas de las claves secretas

Se supone que el uso de la criptografía segura sustituye el difícil problema de mantener seguros los mensajes por uno mucho más manejable, el de mantener seguras claves relativamente pequeñas. Un sistema que requiere secreto a largo plazo para algo tan grande y complejo como el diseño completo de un sistema criptográfico obviamente no puede lograr ese objetivo. Sólo sustituye un problema difícil por otro. Sin embargo, si un sistema es seguro incluso cuando el enemigo sabe todo excepto la clave, entonces todo lo que se necesita es lograr mantener las claves en secreto. [10]

Hay muchas formas de descubrir los detalles internos de un sistema ampliamente utilizado. La más obvia es sobornar, chantajear o amenazar de alguna otra forma al personal o a los clientes para que expliquen el funcionamiento del sistema. En una guerra, por ejemplo, es probable que un bando se apodere de algunos equipos y personas del otro bando. Además, cada bando utilizará espías para reunir información.

Si un método implica software, alguien podría hacer volcados de memoria o ejecutar el software bajo el control de un depurador para comprender el método. Si se utiliza hardware, alguien podría comprar o robar parte del hardware y crear los programas o dispositivos necesarios para probarlo. El hardware también se puede desmontar para poder examinar los detalles del chip bajo el microscopio.

Mantener la seguridad

Una generalización que algunos hacen a partir del principio de Kerckhoff es: "Cuanto menos y más simples sean los secretos que uno debe guardar para garantizar la seguridad del sistema, más fácil será mantener la seguridad del sistema". Bruce Schneier lo relaciona con la creencia de que todos los sistemas de seguridad deben estar diseñados para fallar con la mayor elegancia posible:

Este principio se aplica más allá de los códigos y cifras, a los sistemas de seguridad en general: cada secreto crea un punto de falla potencial . El secreto, en otras palabras, es una causa primordial de fragilidad y, por lo tanto, algo que probablemente haga que un sistema sea propenso a un colapso catastrófico. Por el contrario, la apertura proporciona ductilidad. [11]

Cualquier sistema de seguridad depende fundamentalmente de mantener ciertas cosas en secreto. Sin embargo, el principio de Kerckhoff señala que las cosas que se mantienen en secreto deben ser aquellas cuyo cambio sea menos costoso si se divulgan inadvertidamente. [9]

Por ejemplo, un algoritmo criptográfico puede implementarse mediante hardware y software ampliamente distribuidos entre los usuarios. Si la seguridad depende de mantener ese secreto, entonces la divulgación conduce a importantes dificultades logísticas en el desarrollo, prueba y distribución de implementaciones de un nuevo algoritmo: es "frágil". Por otro lado, si mantener el secreto del algoritmo no es importante, pero sólo las claves utilizadas con el algoritmo deben ser secretas, entonces la divulgación de las claves simplemente requiere el proceso más simple y menos costoso de generar y distribuir nuevas claves. [12]

Aplicaciones

De acuerdo con el principio de Kerckhoff, la mayoría de la criptografía civil utiliza algoritmos conocidos públicamente. Por el contrario, los cifrados utilizados para proteger información clasificada del gobierno o militar suelen mantenerse en secreto (véase Cifrado de tipo 1 ). Sin embargo, no se debe asumir que los cifrados gubernamentales o militares deben mantenerse en secreto para mantener la seguridad. Es posible que se pretenda que sean tan sólidos criptográficamente como los algoritmos públicos, y la decisión de mantenerlos en secreto esté en consonancia con una postura de seguridad por capas.

Seguridad a través de la oscuridad

Es bastante común que las empresas, y a veces incluso los organismos de normalización como en el caso del cifrado CSS en los DVD , mantengan en secreto el funcionamiento interno de un sistema. Algunos [¿ quiénes? ] sostienen que esta "seguridad por oscuridad" hace que el producto sea más seguro y menos vulnerable a los ataques. Un contraargumento es que mantener en secreto el funcionamiento interno puede mejorar la seguridad a corto plazo, pero a largo plazo, solo se debe confiar en los sistemas que han sido publicados y analizados.

Steven Bellovin y Randy Bush comentaron: [13]

La seguridad a través de la oscuridad se considera peligrosa

Ocultar las vulnerabilidades de seguridad en algoritmos, software y/o hardware reduce la probabilidad de que se reparen y aumenta la probabilidad de que se exploten. Desalentar o prohibir el debate sobre las debilidades y vulnerabilidades es extremadamente peligroso y perjudicial para la seguridad de los sistemas informáticos, la red y sus ciudadanos.

El debate abierto fomenta una mayor seguridad

La larga historia de la criptografía y el criptoanálisis ha demostrado una y otra vez que el análisis y la discusión abierta de algoritmos revelan debilidades que no fueron consideradas por los autores originales y, por lo tanto, conducen a algoritmos mejores y más seguros. Como Kerckhoffs señaló sobre los sistemas de cifrado en 1883 [Kerc83], "No es necesario que el sistema sea secreto y que pueda ser robado por el enemigo sin causar problemas".

Referencias

  1. ^ Shannon, Claude (4 de octubre de 1949). "Teoría de la comunicación de los sistemas secretos". Bell System Technical Journal . 28 (4): 662. doi :10.1002/j.1538-7305.1949.tb00928.x . Consultado el 20 de junio de 2014 .
  2. ^ Bellovin, Steve (23 de junio de 2009). "Seguridad a través de la oscuridad". RISKS Digest . 25 (71). Archivado desde el original el 10 de junio de 2011 . Consultado el 18 de septiembre de 2010 .
  3. ^ "[3.0] El auge de los cifrados de campo". vc.airvectors.net . Archivado desde el original el 2024-01-11 . Consultado el 2024-01-11 .
  4. ^ "August Kerckhoffs: el padre de la seguridad informática - Historia". china.exed.hec.edu . HEC Paris . Archivado desde el original el 26 de noviembre de 2022 . Consultado el 26 de noviembre de 2022 .
  5. ^ Petitcolas, Fabien, Versión electrónica y traducción al inglés de "La cryptographie militaire", archivado desde el original el 10 de octubre de 2015 , consultado el 29 de junio de 2004
  6. ^ Kahn, David (1996), Los descifradores de códigos: la historia de la escritura secreta (Segunda ed.), Scribnerspág.235
  7. Kerckhoffs, Auguste (enero de 1883). «La cryptographie militaire» [Criptografía militar] (PDF) . Journal des sciences militaires [ Revista de ciencias militares ] (en francés). IX : 5–83. Archivado (PDF) desde el original el 20 de febrero de 2021. Consultado el 17 de diciembre de 2019 .
  8. Kerckhoffs, Auguste (febrero de 1883). «La cryptographie militaire» [Criptografía militar] (PDF) . Journal des sciences militaires [ Revista de ciencias militares ] (en francés). IX : 161–191. Archivado (PDF) desde el original el 20 de febrero de 2021. Consultado el 17 de diciembre de 2019 .
  9. ^ ab Savard, John JG (2003). "Un compendio criptográfico: el cifrado ideal". www.quadibloc.com . Archivado desde el original el 26 de junio de 2020 . Consultado el 26 de noviembre de 2022 .
  10. ^ Massey, James L. (1993). "Apuntes del curso". Criptografía: fundamentos y aplicaciones . pág. 2.5.
  11. ^ Mann, Charles C. (septiembre de 2002), "Homeland Insecurity", The Atlantic Monthly , 290 (2), archivado desde el original el 2008-07-07 , consultado el 2017-03-08 .
  12. ^ "Una interpretación moderna de Kerckhoff". Rambus . 21 de septiembre de 2020. Archivado desde el original el 26 de noviembre de 2022 . Consultado el 26 de noviembre de 2022 .
  13. ^ Bellovin, Steven; Bush, Randy (febrero de 2002), Security Through Obscurity Considered Dangerous, Internet Engineering Task Force (IETF), archivado desde el original el 1 de febrero de 2021 , consultado el 1 de diciembre de 2018

Notas

Este artículo incorpora material del artículo de Citizendium "El principio de Kerckhoff", que se encuentra bajo la licencia Creative Commons Attribution-ShareAlike 3.0 Unported pero no bajo la GFDL .

Enlaces externos