stringtranslate.com

Envoltura de llaves

En criptografía , las construcciones de envoltura de clave son una clase de algoritmos de cifrado simétrico diseñados para encapsular (cifrar) material de clave criptográfica. [1] Los algoritmos de envoltura de clave están destinados a aplicaciones como la protección de claves mientras se almacenan en un lugar no confiable o la transmisión de claves a través de redes de comunicaciones no confiables. Las construcciones se construyen típicamente a partir de primitivas estándar como cifrados de bloque y funciones hash criptográficas .

Key Wrap puede considerarse como una forma de algoritmo de encapsulación de claves , aunque no debe confundirse con los algoritmos de encapsulación de claves asimétricas (de clave pública) más conocidos (por ejemplo, PSEC-KEM). Los algoritmos Key Wrap pueden utilizarse en una aplicación similar: para transportar de forma segura una clave de sesión cifrándola con una clave de cifrado a largo plazo.

Fondo

A finales de los años 1990, el Instituto Nacional de Estándares y Tecnología (NIST) planteó el problema de "Key Wrap": desarrollar algoritmos de cifrado de claves seguros y eficientes. Los algoritmos resultantes serían evaluados formalmente por el NIST y, finalmente, aprobados para su uso en módulos criptográficos certificados por el NIST. El NIST no definió con precisión los objetivos de seguridad del algoritmo resultante y dejó un mayor refinamiento a los desarrolladores del algoritmo. Con base en los algoritmos resultantes, los requisitos de diseño parecen ser (1) confidencialidad, (2) protección de la integridad (autenticación), (3) eficiencia, (4) uso de primitivas subyacentes estándar (aprobadas) como el Estándar de cifrado avanzado (AES) y el Algoritmo de hash seguro ( SHA-1 ), y (5) consideración de circunstancias adicionales (por ejemplo, resiliencia al error del operador, generadores de números aleatorios de baja calidad). Los objetivos (3) y (5) son particularmente importantes, dado que muchos algoritmos de cifrado autenticado ampliamente implementados (por ejemplo, AES-CCM) ya son suficientes para lograr los objetivos restantes.

Especificación de encapsulado de clave AES del NIST

Se han propuesto varias construcciones, entre ellas:

Cada uno de los algoritmos propuestos puede considerarse como una forma de algoritmo de cifrado autenticado que proporciona confidencialidad para mensajes altamente entrópicos , como las claves criptográficas. La especificación AES Key Wrap, AESKW, TDKW y AKW1 tienen como objetivo mantener la confidencialidad ante ataques de texto cifrado elegido adaptativo , mientras que el algoritmo AKW2 está diseñado para ser seguro solo ante ataques de texto simple conocido (o más débiles). (El objetivo declarado de AKW2 es su uso en sistemas heredados y dispositivos computacionalmente limitados donde el uso de los otros algoritmos sería poco práctico). AESKW, TDKW y AKW2 también proporcionan la capacidad de autenticar el "encabezado" de texto simple, un bloque asociado de datos que no está cifrado.

Rogaway y Shrimpton evaluaron el diseño de los algoritmos ANSX9.102 en relación con los objetivos de seguridad establecidos. Entre sus hallazgos generales, señalaron la falta de objetivos de diseño claramente establecidos para los algoritmos y la ausencia de pruebas de seguridad para todas las construcciones.

En su artículo, Rogaway y Shrimpton propusieron un algoritmo de encapsulamiento de claves (SIV, Synthetic Initialization Vector mode) que autentica y encripta una cadena arbitraria y autentica, pero no encripta, los datos asociados que se pueden vincular a la clave encapsulada. Esto se ha estandarizado como un nuevo modo AES en RFC  5297.

Véase también

Lectura adicional

Referencias

  1. ^ "Algoritmo de envoltura de clave" . Consultado el 26 de mayo de 2016 .
  2. ^ "Web Cryptography API" (API de criptografía web). www.w3.org . Consultado el 16 de octubre de 2019 .