
EITC/IS/CCF Classical Cryptography Fundamentals es el programa europeo de certificación de TI sobre aspectos teóricos y prácticos de la criptografía clásica, que incluye tanto la criptografía de clave privada como la de clave pública, con una introducción a los cifrados prácticos ampliamente utilizados en Internet, como el RSA.
El plan de estudios de Fundamentos de criptografía clásica EITC/IS/CCF cubre la introducción a la criptografía de clave privada, aritmética modular y cifrados históricos, cifrados de flujo, números aleatorios, el cifrado incondicionalmente seguro One-Time Pad (OTP) (bajo el supuesto de proporcionar una solución al problema de distribución de claves, como se da, por ejemplo, por la distribución de claves cuánticas, QKD), registros de desplazamiento de retroalimentación lineal, estándar de cifrado de datos (cifrado DES, que incluye cifrado, programación de claves y descifrado), estándar de cifrado avanzado (AES, que introduce la criptografía basada en campos de Galois), aplicaciones de cifrados de bloque (incluidos los modos de su operación), consideración de cifrado múltiple y ataques de fuerza bruta, introducción a la criptografía de clave pública que cubre la teoría de números, el algoritmo euclidiano, la función Phi de Euler y el teorema de Euler, así como la introducción al criptosistema RSA y la exponenciación eficiente, dentro de la siguiente estructura, que abarca materiales de autoaprendizaje curriculares de certificación EITCI completos y estructurados respaldados por contenido didáctico en video de acceso abierto referenciado como base para la preparación para obtener esta Certificación EITC aprobando el examen correspondiente.
La criptografía se refiere a formas de comunicación segura en presencia de un adversario. La criptografía, en un sentido más amplio, es el proceso de creación y análisis de protocolos que evitan que terceros o el público en general accedan a mensajes privados (encriptados). La criptografía clásica moderna se basa en varias características principales de la seguridad de la información, como la confidencialidad de los datos, la integridad de los datos, la autenticación y el no repudio. A diferencia de la criptografía cuántica, que se basa en reglas de física cuántica radicalmente diferentes que caracterizan la naturaleza, la criptografía clásica se refiere a la criptografía basada en las leyes de la física clásica. Los campos de las matemáticas, la informática, la ingeniería eléctrica, las ciencias de la comunicación y la física se encuentran en la criptografía clásica. El comercio electrónico, las tarjetas de pago basadas en chips, las monedas digitales, las contraseñas de computadoras y las comunicaciones militares son ejemplos de aplicaciones criptográficas.
Antes de la era actual, la criptografía era casi sinónimo de encriptación, convirtiendo la información de una tontería legible en ininteligible. Para evitar que los atacantes obtengan acceso a un mensaje cifrado, el remitente solo comparte el proceso de decodificación con los destinatarios previstos. Los nombres Alice ("A") para el remitente, Bob ("B") para el destinatario previsto y Eve ("escuchando a escondidas") para el adversario se utilizan con frecuencia en la literatura criptográfica.
Los métodos de criptografía se han vuelto cada vez más complejos y sus aplicaciones se han diversificado más, desde el desarrollo de las máquinas de cifrado de rotor en la Primera Guerra Mundial y la introducción de las computadoras en la Segunda Guerra Mundial.
La criptografía moderna depende en gran medida de la teoría matemática y la práctica informática; Los métodos criptográficos se basan en supuestos de dureza computacional, lo que los hace difíciles de romper para cualquier oponente en la práctica. Mientras que entrar en un sistema bien diseñado es teóricamente posible, hacerlo en la práctica es imposible. Dichos esquemas se denominan "computacionalmente seguros" si se construyen adecuadamente; no obstante, los avances teóricos (p. ej., mejoras en los métodos de factorización de números enteros) y una tecnología informática más rápida requieren una reevaluación constante y, si es necesario, la adaptación de estos diseños. Existen sistemas teóricamente seguros para la información, como el bloc de notas de un solo uso, que puede demostrarse que son irrompibles incluso con una potencia informática infinita, pero son significativamente más difíciles de emplear en la práctica que los mejores esquemas teóricamente rompibles pero computacionalmente seguros.
En la Era de la Información, el avance de la tecnología criptográfica ha producido una variedad de desafíos legales. Muchas naciones han clasificado la criptografía como un arma, limitando o prohibiendo su uso y exportación debido a su potencial para el espionaje y la sedición. Los investigadores pueden exigir la entrega de claves de cifrado para documentos pertinentes a una investigación en algunos lugares donde la criptografía es legal. En el caso de los medios digitales, la criptografía también juega un papel clave en la gestión de derechos digitales y en los conflictos de infracción de derechos de autor.
El término "criptógrafo" (en oposición a "criptograma") se utilizó por primera vez en el siglo XIX, en el cuento de Edgar Allan Poe "The Gold-Bug".
Hasta hace poco, la criptografía se refería casi exclusivamente al "cifrado", que es el acto de convertir datos ordinarios (conocidos como texto sin formato) en un formato ilegible (llamado texto cifrado). El descifrado es lo opuesto al cifrado, es decir, pasar de un texto cifrado ininteligible a un texto sin formato. Un cifrado (o cifrado) es un conjunto de técnicas que realizan el cifrado y descifrado en orden inverso. El algoritmo y, en cada caso, una “clave” se encargan de la ejecución detallada del cifrado. La clave es un secreto (preferiblemente conocido sólo por los comunicantes) que se utiliza para descifrar el texto cifrado. Generalmente es una cadena de caracteres (idealmente corta para que el usuario pueda recordarla). Un “criptosistema” es la colección ordenada de elementos de textos planos, textos cifrados, claves y los procedimientos de cifrado y descifrado potenciales finitos que corresponden a cada clave en términos matemáticos formales. Las claves son importantes tanto formal como prácticamente, porque los cifrados con claves fijas pueden descifrarse fácilmente utilizando sólo la información del cifrado, haciéndolos inútiles (o incluso contraproducentes) para la mayoría de los propósitos.
Históricamente, los cifrados se usaban con frecuencia sin ningún procedimiento adicional, como autenticación o controles de integridad para el cifrado o descifrado. Los criptosistemas se dividen en dos categorías: simétricos y asimétricos. La misma clave (la clave secreta) se utiliza para cifrar y descifrar un mensaje en sistemas simétricos, que fueron los únicos conocidos hasta la década de 1970. Dado que los sistemas simétricos utilizan longitudes de clave más cortas, la manipulación de datos en los sistemas simétricos es más rápida que en los sistemas asimétricos. Los sistemas asimétricos cifran una comunicación con una "clave pública" y la descifran utilizando una "clave privada" similar. El uso de sistemas asimétricos mejora la seguridad de las comunicaciones, debido a la dificultad de determinar la relación entre las dos claves. RSA (Rivest–Shamir–Adleman) y ECC son dos ejemplos de sistemas asimétricos (Criptografía de curva elíptica). El AES (Estándar de cifrado avanzado), ampliamente utilizado, que reemplazó al DES anterior, es un ejemplo de un algoritmo simétrico de alta calidad (Estándar de cifrado de datos). Las diversas técnicas para enredar el lenguaje de los niños, como Pig Latin u otros cant, y de hecho todos los esquemas criptográficos, por más serios que sean, de cualquier fuente antes de la introducción del bloc de notas de un solo uso a principios del siglo XX, son ejemplos de baja calidad. algoritmos simétricos.
El término "código" a menudo se usa coloquialmente para referirse a cualquier técnica de encriptación u ocultación de mensajes. Sin embargo, en criptografía, el código se refiere a la sustitución de una palabra clave por una unidad de texto sin formato (es decir, una palabra o frase significativa) (por ejemplo, "wallaby" reemplaza "ataque al amanecer"). Por el contrario, un texto cifrado se crea modificando o sustituyendo un elemento por debajo de dicho nivel (una letra, una sílaba o un par de letras, por ejemplo) para formar un texto cifrado.
El criptoanálisis es el estudio de formas de descifrar datos cifrados sin tener acceso a la clave requerida para hacerlo; en otras palabras, es el estudio de cómo “romper” los esquemas de encriptación o sus implementaciones.
En inglés, algunas personas usan indistintamente los términos "criptografía" y "criptología", mientras que otras (incluida la práctica militar de los EE. UU. en general) usan "criptografía" para referirse al uso y la práctica de técnicas criptográficas y "criptología" para referirse a la combinación estudio de la criptografía y el criptoanálisis. El inglés es más adaptable que una serie de otros idiomas, donde la "criptología" (como la practican los criptólogos) siempre se usa en el segundo sentido. La esteganografía a veces se incluye en la criptología, según RFC 2828.
La criptolingüística es el estudio de las propiedades del lenguaje que tienen cierta relevancia en criptografía o criptología (por ejemplo, estadísticas de frecuencia, combinaciones de letras, patrones universales, etc.).
La criptografía y el criptoanálisis tienen una larga historia.
Historia de la criptografía es el artículo principal.
Antes de la era moderna, la criptografía se ocupaba principalmente de la confidencialidad de los mensajes (es decir, el cifrado): la conversión de mensajes de una forma inteligible a una incomprensible y nuevamente, haciéndolos ilegibles para interceptores o espías sin conocimiento secreto (es decir, la clave necesaria para el descifrado). de ese mensaje). El cifrado se diseñó para mantener en privado las conversaciones de espías, líderes militares y diplomáticos. En las últimas décadas, la disciplina ha crecido para incorporar técnicas como la verificación de la integridad de los mensajes, la autenticación de la identidad del remitente/receptor, las firmas digitales, las pruebas interactivas y la computación segura, entre otras cosas.
Los dos tipos de cifrados clásicos más comunes son los cifrados de transposición, que reemplazan sistemáticamente letras o grupos de letras con otras letras o grupos de letras (por ejemplo, 'hola mundo' se convierte en 'ehlol owrdl' en un esquema de reordenamiento trivialmente simple), y cifrados de sustitución, que reemplazan sistemáticamente letras o grupos de letras con otras letras o grupos de letras (p. ej., 'fly at once' se convierte en 'gmz bu Las versiones simples de cualquiera de las dos nunca han brindado mucha privacidad de los adversarios astutos. El cifrado César fue un cifrado de sustitución temprano en el que cada letra en el texto sin formato fue reemplazada por una letra un cierto número de posiciones hacia abajo en el alfabeto. Según Suetonio, Julio César lo usó con un turno de tres hombres para comunicarse con sus generales. Un cifrado hebreo temprano, Atbash, es un ejemplo. El uso más antiguo conocido de la criptografía es un texto cifrado tallado en piedra en Egipto (alrededor de 1900 a. C.), sin embargo, es posible que esto se haya hecho para el disfrute de los espectadores alfabetizados en lugar de th y para ocultar información.
Se informa que las criptas eran conocidas por los griegos clásicos (por ejemplo, el cifrado de transposición scytale afirma haber sido utilizado por el ejército espartano). La esteganografía (la práctica de ocultar incluso la presencia de una comunicación para mantenerla privada) también se inventó en la antigüedad. Una frase tatuada en la cabeza afeitada de un esclavo y escondida debajo del cabello que ha vuelto a crecer, según Herodoto. El uso de tinta invisible, micropuntos y marcas de agua digitales para ocultar información son instancias más actuales de esteganografía.
Kautiliyam y Mulavediya son dos tipos de cifrados mencionados en el Kamasutra de Vtsyyana de India de 2000 años de antigüedad. Las sustituciones de letras cifradas en Kautiliyam se basan en relaciones fonéticas, como las vocales que se convierten en consonantes. El alfabeto cifrado en Mulavediya se compone de letras coincidentes y el empleo de recíprocas.
Según el erudito musulmán Ibn al-Nadim, la Persia sasánida tenía dos escrituras secretas: la h-dabrya (literalmente "escritura del rey"), que se usaba para la correspondencia oficial, y la rz-saharya, que se usaba para intercambiar mensajes secretos con otros. los paises.
En su libro The Codebreakers, David Kahn escribe que la criptología contemporánea comenzó con los árabes, quienes fueron los primeros en documentar cuidadosamente los procedimientos criptoanalíticos. El Libro de mensajes criptográficos fue escrito por Al-Khalil (717–786) y contiene el uso más antiguo de permutaciones y combinaciones para enumerar todas las palabras árabes imaginables con y sin vocales.
Los textos cifrados generados por un cifrado clásico (así como algunos cifrados modernos) revelan información estadística sobre el texto sin formato, que se puede utilizar para descifrar el cifrado. Casi todas estas cifras podrían ser descifradas por un atacante inteligente después del descubrimiento del análisis de frecuencia, posiblemente por el matemático y erudito árabe Al-Kindi (también conocido como Alkindus) en el siglo IX. Los cifrados clásicos siguen siendo populares hoy en día, aunque en gran parte como rompecabezas (ver criptograma). Risalah fi Istikhraj al-Mu'amma (Manuscrito para descifrar mensajes criptográficos) fue escrito por Al-Kindi y documentó el primer uso conocido de técnicas de criptoanálisis de análisis de frecuencia.
Es posible que algunos enfoques de cifrado de historial extendido, como el cifrado homofónico, que tienden a aplanar la distribución de frecuencia, no se beneficien de las frecuencias de las letras del idioma. Las frecuencias del grupo de letras del idioma (o n-grama) pueden dar un ataque para esos cifrados.
Hasta el descubrimiento del cifrado polialfabético, sobre todo por Leon Battista Alberti alrededor de 1467, prácticamente todos los cifrados eran accesibles para el criptoanálisis utilizando el enfoque de análisis de frecuencia, aunque hay algunas pruebas de que Al-Kindi ya lo conocía. A Alberti se le ocurrió la idea de usar cifrados separados (o alfabetos de sustitución) para diferentes partes de una comunicación (quizás para cada letra sucesiva del texto sin formato en el límite). También creó lo que se cree que es el primer dispositivo de cifrado automático, una rueda que ejecutó una parte de su diseño. El cifrado en el cifrado Vigenère, un cifrado polialfabético, está controlado por una palabra clave que rige la sustitución de letras según la letra de la palabra clave que se utilice. Charles Babbage demostró que el cifrado de Vigenère era vulnerable al análisis de Kasiski a mediados del siglo XIX, pero Friedrich Kasiski publicó sus hallazgos diez años después.
A pesar del hecho de que el análisis de frecuencia es una técnica poderosa y amplia contra muchos cifrados, el cifrado se ha mantenido efectivo en la práctica porque muchos posibles criptoanalistas desconocen la técnica. Descifrar un mensaje sin utilizar el análisis de frecuencia requería el conocimiento del cifrado empleado y posiblemente la clave involucrada, lo que hacía que el espionaje, el soborno, el robo, la deserción y otras tácticas criptoanalíticamente desinformadas fueran más atractivas. El secreto del algoritmo de un cifrado finalmente se reconoció en el siglo XIX como una garantía razonable ni factible de la seguridad del mensaje; de hecho, cualquier esquema criptográfico apropiado (incluidos los cifrados) debe permanecer seguro incluso si el oponente comprende completamente el propio algoritmo de cifrado. La seguridad de la clave debe ser suficiente para que un buen cifrado mantenga la confidencialidad frente a un asalto. Auguste Kerckhoffs planteó por primera vez este principio fundamental en 19, y se conoce como Principio de Kerckhoffs; alternativamente, y de forma más directa, Claude Shannon, el inventor de la teoría de la información y los fundamentos de la criptografía teórica, la reformuló como la máxima de Shannon: "el enemigo conoce el sistema".
Para ayudar con los cifrados, se han utilizado muchos dispositivos físicos y asistencia. El scytale de la antigua Grecia, una vara supuestamente empleada por los espartanos como herramienta de cifrado de transposición, puede haber sido uno de los primeros. En la época medieval se idearon otras ayudas, como la rejilla de cifrado, que también se utilizó para la esteganografía. Con el desarrollo de cifrados polialfabéticos, se pusieron a disposición ayudas más sofisticadas como el disco de cifrado de Alberti, el esquema de tabula recta de Johannes Trithemius y el cifrado de rueda de Thomas Jefferson (no conocido públicamente y reinventado de forma independiente por Bazeries alrededor de 1900). Muchos sistemas mecánicos de cifrado/descifrado se idearon y patentaron a principios del siglo XX, incluidas las máquinas de rotor, que fueron empleadas por el gobierno y el ejército alemanes desde finales de la década de 1920 hasta la Segunda Guerra Mundial. Después de la Primera Guerra Mundial, los cifrados implementados por instancias de mayor calidad de estos diseños de máquinas dieron como resultado un aumento significativo en la dificultad criptoanalítica.
La criptografía se ocupaba principalmente de los patrones lingüísticos y lexicográficos antes de principios del siglo XX. Desde entonces, el enfoque ha evolucionado y la criptografía ahora incluye aspectos de teoría de la información, complejidad computacional, estadística, combinatoria, álgebra abstracta, teoría de números y matemáticas finitas en general. La criptografía es un tipo de ingeniería, pero es única en el sentido de que trata con resistencia activa, inteligente y hostil, mientras que otros tipos de ingeniería (como la ingeniería civil o química) simplemente tienen que lidiar con fuerzas naturales que son neutrales. También se está investigando el vínculo entre las dificultades de la criptografía y la física cuántica.
El desarrollo de las computadoras y la electrónica digitales ayudó al criptoanálisis al permitir la creación de cifrados considerablemente más sofisticados. Además, a diferencia de los cifrados tradicionales, que cifraban exclusivamente textos en lenguaje escrito, las computadoras permitían cifrar cualquier tipo de dato que pudiera representarse en cualquier formato binario; esto era novedoso e importante. Tanto en el diseño de cifrado como en el criptoanálisis, las computadoras han suplantado al lenguaje criptográfico. A diferencia de los métodos clásicos y mecánicos, que manipulan principalmente caracteres tradicionales (es decir, letras y números) directamente, muchos cifrados informáticos operan con secuencias de bits binarios (ocasionalmente en grupos o bloques). Las computadoras, por otro lado, han ayudado al criptoanálisis, que ha compensado parcialmente la mayor complejidad del cifrado. A pesar de esto, los buenos cifrados modernos se han mantenido por delante del criptoanálisis; A menudo ocurre que usar un buen cifrado es muy eficiente (es decir, rápido y requiere pocos recursos, como memoria o capacidad de CPU), mientras que descifrarlo requiere un esfuerzo muchos órdenes de magnitud mayor, y mucho mayor que el requerido para cualquier otro cifrado. cifrado clásico, lo que hace imposible el criptoanálisis.
La criptografía moderna hace su debut.
El criptoanálisis de los nuevos dispositivos mecánicos resultó ser un desafío y un proceso lento. Durante la Segunda Guerra Mundial, las actividades criptoanalíticas en Bletchley Park en el Reino Unido fomentaron la invención de métodos más eficientes para realizar tareas repetitivas. Colossus, la primera computadora programable digital, completamente electrónica del mundo, fue desarrollada para ayudar en la decodificación de cifrados creados por la máquina Lorenz SZ40/42 del ejército alemán.
La criptografía es un campo relativamente nuevo de investigación académica abierta, que comenzó a mediados de la década de 1970. Los empleados de IBM idearon el algoritmo que se convirtió en el estándar de cifrado de datos federal (es decir, de EE. UU.); Whitfield Diffie y Martin Hellman publicaron su algoritmo de acuerdo clave; y la columna Scientific American de Martin Gardner publicó el algoritmo RSA. Desde entonces, la criptografía ha ganado popularidad como técnica para las comunicaciones, las redes informáticas y la seguridad informática en general.
Existen vínculos profundos con las matemáticas abstractas, ya que varios enfoques criptográficos modernos solo pueden mantener sus claves en secreto si ciertos problemas matemáticos son intratables, como la factorización de números enteros o problemas de logaritmos discretos. Solo hay un puñado de criptosistemas que han demostrado ser 100% seguros. Claude Shannon demostró que el bloc de notas de un solo uso es uno de ellos. Hay algunos algoritmos clave que han demostrado ser seguros bajo ciertas condiciones. La incapacidad de factorizar enteros extremadamente grandes, por ejemplo, es la base para creer que RSA y otros sistemas son seguros, pero la prueba de irrompibilidad es inalcanzable porque el problema matemático subyacente sigue sin resolverse. En la práctica, estos se utilizan ampliamente y la mayoría de los observadores competentes creen que son irrompibles en la práctica. Existen sistemas similares a RSA, como el desarrollado por Michael O. Rabin, que son probablemente seguros si es imposible factorizar n = pq; sin embargo, son prácticamente inútiles. El problema del logaritmo discreto es la base para creer que algunos otros criptosistemas son seguros, y existen sistemas similares, menos prácticos, que son probablemente seguros en términos de la capacidad de solución o insolubilidad del problema del logaritmo discreto.
Los diseñadores de sistemas y algoritmos criptográficos deben considerar posibles avances futuros al trabajar en sus ideas, además de ser conscientes de la historia criptográfica. Por ejemplo, a medida que ha mejorado el poder de procesamiento de la computadora, la amplitud de los ataques de fuerza bruta ha crecido, por lo tanto, las longitudes de clave requeridas también han aumentado. Algunos diseñadores de sistemas criptográficos que exploran la criptografía poscuántica ya están considerando las posibles consecuencias de la computación cuántica; la inminencia anunciada de implementaciones modestas de estas máquinas puede hacer que la necesidad de precaución preventiva sea más que especulativa.
Criptografía clásica en la actualidad
La criptografía simétrica (o de clave privada) es un tipo de encriptación en la que el emisor y el receptor utilizan la misma clave (o, menos comúnmente, en la que sus claves son diferentes, pero están relacionadas de manera fácilmente computable y se mantienen en secreto, de forma privada). ). Hasta junio de 1976, este era el único tipo de encriptación que se conocía públicamente.
Los cifrados de bloque y los cifrados de flujo se utilizan para implementar cifrados de clave simétrica. Un cifrado de bloque cifra la entrada en bloques de texto sin formato en lugar de caracteres individuales, como lo hace un cifrado de flujo.
El gobierno de EE. UU. ha designado el Estándar de cifrado de datos (DES) y el Estándar de cifrado avanzado (AES) como estándares de criptografía (aunque la certificación de DES finalmente se retiró una vez que se estableció el AES). DES (especialmente su variación triple-DES aún aprobada y significativamente más segura) sigue siendo popular a pesar de su desaprobación como estándar oficial; se utiliza en una amplia gama de aplicaciones, desde el cifrado de cajeros automáticos hasta la privacidad del correo electrónico y el acceso remoto seguro. Ha habido una gran cantidad de diferentes cifrados de bloque inventados y lanzados, con diversos grados de éxito. Muchos, incluidos algunos diseñados por profesionales calificados, como FEAL, se han roto en gran medida.
Los cifrados de flujo, a diferencia de los cifrados de bloque, generan un flujo infinitamente largo de material clave que se combina con texto sin formato bit a bit o carácter a carácter, similar al bloc de notas de un solo uso. El flujo de salida de un cifrado de flujo se genera a partir de un estado interno oculto que cambia a medida que funciona el cifrado. El material de la clave secreta se utiliza para establecer ese estado interno al principio. El cifrado de flujo RC4 se usa ampliamente. Mediante la creación de bloques de un flujo de claves (en lugar de un generador de números pseudoaleatorios) y el uso de una operación XOR para cada bit del texto sin formato con cada bit del flujo de claves, los cifrados de bloque se pueden emplear como cifrados de flujo.
Los códigos de autenticación de mensajes (MAC) son similares a las funciones hash criptográficas, con la excepción de que se puede usar una clave secreta para validar el valor hash al recibirlo; esta complejidad adicional evita un ataque contra los algoritmos de resumen desnudo, por lo que se considera que vale la pena. Un tercer tipo de técnica criptográfica son las funciones hash criptográficas. Toman mensajes de cualquier longitud como entrada y emiten un pequeño hash de longitud fija que se puede usar en firmas digitales, por ejemplo. Un atacante no puede localizar dos mensajes que produzcan el mismo hash usando buenos algoritmos de hash. MD4 es una función hash ampliamente utilizada pero ahora defectuosa; MD5, una forma mejorada de MD4, también se usa ampliamente pero no funciona en la práctica. La serie Secure Hash Algorithm de algoritmos hash similares a MD5 fue desarrollada por la Agencia de Seguridad Nacional de EE. UU.: La autoridad de estándares de EE. UU. decidió que era "prudente" desde el punto de vista de la seguridad desarrollar un nuevo estándar para "mejorar significativamente la solidez del algoritmo hash general de NIST caja de herramientas.” SHA-1 es ampliamente utilizado y más seguro que MD5, pero los criptoanalistas han identificado ataques en su contra; la familia SHA-2 mejora a SHA-1, pero es vulnerable a enfrentamientos a partir de 2011; y la familia SHA-2 mejora a SHA-1, pero es vulnerable a conflictos. Como resultado, para 2012, se iba a realizar un concurso de diseño de funciones hash para elegir un nuevo estándar nacional de EE. UU., que se conocería como SHA-3. La competencia llegó a su fin el 2 de octubre de 2012, cuando el Instituto Nacional de Estándares y Tecnología (NIST) anunció a Keccak como el nuevo algoritmo hash SHA-3. Las funciones hash criptográficas, a diferencia de los cifrados de flujo y bloque invertibles, proporcionan una salida hash que no se puede utilizar para recuperar los datos de entrada originales. Las funciones hash criptográficas se utilizan para verificar la autenticidad de los datos adquiridos de una fuente no confiable o para agregar un grado adicional de protección.
Aunque un mensaje o conjunto de mensajes puede tener una clave diferente a otros, los criptosistemas de clave simétrica emplean la misma clave para cifrar y descifrar. La gestión de claves necesaria para utilizar cifrados simétricos de forma segura es una gran desventaja. Idealmente, cada par individual de partes comunicantes debería compartir una clave diferente, así como posiblemente un texto cifrado diferente para cada texto cifrado enviado. La cantidad de claves requeridas crece en proporción directa a la cantidad de participantes de la red, lo que requiere técnicas complicadas de administración de claves para mantenerlas todas consistentes y secretas.
Whitfield Diffie y Martin Hellman inventaron el concepto de criptografía de clave pública (también conocida como clave asimétrica) en un trabajo seminal de 1976, en el que se emplean dos claves distintas pero matemáticamente relacionadas: una clave pública y una clave privada. A pesar de que están inextricablemente vinculados, un sistema de clave pública se construye de tal manera que calcular una clave (la 'clave privada') a partir de la otra (la 'clave pública') es computacionalmente inviable. Más bien, ambas claves se producen en secreto, como un par vinculado. La criptografía de clave pública, según el historiador David Kahn, es "la nueva noción más revolucionaria en el campo desde que surgió la sustitución polialfabética en el Renacimiento".
La clave pública en un criptosistema de clave pública puede transmitirse libremente, pero la clave privada acoplada debe mantenerse oculta. La clave pública se utiliza para el cifrado, mientras que la clave privada o secreta se utiliza para el descifrado en un esquema de cifrado de clave pública. Si bien Diffie y Hellman no pudieron crear un sistema de este tipo, demostraron que la criptografía de clave pública era concebible al proporcionar el protocolo de intercambio de claves Diffie-Hellman, una solución que permite que dos personas acuerden de manera encubierta una clave de cifrado compartida. El formato más utilizado para los certificados de clave pública está definido por el estándar X.509.
La publicación de Diffie y Hellman despertó un interés académico generalizado en el desarrollo de un sistema práctico de encriptación de clave pública. Ronald Rivest, Adi Shamir y Len Adleman finalmente ganaron el concurso en 1978 y su respuesta se conoció como el algoritmo RSA.
Además de ser las primeras instancias conocidas públicamente de algoritmos de clave pública de alta calidad, los algoritmos Diffie-Hellman y RSA se encuentran entre los más utilizados. El criptosistema Cramer-Shoup, el cifrado ElGamal y numerosos enfoques de curva elíptica son ejemplos de algoritmos de clave asimétrica.
Los criptógrafos de GCHQ previeron varios avances académicos, según un documento emitido en 1997 por el Cuartel General de Comunicaciones del Gobierno (GCHQ), una organización de inteligencia británica. Según la leyenda, la criptografía de clave asimétrica fue inventada por James H. Ellis alrededor de 1970. Clifford Cocks inventó una solución en 1973 que era extremadamente similar a RSA en términos de diseño. A Malcolm J. Williamson se le atribuye la invención del intercambio de claves Diffie-Hellman en 1974.
Los sistemas de firma digital también se implementan mediante criptografía de clave pública. Una firma digital es similar a una firma tradicional en que es fácil de crear para el usuario pero difícil de falsificar para otros. Las firmas digitales también pueden vincularse permanentemente al contenido de la comunicación que se firma; esto significa que no se pueden 'mover' de un documento a otro sin ser detectados. Hay dos algoritmos en los esquemas de firma digital: uno para firmar, que usa una clave secreta para procesar el mensaje (o un hash del mensaje, o ambos), y otro para verificación, que usa la clave pública coincidente con el mensaje para validar la autenticidad de la firma. Dos de los métodos de firma digital más utilizados son RSA y DSA. Las infraestructuras de clave pública y muchos sistemas de seguridad de red (p. ej., SSL/TLS, muchas VPN) se basan en firmas digitales para funcionar.
La complejidad computacional de los problemas "difíciles", como los que surgen de la teoría de números, se utiliza con frecuencia para desarrollar métodos de clave pública. El problema de factorización de enteros está relacionado con la dureza de RSA, mientras que el problema del logaritmo discreto está relacionado con Diffie-Hellman y DSA. La seguridad de la criptografía de curva elíptica se basa en problemas teóricos de números de curva elíptica. La mayoría de los algoritmos de clave pública incluyen operaciones como la multiplicación modular y la exponenciación, que son mucho más costosas desde el punto de vista computacional que las técnicas utilizadas en la mayoría de los cifrados de bloques, especialmente con tamaños de clave normales, debido a la dificultad de los problemas subyacentes. Como resultado, los criptosistemas de clave pública suelen ser criptosistemas híbridos, en los que el mensaje se cifra con un algoritmo de clave simétrica rápido y de alta calidad, mientras que la clave simétrica pertinente se envía con el mensaje pero se cifra con un algoritmo de clave pública. Los esquemas de firma híbrida, en los que se calcula una función hash criptográfica y solo el hash resultante se firma digitalmente, también se utilizan comúnmente.
Funciones hash en criptografía
Las funciones hash criptográficas son algoritmos criptográficos que producen y usan claves específicas para cifrar datos para el cifrado simétrico o asimétrico, y pueden considerarse como claves. Toman mensajes de cualquier longitud como entrada y emiten un pequeño hash de longitud fija que se puede usar en firmas digitales, por ejemplo. Un atacante no puede localizar dos mensajes que produzcan el mismo hash usando buenos algoritmos de hash. MD4 es una función hash ampliamente utilizada pero ahora defectuosa; MD5, una forma mejorada de MD4, también se usa ampliamente pero no funciona en la práctica. La serie Secure Hash Algorithm de algoritmos hash similares a MD5 fue desarrollada por la Agencia de Seguridad Nacional de EE. UU.: La autoridad de estándares de EE. UU. decidió que era "prudente" desde el punto de vista de la seguridad desarrollar un nuevo estándar para "mejorar significativamente la solidez del algoritmo hash general de NIST caja de herramientas.” SHA-1 es ampliamente utilizado y más seguro que MD5, pero los criptoanalistas han identificado ataques en su contra; la familia SHA-2 mejora a SHA-1, pero es vulnerable a enfrentamientos a partir de 2011; y la familia SHA-2 mejora a SHA-1, pero es vulnerable a conflictos. Como resultado, en 2012, se iba a realizar un concurso de diseño de funciones hash para elegir un nuevo estándar nacional de EE. UU., que se conocería como SHA-3. La competencia llegó a su fin el 2 de octubre de 2012, cuando el Instituto Nacional de Estándares y Tecnología (NIST) anunció a Keccak como el nuevo algoritmo hash SHA-3. Las funciones hash criptográficas, a diferencia de los cifrados de flujo y bloque invertibles, proporcionan una salida hash que no se puede utilizar para recuperar los datos de entrada originales. Las funciones hash criptográficas se utilizan para verificar la autenticidad de los datos adquiridos de una fuente no confiable o para agregar un grado adicional de protección.
Primitivas criptográficas y criptosistemas
Gran parte del trabajo teórico de la criptografía se centra en las primitivas criptográficas (algoritmos que tienen propiedades criptográficas básicas) y cómo se relacionan con otros desafíos criptográficos. Estas primitivas básicas se utilizan luego para crear herramientas criptográficas más complejas. Estas primitivas brindan cualidades fundamentales que se utilizan para crear herramientas más complejas conocidas como criptosistemas o protocolos criptográficos que garantizan una o más propiedades de seguridad de alto nivel. El límite entre las primitivas criptográficas y los criptosistemas, por otro lado, es arbitrario; el algoritmo RSA, por ejemplo, a veces se considera un criptosistema y otras veces un primitivo. Las funciones pseudoaleatorias, las funciones unidireccionales y otras primitivas criptográficas son ejemplos comunes.
Un sistema criptográfico, o criptosistema, se crea combinando una o más primitivas criptográficas para crear un algoritmo más complicado. Los criptosistemas (p. ej., el cifrado El-Gamal) están destinados a proporcionar una funcionalidad específica (p. ej., el cifrado de clave pública) al tiempo que garantizan ciertas cualidades de seguridad (p. ej., seguridad CPA de ataque de texto sin formato elegido por el modelo aleatorio de Oracle). Para respaldar las cualidades de seguridad del sistema, los criptosistemas utilizan las propiedades de las primitivas criptográficas subyacentes. Se puede generar un criptosistema sofisticado a partir de una combinación de numerosos criptosistemas más rudimentarios, ya que la distinción entre primitivos y criptosistemas es algo arbitraria. En muchas circunstancias, la estructura del criptosistema comprende una comunicación de ida y vuelta entre dos o más partes en el espacio (p. ej., entre el remitente y el destinatario de un mensaje seguro) o en el tiempo (p. ej., entre el remitente y el receptor de un mensaje seguro) (por ejemplo, datos de copia de seguridad protegidos criptográficamente).
Para familiarizarse en detalle con el plan de estudios de certificación, puede ampliar y analizar la tabla a continuación.
El plan de estudios de certificación de fundamentos de criptografía clásica EITC/IS/CCF hace referencia a materiales didácticos de acceso abierto en formato de video. El proceso de aprendizaje se divide en una estructura paso a paso (programas -> lecciones -> temas) que cubre las partes relevantes del plan de estudios. Los participantes pueden acceder a las respuestas y hacer preguntas más relevantes en la sección de preguntas y respuestas de la interfaz de aprendizaje electrónico en el tema del plan de estudios del programa EITC en el que se encuentran actualmente. También se puede acceder a la consultoría directa e ilimitada con expertos en el dominio a través del sistema de mensajería en línea integrado en la plataforma, así como a través del formulario de contacto.
Para obtener más información sobre el procedimiento de certificación, consulte Video.
Notas principales de la conferencia
Comprender la criptografía de Christof Paar y Jan Pelzl, curso en línea en forma de diapositivas en PDF
https://www.crypto-textbook.com/slides.php
Comprender la criptografía de Christof Paar y Jan Pelzl, curso en línea en forma de videos
https://www.crypto-textbook.com/movies.php
Referencia principal del libro de criptografía clásica
Comprender la criptografía por Christof Paar y Jan Pelzl
https://www.crypto-textbook.com/index.php
Referencia adicional del libro de criptografía clásica aplicada
Manual de Criptografía Aplicada por A. Menezes, P. van Oorschot y S. Vanstone:
https://cacr.uwaterloo.ca/hac/
https://www.amazon.com/exec/obidos/ISBN=0849385237/7181-7381933-595174
Descargue los materiales preparatorios completos de autoaprendizaje fuera de línea para el programa Fundamentos de criptografía clásica EITC/IS/CCF en un archivo PDF
Materiales preparatorios del EITC/IS/CCF – versión estándar
Materiales preparatorios del EITC/IS/CCF – versión ampliada con preguntas de repaso