Definición: La criptografía basada en códigos comprende todos los criptosistemas simétricos o asimétricos cuya seguridad depende, en parte o totalmente, de la dificultad de descifrar un código lineal de corrección de errores (por ejemplo, el código cuasicíclico o los códigos Goppa).
Explicación de la criptografía basada en códigos
La criptografía basada en códigos es el área de investigación que se centra en el estudio de criptosistemas basados en códigos de corrección de errores. En las comunicaciones digitales, la alteración de un solo bit puede provocar un desastre si no hay forma de identificar y solucionar los problemas. Las sumas de comprobación son una ilustración básica de un código de detección de errores. El objetivo es maximizar la probabilidad de exactitud en la transmisión de datos al tiempo que se reduce el volumen de información adicional añadida.
La idea del código de corrección de errores se le ocurrió a Robert McEliece en 1978. Empezó con un código específico de corrección de errores, el código binario Goppa, y utilizó una transformación lineal invertible para desordenarlo. En un nivel muy fundamental, el enfoque de McEliece equivale a una factorización secreta, que es algo similar al criptosistema de clave pública de Rivest Shamir y Adleman, conocido como RSA. Sólo el propietario conoce la factorización de la clave pública, que es el resultado del código Goppa y la transformación lineal.
La clave pública es una matriz generadora aleatoria de una versión arbitrariamente permutada de la clave privada, que es un código Goppa binario irreducible aleatorio. Sólo el propietario de la clave privada (el código Goppa) puede corregir los fallos que se hayan introducido en el texto cifrado, que es una palabra-código.
En la criptografía basada en códigos, el emisor del mensaje introduce intencionadamente fallos en el código para dificultar la descodificación y, por tanto, el descifrado. El receptor del mensaje puede descifrarlo utilizando algún conocimiento secreto (a menudo relativo a la estructura del código), pero un atacante sin acceso al conocimiento secreto no puede.
La criptografía basada en códigos tiene el potencial de ser reconocida como un criptosistema completo dada la disponibilidad de algoritmos de cifrado, intercambio de claves y firma digital.
A diferencia de RSA y otros sistemas de clave pública bien conocidos, el método de McEliece parece ser resistente al quantum, lo que ha reavivado el interés por él.
La técnica de McEliece quedó relegada a un segundo plano para los diseñadores. Debido al hecho de que el método de McEliece requería claves públicas significativamente mayores que otros métodos, como el RSA, no generó mucho interés en su momento. Sin embargo, a medida que se acerca la era de los ordenadores cuánticos, se le vuelve a prestar atención porque parece ser inmune a los ataques que utilizan el método de Shor.
Por ello, el algoritmo subyacente "Classic McEliece" para la encapsulación de claves se encuentra actualmente en la ronda 4 del proceso de normalización del NIST para la Criptografía Postcuántica (PQC).