Compatibilidad de conjuntos de claves - AWS Encryption SDK

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Compatibilidad de conjuntos de claves

Si bien las diferentes implementaciones lingüísticas AWS Encryption SDK presentan algunas diferencias arquitectónicas, son totalmente compatibles y están sujetas a las restricciones del idioma. Puede cifrar los datos utilizando una implementación de lenguaje de programación y descifrarlos con cualquier otra implementación de lenguaje. Sin embargo, debe utilizar las mismas o claves maestras correspondientes para cifrar y descifrar las claves de datos. Para obtener información sobre las restricciones de idioma, consulte el tema sobre cada implementación lingüística, como Compatibilidad del SDK de cifrado de AWS para JavaScript en el SDK de cifrado de AWS para JavaScript tema.

Diferentes requisitos para los conjuntos de claves de cifrado

En las implementaciones AWS Encryption SDK lingüísticas distintas del SDK de cifrado de AWS para C conjunto de claves de cifrado (o conjunto de múltiples claves) o del proveedor de claves maestras deben poder cifrar la clave de datos. Si alguna de las claves de encapsulamiento no se cifra, el método de cifrado falla. Como resultado, la persona que llama debe tener los permisos necesarios para todas las claves del conjunto de claves. Si utiliza un conjunto de claves de detección para cifrar los datos, solo o en un conjunto de claves múltiple, la operación de cifrado no se realizará correctamente.

La excepción es la siguiente SDK de cifrado de AWS para C, en la que la operación de cifrado ignora un anillo de claves de detección estándar, pero falla si se especifica un anillo de claves de descubrimiento multirregional, solo o en un anillo de claves múltiples.

Conjuntos de claves compatibles y proveedores de claves maestras

La siguiente tabla muestra qué claves maestras y proveedores de claves maestras son compatibles con los llaveros que suministra. AWS Encryption SDK Cualquier pequeña incompatibilidad por restricciones de lenguaje se explica en el tema que trata la implementación del lenguaje.

Conjunto de claves: Proveedor de claves maestras:
AWS KMS llavero

KMSMasterKey(Java)

KMSMasterKeyProvider(Java)

KMSMasterKey(Python)

KMSMasterKeyProvider(Python)

nota

SDK de cifrado de AWS para Python Y SDK de cifrado de AWS para Java no incluyen una clave maestra o un proveedor de claves maestras que sea equivalente al conjunto de claves de descubrimiento AWS KMS regional.

AWS KMS Conjunto de claves jerárquico

Compatible con los siguientes lenguajes y versiones de programación:

  • Versión 3. x del SDK de cifrado de AWS para Java

  • Versión 4. x de la AWS Encryption SDK forma. NET

  • Versión 4. x de SDK de cifrado de AWS para Python, cuando se usa con la dependencia opcional de la biblioteca de proveedores de material criptográfico (MPL).

Conjunto de claves de AWS KMS ECDH

Compatible con los siguientes lenguajes y versiones de programación:

  • Versión 3. x del SDK de cifrado de AWS para Java

  • Versión 4. x de la AWS Encryption SDK forma. NET

  • Versión 4. x de SDK de cifrado de AWS para Python, cuando se usa con la dependencia opcional de la biblioteca de proveedores de material criptográfico (MPL).

Llavero sin procesar AES

Cuando se utilizan con claves de cifrado simétricas:

JceMasterKey(Java)

RawMasterKey(Python)

RSALlavero sin procesar

Cuando se utilizan con claves de cifrado asimétricas:

JceMasterKey(Java)

RawMasterKey(Python)

nota

El RSA llavero Raw no admite claves asimétricasKMS. Si desea utilizar RSA KMS claves asimétricas, versión 4. x de la forma AWS Encryption SDK . NETadmite conjuntos de AWS KMS claves que utilizan cifrado simétrico (SYMMETRIC_DEFAULT) o asimétrico. RSA AWS KMS keys

ECDHAnillo de claves sin procesar

Compatible con los siguientes lenguajes y versiones de programación:

  • Versión 3. x del SDK de cifrado de AWS para Java

  • Versión 4. x de la AWS Encryption SDK forma. NET

  • Versión 4. x de SDK de cifrado de AWS para Python, cuando se usa con la dependencia opcional de la biblioteca de proveedores de material criptográfico (MPL).