Clave (criptografía)
Una clave en criptografía es una pieza de información, generalmente una cadena de números o letras que se almacenan en un archivo que, cuando se procesa a través de un algoritmo criptográfico, puede codificar o decodificar datos criptográficos. Según el método utilizado, la clave puede tener diferentes tamaños y variedades, pero en todos los casos, la solidez del cifrado depende de la seguridad de la clave que se mantiene. La solidez de la seguridad de una clave depende de su algoritmo, el tamaño de la clave, la generación de la clave y el proceso de intercambio de claves.
Alcance
La clave es lo que se utiliza para cifrar datos de texto sin formato a texto cifrado. Existen diferentes métodos para utilizar claves y cifrado.
Criptografía simétrica
La criptografía simétrica se refiere a la práctica de utilizar la misma clave tanto para el cifrado como para el descifrado.
Criptografía asimétrica
La criptografía asimétrica tiene claves separadas para cifrar y descifrar. Estas claves se conocen como claves públicas y privadas, respectivamente.
Propósito
Dado que la clave protege la confidencialidad y la integridad del sistema, es importante mantenerla en secreto frente a terceros no autorizados. Con la criptografía de clave pública, solo la clave privada debe mantenerse en secreto, pero con la criptografía simétrica, es importante mantener la confidencialidad de la clave. El principio de Kerckhoff establece que toda la seguridad del sistema criptográfico se basa en el secreto de la clave.
Tamaños de clave
El tamaño de la clave es el número de bits en la clave definida por el algoritmo. Este tamaño define el límite superior de la seguridad del algoritmo criptográfico. Cuanto mayor sea el tamaño de la clave, más tiempo pasará antes de que la clave se vea comprometida por un ataque de fuerza bruta. Dado que el secreto perfecto no es factible para los algoritmos clave, las investigaciones ahora se centran más en la seguridad informática.
En el pasado, se requería que las claves tuvieran un mínimo de 40 bits de longitud, sin embargo, a medida que avanzaba la tecnología, estas claves se descifraban cada vez más rápido. Como respuesta, se mejoraron las restricciones sobre las claves simétricas para que fueran de mayor tamaño.
Actualmente, se suele utilizar RSA de 2048 bits, que es suficiente para los sistemas actuales. Sin embargo, los tamaños de clave actuales se descifrarían rápidamente con una poderosa computadora cuántica.
“Las claves utilizadas en la criptografía de clave pública tienen cierta estructura matemática. Por ejemplo, las claves públicas utilizadas en el sistema RSA son el producto de dos números primos. Por lo tanto, los sistemas de clave pública requieren longitudes de clave más largas que los sistemas simétricos para un nivel de seguridad equivalente. 3072 bits es la longitud de clave sugerida para los sistemas basados en factorización y logaritmos enteros discretos que tienen como objetivo tener una seguridad equivalente a un cifrado simétrico de 128 bits.
Generación de claves
Para evitar que se adivine una clave, las claves deben generarse al azar y contener suficiente entropía. El problema de cómo generar claves aleatorias de manera segura es difícil y varios sistemas criptográficos lo han abordado de muchas maneras. Se puede generar una clave directamente utilizando la salida de un generador de bits aleatorios (RBG), un sistema que genera una secuencia de bits impredecibles e imparciales. Se puede usar un RBG para producir directamente una clave simétrica o la salida aleatoria para la generación de un par de claves asimétricas. Alternativamente, una clave también se puede crear indirectamente durante una transacción de acuerdo de clave, desde otra clave o desde una contraseña.
Algunos sistemas operativos incluyen herramientas para "recopilar" entropía de la sincronización de operaciones impredecibles, como los movimientos del cabezal de la unidad de disco. Para la producción de pequeñas cantidades de material clave, los dados ordinarios proporcionan una buena fuente de aleatoriedad de alta calidad.
Esquema de establecimiento
La seguridad de una clave depende de cómo se intercambia una clave entre las partes. Es necesario establecer un canal de comunicación seguro para que los extraños no puedan obtener la clave. Se utiliza un esquema de establecimiento de claves (o intercambio de claves) para transferir una clave de cifrado entre entidades. El acuerdo de claves y el transporte de claves son los dos tipos de esquemas de intercambio de claves que se utilizan para el intercambio remoto entre entidades. En un esquema de acuerdo de claves, una clave secreta, que se utiliza entre el remitente y el receptor para cifrar y descifrar información, se configura para enviarse indirectamente. Todas las partes intercambian información (el secreto compartido) que permite a cada parte obtener el material de la clave secreta. En un esquema de transporte de claves, el material de claves cifrado elegido por el remitente se transporta al receptor. En ambos esquemas se pueden utilizar técnicas de clave simétrica o de clave asimétrica.
El intercambio de claves Diffie-Hellman y Rivest-Shamir-Adleman (RSA) son los dos algoritmos de intercambio de claves más utilizados. En 1976, Whitfield Diffie y Martin Hellman construyeron el algoritmo Diffie-Hellman, que fue el primer algoritmo de clave pública. El protocolo de intercambio de claves Diffie-Hellman permite el intercambio de claves a través de un canal inseguro mediante la generación electrónica de una clave compartida entre dos partes. Por otro lado, RSA es una forma del sistema de claves asimétricas que consta de tres pasos: generación de claves, cifrado y descifrado.
La confirmación de claves ofrece una garantía entre el receptor de la confirmación de claves y el proveedor de que los materiales de claves compartidos son correctos y establecidos. El Instituto Nacional de Estándares y Tecnología recomienda que la confirmación de claves se integre en un esquema de establecimiento de claves para validar sus implementaciones.
Administración
La gestión de claves se refiere a la generación, establecimiento, almacenamiento, uso y sustitución de claves criptográficas. Un sistema de gestión de claves (KMS) generalmente incluye tres pasos para establecer, almacenar y usar claves. La base de la seguridad para la generación, el almacenamiento, la distribución, el uso y la destrucción de claves depende de protocolos de gestión de claves exitosos.
Clave vs contraseña
Una contraseña es una serie de caracteres memorizados que incluyen letras, dígitos y otros símbolos especiales que se utilizan para verificar la identidad. A menudo lo produce un usuario humano o un software de administración de contraseñas para proteger información personal y confidencial o generar claves criptográficas. Las contraseñas a menudo se crean para que los usuarios las memoricen y pueden contener información no aleatoria, como palabras de diccionario. Por otro lado, una clave puede ayudar a fortalecer la protección de la contraseña al implementar un algoritmo criptográfico que es difícil de adivinar o reemplazar la contraseña por completo. Una clave se genera en base a datos aleatorios o pseudoaleatorios y, a menudo, puede ser ilegible para los humanos.
Una contraseña es menos segura que una clave criptográfica debido a su baja entropía, aleatoriedad y propiedades legibles por humanos. Sin embargo, la contraseña puede ser el único dato secreto al que puede acceder el algoritmo criptográfico para la seguridad de la información en algunas aplicaciones, como la protección de la información en los dispositivos de almacenamiento. Por lo tanto, un algoritmo determinista llamado función de derivación de clave (KDF) utiliza una contraseña para generar el material de clave criptográfica segura para compensar la debilidad de la contraseña. En la generación se pueden utilizar varios métodos, como la adición de una sal o el estiramiento de la llave.
Contenido relacionado
Dnix
Protocolo de Control de Transmisión
Olimpiada informática