本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
以下代码示例演示如何使用 GenerateDataKey
。
- AWS CLI
-
示例 1:生成 256 位对称数据密钥
以下
generate-data-key
示例请求一个 256 位的对称数据密钥以供外部使用。 AWS该命令返回一个明文数据密钥以供立即使用和删除,以及以指定 KMS 密钥加密的该数据密钥的副本。您可以安全地将加密的数据密钥与加密的数据一起存储。要请求 256 位数据密钥,请使用值为
AES_256
的key-spec
参数。要请求 128 位数据密钥,请使用值为AES_128
的key-spec
参数。对于所有其他数据密钥长度,请使用number-of-bytes
参数。您指定的 KMS 密钥必须是对称加密 KMS 密钥,即 KeySpec 值为 SYMMETRIC_DEFAULT 的 KMS 密钥。
aws kms generate-data-key \ --key-id
alias/ExampleAlias
\ --key-specAES_256
输出:
{ "Plaintext": "VdzKNHGzUAzJeRBVY+uUmofUGGiDzyB3+i9fVkh3piw=", "KeyId": "arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "CiphertextBlob": "AQEDAHjRYf5WytIc0C857tFSnBaPn2F8DgfmThbJlGfR8P3WlwAAAH4wfAYJKoZIhvcNAQcGoG8wbQIBADBoBgkqhkiG9w0BBwEwHgYJYIZIAWUDBAEuMBEEDEFogLqPWZconQhwHAIBEIA7d9AC7GeJJM34njQvg4Wf1d5sw0NIo1MrBqZa+YdhV8MrkBQPeac0ReRVNDt9qleAt+SHgIRF8P0H+7U=" }
Plaintext
(明文数据密钥)和CiphertextBlob
(加密数据密钥)均以 base64 编码的格式返回。有关更多信息,请参阅《密钥管理服务开发人员指南》中的数据密钥 < https://docs.aws.amazon.com/kms/ latest/developerguide/concepts .html #data-AWS k eys。
示例 2:生成 512 位对称数据密钥
以下
generate-data-key
示例请求用于加密和解密的 512 位对称数据密钥。该命令返回一个明文数据密钥以供立即使用和删除,以及以指定 KMS 密钥加密的该数据密钥的副本。您可以安全地将加密的数据密钥与加密的数据一起存储。要请求 128 或 256 位以外的密钥长度,请使用
number-of-bytes
参数。为了请求 512 位数据密钥,以下示例使用值为 64(字节)的number-of-bytes
参数。您指定的 KMS 密钥必须是对称加密 KMS 密钥,即密钥规格值为 SYMMETRIC_DEFAULT 的 KMS 密钥。
注意:本示例输出中的值被截断,便于显示。
aws kms generate-data-key \ --key-id
1234abcd-12ab-34cd-56ef-1234567890ab
\ --number-of-bytes64
输出:
{ "CiphertextBlob": "AQIBAHi6LtupRpdKl2aJTzkK6FbhOtQkMlQJJH3PdtHvS/y+hAEnX/QQNmMwDfg2korNMEc8AAACaDCCAmQGCSqGSIb3DQEHBqCCAlUwggJRAgEAMIICSgYJKoZ...", "Plaintext": "ty8Lr0Bk6OF07M2BWt6qbFdNB+G00ZLtf5MSEb4al3R2UKWGOp06njAwy2n72VRm2m7z/Pm9Wpbvttz6a4lSo9hgPvKhZ5y6RTm4OovEXiVfBveyX3DQxDzRSwbKDPk/...", "KeyId": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab" }
Plaintext
(明文数据密钥)和CiphertextBlob
(加密数据密钥)均以 base64 编码的格式返回。有关更多信息,请参阅《密钥管理服务开发人员指南》中的数据密钥 < https://docs.aws.amazon.com/kms/ latest/developerguide/concepts .html #data-AWS k eys。
-
有关 API 的详细信息,请参阅AWS CLI 命令参考GenerateDataKey
中的。
-
有关 S AWS DK 开发者指南和代码示例的完整列表,请参阅将此服务与 AWS SDK 配合使用。本主题还包括有关入门的信息以及有关先前的 SDK 版本的详细信息。