@aws-sdk/client-kms 3.926.0 → 3.927.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist-cjs/index.js CHANGED
@@ -555,6 +555,7 @@ const CustomerMasterKeySpec = {
555
555
  SYMMETRIC_DEFAULT: "SYMMETRIC_DEFAULT",
556
556
  };
557
557
  const KeySpec = {
558
+ ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519",
558
559
  ECC_NIST_P256: "ECC_NIST_P256",
559
560
  ECC_NIST_P384: "ECC_NIST_P384",
560
561
  ECC_NIST_P521: "ECC_NIST_P521",
@@ -625,6 +626,8 @@ const SigningAlgorithmSpec = {
625
626
  ECDSA_SHA_256: "ECDSA_SHA_256",
626
627
  ECDSA_SHA_384: "ECDSA_SHA_384",
627
628
  ECDSA_SHA_512: "ECDSA_SHA_512",
629
+ ED25519_PH_SHA_512: "ED25519_PH_SHA_512",
630
+ ED25519_SHA_512: "ED25519_SHA_512",
628
631
  ML_DSA_SHAKE_256: "ML_DSA_SHAKE_256",
629
632
  RSASSA_PKCS1_V1_5_SHA_256: "RSASSA_PKCS1_V1_5_SHA_256",
630
633
  RSASSA_PKCS1_V1_5_SHA_384: "RSASSA_PKCS1_V1_5_SHA_384",
@@ -719,6 +722,7 @@ class CustomKeyStoreHasCMKsException extends KMSServiceException {
719
722
  }
720
723
  }
721
724
  const DataKeyPairSpec = {
725
+ ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519",
722
726
  ECC_NIST_P256: "ECC_NIST_P256",
723
727
  ECC_NIST_P384: "ECC_NIST_P384",
724
728
  ECC_NIST_P521: "ECC_NIST_P521",
@@ -438,6 +438,7 @@ export const CustomerMasterKeySpec = {
438
438
  SYMMETRIC_DEFAULT: "SYMMETRIC_DEFAULT",
439
439
  };
440
440
  export const KeySpec = {
441
+ ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519",
441
442
  ECC_NIST_P256: "ECC_NIST_P256",
442
443
  ECC_NIST_P384: "ECC_NIST_P384",
443
444
  ECC_NIST_P521: "ECC_NIST_P521",
@@ -508,6 +509,8 @@ export const SigningAlgorithmSpec = {
508
509
  ECDSA_SHA_256: "ECDSA_SHA_256",
509
510
  ECDSA_SHA_384: "ECDSA_SHA_384",
510
511
  ECDSA_SHA_512: "ECDSA_SHA_512",
512
+ ED25519_PH_SHA_512: "ED25519_PH_SHA_512",
513
+ ED25519_SHA_512: "ED25519_SHA_512",
511
514
  ML_DSA_SHAKE_256: "ML_DSA_SHAKE_256",
512
515
  RSASSA_PKCS1_V1_5_SHA_256: "RSASSA_PKCS1_V1_5_SHA_256",
513
516
  RSASSA_PKCS1_V1_5_SHA_384: "RSASSA_PKCS1_V1_5_SHA_384",
@@ -602,6 +605,7 @@ export class CustomKeyStoreHasCMKsException extends __BaseException {
602
605
  }
603
606
  }
604
607
  export const DataKeyPairSpec = {
608
+ ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519",
605
609
  ECC_NIST_P256: "ECC_NIST_P256",
606
610
  ECC_NIST_P384: "ECC_NIST_P384",
607
611
  ECC_NIST_P521: "ECC_NIST_P521",
@@ -71,7 +71,7 @@ declare const CreateKeyCommand_base: {
71
71
  * key never leaves KMS unencrypted. However, you can use the <a>GetPublicKey</a> operation to download the public key so it can be used
72
72
  * outside of KMS. Each KMS key can have only one key usage. KMS keys with RSA key pairs
73
73
  * can be used to encrypt and decrypt data or sign and verify messages (but not both). KMS
74
- * keys with NIST-recommended ECC key pairs can be used to sign and verify messages or
74
+ * keys with NIST-standard ECC key pairs can be used to sign and verify messages or
75
75
  * derive shared secrets (but not both). KMS keys with <code>ECC_SECG_P256K1</code> can be
76
76
  * used only to sign and verify messages. KMS keys with ML-DSA key pairs can be used to
77
77
  * sign and verify messages. KMS keys with SM2 key pairs (China Regions only) can be used
@@ -211,7 +211,7 @@ declare const CreateKeyCommand_base: {
211
211
  * Description: "STRING_VALUE",
212
212
  * KeyUsage: "SIGN_VERIFY" || "ENCRYPT_DECRYPT" || "GENERATE_VERIFY_MAC" || "KEY_AGREEMENT",
213
213
  * CustomerMasterKeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2",
214
- * KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87",
214
+ * KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87" || "ECC_NIST_EDWARDS25519",
215
215
  * Origin: "AWS_KMS" || "EXTERNAL" || "AWS_CLOUDHSM" || "EXTERNAL_KEY_STORE",
216
216
  * CustomKeyStoreId: "STRING_VALUE",
217
217
  * BypassPolicyLockoutSafetyCheck: true || false,
@@ -244,12 +244,12 @@ declare const CreateKeyCommand_base: {
244
244
  * // ExpirationModel: "KEY_MATERIAL_EXPIRES" || "KEY_MATERIAL_DOES_NOT_EXPIRE",
245
245
  * // KeyManager: "AWS" || "CUSTOMER",
246
246
  * // CustomerMasterKeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2",
247
- * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87",
247
+ * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87" || "ECC_NIST_EDWARDS25519",
248
248
  * // EncryptionAlgorithms: [ // EncryptionAlgorithmSpecList
249
249
  * // "SYMMETRIC_DEFAULT" || "RSAES_OAEP_SHA_1" || "RSAES_OAEP_SHA_256" || "SM2PKE",
250
250
  * // ],
251
251
  * // SigningAlgorithms: [ // SigningAlgorithmSpecList
252
- * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256",
252
+ * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512",
253
253
  * // ],
254
254
  * // KeyAgreementAlgorithms: [ // KeyAgreementAlgorithmSpecList
255
255
  * // "ECDH",
@@ -82,12 +82,12 @@ declare const DecryptCommand_base: {
82
82
  * particular trusted accounts. For details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/iam-policies.html#iam-policies-best-practices">Best practices for IAM
83
83
  * policies</a> in the <i>Key Management Service Developer Guide</i>.</p>
84
84
  * <p>
85
- * <code>Decrypt</code> also supports <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html">Amazon Web Services Nitro Enclaves</a> and NitroTPM, which provide
86
- * attested environments in Amazon EC2. To call <code>Decrypt</code> for a Nitro enclave or NitroTPM, use
87
- * the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the <code>Recipient</code> parameter to provide the
88
- * attestation document for the attested environment. Instead of the plaintext data, the response
89
- * includes the plaintext data encrypted with the public key from the attestation document
90
- * (<code>CiphertextForRecipient</code>). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
85
+ * <code>Decrypt</code> also supports <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html">Amazon Web Services Nitro Enclaves</a> and NitroTPM, which
86
+ * provide attested environments in Amazon EC2. To call <code>Decrypt</code> for a Nitro enclave or
87
+ * NitroTPM, use the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the <code>Recipient</code>
88
+ * parameter to provide the attestation document for the attested environment. Instead of the
89
+ * plaintext data, the response includes the plaintext data encrypted with the public key from
90
+ * the attestation document (<code>CiphertextForRecipient</code>). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
91
91
  * <p>The KMS key that you use for this operation must be in a compatible key state. For
92
92
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
93
93
  * <p>
@@ -29,7 +29,7 @@ declare const DeriveSharedSecretCommand_base: {
29
29
  /**
30
30
  * <p>Derives a shared secret using a key agreement algorithm.</p>
31
31
  * <note>
32
- * <p>You must use an asymmetric NIST-recommended elliptic curve (ECC) or SM2 (China Regions
32
+ * <p>You must use an asymmetric NIST-standard elliptic curve (ECC) or SM2 (China Regions
33
33
  * only) KMS key pair with a <code>KeyUsage</code> value of <code>KEY_AGREEMENT</code> to call
34
34
  * DeriveSharedSecret.</p>
35
35
  * </note>
@@ -48,14 +48,14 @@ declare const DeriveSharedSecretCommand_base: {
48
48
  * <b>Alice</b> calls <a>CreateKey</a> to create an
49
49
  * asymmetric KMS key pair with a <code>KeyUsage</code> value of
50
50
  * <code>KEY_AGREEMENT</code>.</p>
51
- * <p>The asymmetric KMS key must use a NIST-recommended elliptic curve (ECC) or SM2 (China
51
+ * <p>The asymmetric KMS key must use a NIST-standard elliptic curve (ECC) or SM2 (China
52
52
  * Regions only) key spec.</p>
53
53
  * </li>
54
54
  * <li>
55
55
  * <p>
56
56
  * <b>Bob</b> creates an elliptic curve key pair.</p>
57
57
  * <p>Bob can call <a>CreateKey</a> to create an asymmetric KMS key pair or
58
- * generate a key pair outside of KMS. Bob's key pair must use the same NIST-recommended
58
+ * generate a key pair outside of KMS. Bob's key pair must use the same NIST-standard
59
59
  * elliptic curve (ECC) or SM2 (China Regions ony) curve as Alice.</p>
60
60
  * </li>
61
61
  * <li>
@@ -83,8 +83,8 @@ declare const DeriveSharedSecretCommand_base: {
83
83
  * </li>
84
84
  * </ol>
85
85
  * <p>To derive a shared secret you must provide a key agreement algorithm, the private key of
86
- * the caller's asymmetric NIST-recommended elliptic curve or SM2 (China Regions only) KMS key
87
- * pair, and the public key from your peer's NIST-recommended elliptic curve or SM2 (China
86
+ * the caller's asymmetric NIST-standard elliptic curve or SM2 (China Regions only) KMS key
87
+ * pair, and the public key from your peer's NIST-standard elliptic curve or SM2 (China
88
88
  * Regions only) key pair. The public key can be from another asymmetric KMS key pair or from a
89
89
  * key pair generated outside of KMS, but both key pairs must be on the same elliptic
90
90
  * curve.</p>
@@ -145,12 +145,12 @@ declare const DescribeKeyCommand_base: {
145
145
  * // ExpirationModel: "KEY_MATERIAL_EXPIRES" || "KEY_MATERIAL_DOES_NOT_EXPIRE",
146
146
  * // KeyManager: "AWS" || "CUSTOMER",
147
147
  * // CustomerMasterKeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2",
148
- * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87",
148
+ * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87" || "ECC_NIST_EDWARDS25519",
149
149
  * // EncryptionAlgorithms: [ // EncryptionAlgorithmSpecList
150
150
  * // "SYMMETRIC_DEFAULT" || "RSAES_OAEP_SHA_1" || "RSAES_OAEP_SHA_256" || "SM2PKE",
151
151
  * // ],
152
152
  * // SigningAlgorithms: [ // SigningAlgorithmSpecList
153
- * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256",
153
+ * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512",
154
154
  * // ],
155
155
  * // KeyAgreementAlgorithms: [ // KeyAgreementAlgorithmSpecList
156
156
  * // "ECDH",
@@ -53,12 +53,12 @@ declare const GenerateDataKeyCommand_base: {
53
53
  * <p>
54
54
  * <code>GenerateDataKey</code> also supports <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html">Amazon Web Services Nitro Enclaves</a>, which provide an
55
55
  * isolated compute environment in Amazon EC2. To call <code>GenerateDataKey</code> for an Amazon Web Services Nitro
56
- * enclave or NitroTPM, use the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the <code>Recipient</code> parameter
57
- * to provide the attestation document for the attested environment. <code>GenerateDataKey</code> returns a
58
- * copy of the data key encrypted under the specified KMS key, as usual. But instead of a
59
- * plaintext copy of the data key, the response includes a copy of the data key encrypted under
60
- * the public key from the attestation document (<code>CiphertextForRecipient</code>).
61
- * For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
56
+ * enclave or NitroTPM, use the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the
57
+ * <code>Recipient</code> parameter to provide the attestation document for the attested
58
+ * environment. <code>GenerateDataKey</code> returns a copy of the data key encrypted under the
59
+ * specified KMS key, as usual. But instead of a plaintext copy of the data key, the response
60
+ * includes a copy of the data key encrypted under the public key from the attestation document
61
+ * (<code>CiphertextForRecipient</code>). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
62
62
  * <p>The KMS key that you use for this operation must be in a compatible key state. For
63
63
  * details, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html">Key states of KMS keys</a> in the <i>Key Management Service Developer Guide</i>.</p>
64
64
  * <p>
@@ -60,12 +60,12 @@ declare const GenerateDataKeyPairCommand_base: {
60
60
  * <p>
61
61
  * <code>GenerateDataKeyPair</code> also supports <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html">Amazon Web Services Nitro Enclaves</a>, which provide an
62
62
  * isolated compute environment in Amazon EC2. To call <code>GenerateDataKeyPair</code> for an Amazon Web Services
63
- * Nitro enclave or NitroTPM, use the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the <code>Recipient</code>
64
- * parameter to provide the attestation document for the attested environment.
65
- * <code>GenerateDataKeyPair</code> returns the public data key and a copy of the private data
66
- * key encrypted under the specified KMS key, as usual. But instead of a plaintext copy of the
67
- * private data key (<code>PrivateKeyPlaintext</code>), the response includes a copy of the
68
- * private data key encrypted under the public key from the attestation document
63
+ * Nitro enclave or NitroTPM, use the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the
64
+ * <code>Recipient</code> parameter to provide the attestation document for the attested
65
+ * environment. <code>GenerateDataKeyPair</code> returns the public data key and a copy of the
66
+ * private data key encrypted under the specified KMS key, as usual. But instead of a plaintext
67
+ * copy of the private data key (<code>PrivateKeyPlaintext</code>), the response includes a copy
68
+ * of the private data key encrypted under the public key from the attestation document
69
69
  * (<code>CiphertextForRecipient</code>). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
70
70
  * <p>You can use an optional encryption context to add additional security to the encryption
71
71
  * operation. If you specify an <code>EncryptionContext</code>, you must specify the same
@@ -125,7 +125,7 @@ declare const GenerateDataKeyPairCommand_base: {
125
125
  * "<keys>": "STRING_VALUE",
126
126
  * },
127
127
  * KeyId: "STRING_VALUE", // required
128
- * KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2", // required
128
+ * KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2" || "ECC_NIST_EDWARDS25519", // required
129
129
  * GrantTokens: [ // GrantTokenList
130
130
  * "STRING_VALUE",
131
131
  * ],
@@ -142,7 +142,7 @@ declare const GenerateDataKeyPairCommand_base: {
142
142
  * // PrivateKeyPlaintext: new Uint8Array(),
143
143
  * // PublicKey: new Uint8Array(),
144
144
  * // KeyId: "STRING_VALUE",
145
- * // KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2",
145
+ * // KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2" || "ECC_NIST_EDWARDS25519",
146
146
  * // CiphertextForRecipient: new Uint8Array(),
147
147
  * // KeyMaterialId: "STRING_VALUE",
148
148
  * // };
@@ -107,7 +107,7 @@ declare const GenerateDataKeyPairWithoutPlaintextCommand_base: {
107
107
  * "<keys>": "STRING_VALUE",
108
108
  * },
109
109
  * KeyId: "STRING_VALUE", // required
110
- * KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2", // required
110
+ * KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2" || "ECC_NIST_EDWARDS25519", // required
111
111
  * GrantTokens: [ // GrantTokenList
112
112
  * "STRING_VALUE",
113
113
  * ],
@@ -119,7 +119,7 @@ declare const GenerateDataKeyPairWithoutPlaintextCommand_base: {
119
119
  * // PrivateKeyCiphertextBlob: new Uint8Array(),
120
120
  * // PublicKey: new Uint8Array(),
121
121
  * // KeyId: "STRING_VALUE",
122
- * // KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2",
122
+ * // KeyPairSpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SM2" || "ECC_NIST_EDWARDS25519",
123
123
  * // KeyMaterialId: "STRING_VALUE",
124
124
  * // };
125
125
  *
@@ -35,11 +35,11 @@ declare const GenerateRandomCommand_base: {
35
35
  * parameter.</p>
36
36
  * <p>
37
37
  * <code>GenerateRandom</code> also supports <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave.html">Amazon Web Services Nitro Enclaves</a>, which provide an
38
- * isolated compute environment in Amazon EC2. To call <code>GenerateRandom</code> for a Nitro
39
- * enclave or NitroTPM, use the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the <code>Recipient</code> parameter
40
- * to provide the attestation document for the attested environment. Instead of plaintext bytes, the response
41
- * includes the plaintext bytes encrypted under the public key from the attestation document
42
- * (<code>CiphertextForRecipient</code>). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
38
+ * isolated compute environment in Amazon EC2. To call <code>GenerateRandom</code> for a Nitro enclave
39
+ * or NitroTPM, use the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK. Use the <code>Recipient</code>
40
+ * parameter to provide the attestation document for the attested environment. Instead of
41
+ * plaintext bytes, the response includes the plaintext bytes encrypted under the public key from
42
+ * the attestation document (<code>CiphertextForRecipient</code>). For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
43
43
  * <p>For more information about entropy and random number generation, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/kms-cryptography.html#entropy-and-random-numbers">Entropy and random number generation</a> in the <i>Key Management Service Developer Guide</i>.</p>
44
44
  * <p>
45
45
  * <b>Cross-account use</b>: Not applicable.
@@ -99,13 +99,13 @@ declare const GetPublicKeyCommand_base: {
99
99
  * // KeyId: "STRING_VALUE",
100
100
  * // PublicKey: new Uint8Array(),
101
101
  * // CustomerMasterKeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2",
102
- * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87",
102
+ * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87" || "ECC_NIST_EDWARDS25519",
103
103
  * // KeyUsage: "SIGN_VERIFY" || "ENCRYPT_DECRYPT" || "GENERATE_VERIFY_MAC" || "KEY_AGREEMENT",
104
104
  * // EncryptionAlgorithms: [ // EncryptionAlgorithmSpecList
105
105
  * // "SYMMETRIC_DEFAULT" || "RSAES_OAEP_SHA_1" || "RSAES_OAEP_SHA_256" || "SM2PKE",
106
106
  * // ],
107
107
  * // SigningAlgorithms: [ // SigningAlgorithmSpecList
108
- * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256",
108
+ * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512",
109
109
  * // ],
110
110
  * // KeyAgreementAlgorithms: [ // KeyAgreementAlgorithmSpecList
111
111
  * // "ECDH",
@@ -150,12 +150,12 @@ declare const ReplicateKeyCommand_base: {
150
150
  * // ExpirationModel: "KEY_MATERIAL_EXPIRES" || "KEY_MATERIAL_DOES_NOT_EXPIRE",
151
151
  * // KeyManager: "AWS" || "CUSTOMER",
152
152
  * // CustomerMasterKeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2",
153
- * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87",
153
+ * // KeySpec: "RSA_2048" || "RSA_3072" || "RSA_4096" || "ECC_NIST_P256" || "ECC_NIST_P384" || "ECC_NIST_P521" || "ECC_SECG_P256K1" || "SYMMETRIC_DEFAULT" || "HMAC_224" || "HMAC_256" || "HMAC_384" || "HMAC_512" || "SM2" || "ML_DSA_44" || "ML_DSA_65" || "ML_DSA_87" || "ECC_NIST_EDWARDS25519",
154
154
  * // EncryptionAlgorithms: [ // EncryptionAlgorithmSpecList
155
155
  * // "SYMMETRIC_DEFAULT" || "RSAES_OAEP_SHA_1" || "RSAES_OAEP_SHA_256" || "SM2PKE",
156
156
  * // ],
157
157
  * // SigningAlgorithms: [ // SigningAlgorithmSpecList
158
- * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256",
158
+ * // "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512",
159
159
  * // ],
160
160
  * // KeyAgreementAlgorithms: [ // KeyAgreementAlgorithmSpecList
161
161
  * // "ECDH",
@@ -97,7 +97,7 @@ declare const SignCommand_base: {
97
97
  * GrantTokens: [ // GrantTokenList
98
98
  * "STRING_VALUE",
99
99
  * ],
100
- * SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256", // required
100
+ * SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512", // required
101
101
  * DryRun: true || false,
102
102
  * };
103
103
  * const command = new SignCommand(input);
@@ -105,7 +105,7 @@ declare const SignCommand_base: {
105
105
  * // { // SignResponse
106
106
  * // KeyId: "STRING_VALUE",
107
107
  * // Signature: new Uint8Array(),
108
- * // SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256",
108
+ * // SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512",
109
109
  * // };
110
110
  *
111
111
  * ```
@@ -78,7 +78,7 @@ declare const VerifyCommand_base: {
78
78
  * Message: new Uint8Array(), // e.g. Buffer.from("") or new TextEncoder().encode("") // required
79
79
  * MessageType: "RAW" || "DIGEST" || "EXTERNAL_MU",
80
80
  * Signature: new Uint8Array(), // e.g. Buffer.from("") or new TextEncoder().encode("") // required
81
- * SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256", // required
81
+ * SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512", // required
82
82
  * GrantTokens: [ // GrantTokenList
83
83
  * "STRING_VALUE",
84
84
  * ],
@@ -89,7 +89,7 @@ declare const VerifyCommand_base: {
89
89
  * // { // VerifyResponse
90
90
  * // KeyId: "STRING_VALUE",
91
91
  * // SignatureValid: true || false,
92
- * // SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256",
92
+ * // SigningAlgorithm: "RSASSA_PSS_SHA_256" || "RSASSA_PSS_SHA_384" || "RSASSA_PSS_SHA_512" || "RSASSA_PKCS1_V1_5_SHA_256" || "RSASSA_PKCS1_V1_5_SHA_384" || "RSASSA_PKCS1_V1_5_SHA_512" || "ECDSA_SHA_256" || "ECDSA_SHA_384" || "ECDSA_SHA_512" || "SM2DSA" || "ML_DSA_SHAKE_256" || "ED25519_SHA_512" || "ED25519_PH_SHA_512",
93
93
  * // };
94
94
  *
95
95
  * ```
@@ -1151,6 +1151,7 @@ export type CustomerMasterKeySpec = (typeof CustomerMasterKeySpec)[keyof typeof
1151
1151
  * @enum
1152
1152
  */
1153
1153
  export declare const KeySpec: {
1154
+ readonly ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519";
1154
1155
  readonly ECC_NIST_P256: "ECC_NIST_P256";
1155
1156
  readonly ECC_NIST_P384: "ECC_NIST_P384";
1156
1157
  readonly ECC_NIST_P521: "ECC_NIST_P521";
@@ -1299,7 +1300,7 @@ export interface CreateKeyRequest {
1299
1300
  * <code>SIGN_VERIFY</code>.</p>
1300
1301
  * </li>
1301
1302
  * <li>
1302
- * <p>For asymmetric KMS keys with NIST-recommended elliptic curve key pairs, specify
1303
+ * <p>For asymmetric KMS keys with NIST-standard elliptic curve key pairs, specify
1303
1304
  * <code>SIGN_VERIFY</code> or <code>KEY_AGREEMENT</code>.</p>
1304
1305
  * </li>
1305
1306
  * <li>
@@ -1409,7 +1410,7 @@ export interface CreateKeyRequest {
1409
1410
  * </ul>
1410
1411
  * </li>
1411
1412
  * <li>
1412
- * <p>Asymmetric NIST-recommended elliptic curve key pairs (signing and verification -or-
1413
+ * <p>Asymmetric NIST-standard elliptic curve key pairs (signing and verification -or-
1413
1414
  * deriving shared secrets)</p>
1414
1415
  * <ul>
1415
1416
  * <li>
@@ -1424,6 +1425,21 @@ export interface CreateKeyRequest {
1424
1425
  * <p>
1425
1426
  * <code>ECC_NIST_P521</code> (secp521r1)</p>
1426
1427
  * </li>
1428
+ * <li>
1429
+ * <p>
1430
+ * <code>ECC_NIST_EDWARDS25519</code> (ed25519) - signing and verification only</p>
1431
+ * <ul>
1432
+ * <li>
1433
+ * <p>
1434
+ * <b>Note:</b> For ECC_NIST_EDWARDS25519 KMS keys, the
1435
+ * ED25519_SHA_512 signing algorithm requires <a href="kms/latest/APIReference/API_Sign.html#KMS-Sign-request-MessageType">
1436
+ * <code>MessageType:RAW</code>
1437
+ * </a>, while ED25519_PH_SHA_512 requires <a href="kms/latest/APIReference/API_Sign.html#KMS-Sign-request-MessageType">
1438
+ * <code>MessageType:DIGEST</code>
1439
+ * </a>. These message types cannot be used interchangeably.</p>
1440
+ * </li>
1441
+ * </ul>
1442
+ * </li>
1427
1443
  * </ul>
1428
1444
  * </li>
1429
1445
  * <li>
@@ -1726,6 +1742,8 @@ export declare const SigningAlgorithmSpec: {
1726
1742
  readonly ECDSA_SHA_256: "ECDSA_SHA_256";
1727
1743
  readonly ECDSA_SHA_384: "ECDSA_SHA_384";
1728
1744
  readonly ECDSA_SHA_512: "ECDSA_SHA_512";
1745
+ readonly ED25519_PH_SHA_512: "ED25519_PH_SHA_512";
1746
+ readonly ED25519_SHA_512: "ED25519_SHA_512";
1729
1747
  readonly ML_DSA_SHAKE_256: "ML_DSA_SHAKE_256";
1730
1748
  readonly RSASSA_PKCS1_V1_5_SHA_256: "RSASSA_PKCS1_V1_5_SHA_256";
1731
1749
  readonly RSASSA_PKCS1_V1_5_SHA_384: "RSASSA_PKCS1_V1_5_SHA_384";
@@ -2401,6 +2419,7 @@ export interface CustomKeyStoresListEntry {
2401
2419
  * @enum
2402
2420
  */
2403
2421
  export declare const DataKeyPairSpec: {
2422
+ readonly ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519";
2404
2423
  readonly ECC_NIST_P256: "ECC_NIST_P256";
2405
2424
  readonly ECC_NIST_P384: "ECC_NIST_P384";
2406
2425
  readonly ECC_NIST_P521: "ECC_NIST_P521";
@@ -2440,8 +2459,8 @@ export type KeyEncryptionMechanism = (typeof KeyEncryptionMechanism)[keyof typeo
2440
2459
  /**
2441
2460
  * <p>Contains information about the party that receives the response from the API
2442
2461
  * operation.</p>
2443
- * <p>This data type is designed to support Amazon Web Services Nitro Enclaves and Amazon Web Services NitroTPM, which lets you create an attested
2444
- * environment in Amazon EC2. For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
2462
+ * <p>This data type is designed to support Amazon Web Services Nitro Enclaves and Amazon Web Services NitroTPM,
2463
+ * which lets you create an attested environment in Amazon EC2. For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
2445
2464
  * @public
2446
2465
  */
2447
2466
  export interface RecipientInfo {
@@ -2453,8 +2472,8 @@ export interface RecipientInfo {
2453
2472
  */
2454
2473
  KeyEncryptionAlgorithm?: KeyEncryptionMechanism | undefined;
2455
2474
  /**
2456
- * <p>The attestation document for an Amazon Web Services Nitro Enclave or a NitroTPM. This document includes the enclave's
2457
- * public key.</p>
2475
+ * <p>The attestation document for an Amazon Web Services Nitro Enclave or a NitroTPM. This document includes
2476
+ * the enclave's public key.</p>
2458
2477
  * @public
2459
2478
  */
2460
2479
  AttestationDocument?: Uint8Array | undefined;
@@ -2531,16 +2550,16 @@ export interface DecryptRequest {
2531
2550
  EncryptionAlgorithm?: EncryptionAlgorithmSpec | undefined;
2532
2551
  /**
2533
2552
  * <p>A signed <a href="https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave-concepts.html#term-attestdoc">attestation
2534
- * document</a> from an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the
2535
- * public key in the attestation document. The only valid encryption algorithm is <code>RSAES_OAEP_SHA_256</code>. </p>
2536
- * <p>This parameter supports the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK for Amazon Web Services Nitro Enclaves. It supports
2537
- * any Amazon Web Services SDK for Amazon Web Services NitroTPM.
2538
- * </p>
2553
+ * document</a> from an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to
2554
+ * use with the public key in the attestation document. The only valid encryption algorithm is
2555
+ * <code>RSAES_OAEP_SHA_256</code>. </p>
2556
+ * <p>This parameter supports the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK for
2557
+ * Amazon Web Services Nitro Enclaves. It supports any Amazon Web Services SDK for Amazon Web Services NitroTPM. </p>
2539
2558
  * <p>When you use this parameter, instead of returning the plaintext data, KMS encrypts the
2540
2559
  * plaintext data with the public key in the attestation document, and returns the resulting
2541
2560
  * ciphertext in the <code>CiphertextForRecipient</code> field in the response. This ciphertext
2542
- * can be decrypted only with the private key in the attested environment. The <code>Plaintext</code> field in
2543
- * the response is null or empty.</p>
2561
+ * can be decrypted only with the private key in the attested environment. The
2562
+ * <code>Plaintext</code> field in the response is null or empty.</p>
2544
2563
  * <p>For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
2545
2564
  * @public
2546
2565
  */
@@ -2745,7 +2764,7 @@ export interface DeleteImportedKeyMaterialResponse {
2745
2764
  */
2746
2765
  export interface DeriveSharedSecretRequest {
2747
2766
  /**
2748
- * <p>Identifies an asymmetric NIST-recommended ECC or SM2 (China Regions only) KMS key. KMS
2767
+ * <p>Identifies an asymmetric NIST-standard ECC or SM2 (China Regions only) KMS key. KMS
2749
2768
  * uses the private key in the specified key pair to derive the shared secret. The key usage of
2750
2769
  * the KMS key must be <code>KEY_AGREEMENT</code>. To find the <code>KeyUsage</code> of a KMS
2751
2770
  * key, use the <a>DescribeKey</a> operation.</p>
@@ -2780,7 +2799,7 @@ export interface DeriveSharedSecretRequest {
2780
2799
  */
2781
2800
  KeyAgreementAlgorithm: KeyAgreementAlgorithmSpec | undefined;
2782
2801
  /**
2783
- * <p>Specifies the public key in your peer's NIST-recommended elliptic curve (ECC) or SM2
2802
+ * <p>Specifies the public key in your peer's NIST-standard elliptic curve (ECC) or SM2
2784
2803
  * (China Regions only) key pair.</p>
2785
2804
  * <p>The public key must be a DER-encoded X.509 public key, also known as
2786
2805
  * <code>SubjectPublicKeyInfo</code> (SPKI), as defined in <a href="https://tools.ietf.org/html/rfc5280">RFC 5280</a>.</p>
@@ -2812,20 +2831,22 @@ export interface DeriveSharedSecretRequest {
2812
2831
  DryRun?: boolean | undefined;
2813
2832
  /**
2814
2833
  * <p>A signed <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc">attestation document</a> from
2815
- * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The
2816
- * only valid encryption algorithm is <code>RSAES_OAEP_SHA_256</code>. </p>
2817
- * <p>This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM. To call
2818
- * DeriveSharedSecret generate an attestation document use either <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> for an Amazon Web Services Nitro Enclaves or
2819
- * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/attestation-get-doc.html">Amazon Web Services NitroTPM tools</a> for Amazon Web Services NitroTPM. Then use the Recipient parameter from any Amazon Web Services SDK to provide the
2834
+ * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in
2835
+ * the attestation document. The only valid encryption algorithm is
2836
+ * <code>RSAES_OAEP_SHA_256</code>. </p>
2837
+ * <p>This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves or
2838
+ * Amazon Web Services NitroTPM. To call DeriveSharedSecret generate an attestation document use either
2839
+ * <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> for an Amazon Web Services Nitro Enclaves or <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/attestation-get-doc.html">Amazon Web Services NitroTPM tools</a> for
2840
+ * Amazon Web Services NitroTPM. Then use the Recipient parameter from any Amazon Web Services SDK to provide the
2820
2841
  * attestation document for the attested environment.</p>
2821
2842
  * <p>When you use this parameter, instead of returning a plaintext copy of the shared secret,
2822
2843
  * KMS encrypts the plaintext shared secret under the public key in the attestation document,
2823
2844
  * and returns the resulting ciphertext in the <code>CiphertextForRecipient</code> field in the
2824
- * response. This ciphertext can be decrypted only with the private key in the attested environment. The
2825
- * <code>CiphertextBlob</code> field in the response contains the encrypted shared secret
2826
- * derived from the KMS key specified by the <code>KeyId</code> parameter and public key
2827
- * specified by the <code>PublicKey</code> parameter. The <code>SharedSecret</code> field in the
2828
- * response is null or empty.</p>
2845
+ * response. This ciphertext can be decrypted only with the private key in the attested
2846
+ * environment. The <code>CiphertextBlob</code> field in the response contains the encrypted
2847
+ * shared secret derived from the KMS key specified by the <code>KeyId</code> parameter and
2848
+ * public key specified by the <code>PublicKey</code> parameter. The <code>SharedSecret</code>
2849
+ * field in the response is null or empty.</p>
2829
2850
  * <p>For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
2830
2851
  * @public
2831
2852
  */
@@ -2849,8 +2870,8 @@ export interface DeriveSharedSecretResponse {
2849
2870
  */
2850
2871
  SharedSecret?: Uint8Array | undefined;
2851
2872
  /**
2852
- * <p>The plaintext shared secret encrypted with the public key from the attestation document. This
2853
- * ciphertext can be decrypted only by using a private key from the attested environment. </p>
2873
+ * <p>The plaintext shared secret encrypted with the public key from the attestation document.
2874
+ * This ciphertext can be decrypted only by using a private key from the attested environment. </p>
2854
2875
  * <p>This field is included in the response only when the <code>Recipient</code> parameter in
2855
2876
  * the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.
2856
2877
  * For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
@@ -3304,11 +3325,11 @@ export interface GenerateDataKeyRequest {
3304
3325
  GrantTokens?: string[] | undefined;
3305
3326
  /**
3306
3327
  * <p>A signed <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc">attestation document</a> from
3307
- * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The
3308
- * only valid encryption algorithm is <code>RSAES_OAEP_SHA_256</code>. </p>
3309
- * <p>This parameter supports the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK for Amazon Web Services Nitro Enclaves. It supports
3310
- * any Amazon Web Services SDK for Amazon Web Services NitroTPM.
3311
- * </p>
3328
+ * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in
3329
+ * the attestation document. The only valid encryption algorithm is
3330
+ * <code>RSAES_OAEP_SHA_256</code>. </p>
3331
+ * <p>This parameter supports the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK for
3332
+ * Amazon Web Services Nitro Enclaves. It supports any Amazon Web Services SDK for Amazon Web Services NitroTPM. </p>
3312
3333
  * <p>When you use this parameter, instead of returning the plaintext data key, KMS encrypts
3313
3334
  * the plaintext data key under the public key in the attestation document, and returns the
3314
3335
  * resulting ciphertext in the <code>CiphertextForRecipient</code> field in the response. This
@@ -3426,19 +3447,21 @@ export interface GenerateDataKeyPairRequest {
3426
3447
  GrantTokens?: string[] | undefined;
3427
3448
  /**
3428
3449
  * <p>A signed <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc">attestation document</a> from
3429
- * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The
3430
- * only valid encryption algorithm is <code>RSAES_OAEP_SHA_256</code>. </p>
3431
- * <p>This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM. To call
3432
- * GenerateDataKeyPair generate an attestation document use either <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> for an Amazon Web Services Nitro Enclaves or
3433
- * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/attestation-get-doc.html">Amazon Web Services NitroTPM tools</a> for Amazon Web Services NitroTPM. Then use the Recipient parameter from any Amazon Web Services SDK to provide the
3450
+ * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in
3451
+ * the attestation document. The only valid encryption algorithm is
3452
+ * <code>RSAES_OAEP_SHA_256</code>. </p>
3453
+ * <p>This parameter only supports attestation documents for Amazon Web Services Nitro Enclaves or
3454
+ * Amazon Web Services NitroTPM. To call GenerateDataKeyPair generate an attestation document use either
3455
+ * <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> for an Amazon Web Services Nitro Enclaves or <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/attestation-get-doc.html">Amazon Web Services NitroTPM tools</a> for
3456
+ * Amazon Web Services NitroTPM. Then use the Recipient parameter from any Amazon Web Services SDK to provide the
3434
3457
  * attestation document for the attested environment.</p>
3435
3458
  * <p>When you use this parameter, instead of returning a plaintext copy of the private data
3436
3459
  * key, KMS encrypts the plaintext private data key under the public key in the attestation
3437
3460
  * document, and returns the resulting ciphertext in the <code>CiphertextForRecipient</code>
3438
3461
  * field in the response. This ciphertext can be decrypted only with the private key in the
3439
- * attested environment. The <code>CiphertextBlob</code> field in the response contains a copy of the private
3440
- * data key encrypted under the KMS key specified by the <code>KeyId</code> parameter. The
3441
- * <code>PrivateKeyPlaintext</code> field in the response is null or empty.</p>
3462
+ * attested environment. The <code>CiphertextBlob</code> field in the response contains a copy of
3463
+ * the private data key encrypted under the KMS key specified by the <code>KeyId</code>
3464
+ * parameter. The <code>PrivateKeyPlaintext</code> field in the response is null or empty.</p>
3442
3465
  * <p>For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
3443
3466
  * @public
3444
3467
  */
@@ -3482,8 +3505,9 @@ export interface GenerateDataKeyPairResponse {
3482
3505
  */
3483
3506
  KeyPairSpec?: DataKeyPairSpec | undefined;
3484
3507
  /**
3485
- * <p>The plaintext private data key encrypted with the public key from the attestation document. This
3486
- * ciphertext can be decrypted only by using a private key from the attested environment. </p>
3508
+ * <p>The plaintext private data key encrypted with the public key from the attestation
3509
+ * document. This ciphertext can be decrypted only by using a private key from the attested
3510
+ * environment. </p>
3487
3511
  * <p>This field is included in the response only when the <code>Recipient</code> parameter in
3488
3512
  * the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.
3489
3513
  * For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
@@ -3769,16 +3793,16 @@ export interface GenerateRandomRequest {
3769
3793
  CustomKeyStoreId?: string | undefined;
3770
3794
  /**
3771
3795
  * <p>A signed <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitro-enclave-how.html#term-attestdoc">attestation document</a> from
3772
- * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in the attestation document. The
3773
- * only valid encryption algorithm is <code>RSAES_OAEP_SHA_256</code>. </p>
3774
- * <p>This parameter supports the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK for Amazon Web Services Nitro Enclaves. It supports
3775
- * any Amazon Web Services SDK for Amazon Web Services NitroTPM.
3776
- * </p>
3796
+ * an Amazon Web Services Nitro enclave or NitroTPM, and the encryption algorithm to use with the public key in
3797
+ * the attestation document. The only valid encryption algorithm is
3798
+ * <code>RSAES_OAEP_SHA_256</code>. </p>
3799
+ * <p>This parameter supports the <a href="https://docs.aws.amazon.com/enclaves/latest/user/developing-applications.html#sdk">Amazon Web Services Nitro Enclaves SDK</a> or any Amazon Web Services SDK for
3800
+ * Amazon Web Services Nitro Enclaves. It supports any Amazon Web Services SDK for Amazon Web Services NitroTPM. </p>
3777
3801
  * <p>When you use this parameter, instead of returning plaintext bytes, KMS encrypts the
3778
3802
  * plaintext bytes under the public key in the attestation document, and returns the resulting
3779
3803
  * ciphertext in the <code>CiphertextForRecipient</code> field in the response. This ciphertext
3780
- * can be decrypted only with the private key in the attested environment. The <code>Plaintext</code> field in
3781
- * the response is null or empty.</p>
3804
+ * can be decrypted only with the private key in the attested environment. The
3805
+ * <code>Plaintext</code> field in the response is null or empty.</p>
3782
3806
  * <p>For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
3783
3807
  * @public
3784
3808
  */
@@ -3796,8 +3820,8 @@ export interface GenerateRandomResponse {
3796
3820
  */
3797
3821
  Plaintext?: Uint8Array | undefined;
3798
3822
  /**
3799
- * <p>The plaintext random bytes encrypted with the public key from the attestation document. This
3800
- * ciphertext can be decrypted only by using a private key from the attested environment. </p>
3823
+ * <p>The plaintext random bytes encrypted with the public key from the attestation document.
3824
+ * This ciphertext can be decrypted only by using a private key from the attested environment. </p>
3801
3825
  * <p>This field is included in the response only when the <code>Recipient</code> parameter in
3802
3826
  * the request includes a valid attestation document from an Amazon Web Services Nitro enclave or NitroTPM.
3803
3827
  * For information about the interaction between KMS and Amazon Web Services Nitro Enclaves or Amazon Web Services NitroTPM, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/cryptographic-attestation.html">Cryptographic attestation support in KMS</a> in the <i>Key Management Service Developer Guide</i>.</p>
@@ -5642,6 +5666,17 @@ export interface SignRequest {
5642
5666
  * value with an unhashed message, the security of the signing operation can be
5643
5667
  * compromised.</p>
5644
5668
  * </important>
5669
+ * <p>When using ECC_NIST_EDWARDS25519 KMS keys:</p>
5670
+ * <ul>
5671
+ * <li>
5672
+ * <p>ED25519_SHA_512 signing algorithm requires KMS <code>MessageType:RAW</code>
5673
+ * </p>
5674
+ * </li>
5675
+ * <li>
5676
+ * <p>ED25519_PH_SHA_512 signing algorithm requires KMS <code>MessageType:DIGEST</code>
5677
+ * </p>
5678
+ * </li>
5679
+ * </ul>
5645
5680
  * <p>When the value of <code>MessageType</code> is <code>DIGEST</code>, the length of the
5646
5681
  * <code>Message</code> value must match the length of hashed messages for the specified
5647
5682
  * signing algorithm.</p>
@@ -6082,6 +6117,17 @@ export interface VerifyRequest {
6082
6117
  * value with an unhashed message, the security of the signing operation can be
6083
6118
  * compromised.</p>
6084
6119
  * </important>
6120
+ * <p>When using ECC_NIST_EDWARDS25519 KMS keys:</p>
6121
+ * <ul>
6122
+ * <li>
6123
+ * <p>ED25519_SHA_512 signing algorithm requires KMS <code>MessageType:RAW</code>
6124
+ * </p>
6125
+ * </li>
6126
+ * <li>
6127
+ * <p>ED25519_PH_SHA_512 signing algorithm requires KMS <code>MessageType:DIGEST</code>
6128
+ * </p>
6129
+ * </li>
6130
+ * </ul>
6085
6131
  * <p>When the value of <code>MessageType</code> is <code>DIGEST</code>, the length of the
6086
6132
  * <code>Message</code> value must match the length of hashed messages for the specified
6087
6133
  * signing algorithm.</p>
@@ -401,6 +401,7 @@ export declare const CustomerMasterKeySpec: {
401
401
  export type CustomerMasterKeySpec =
402
402
  (typeof CustomerMasterKeySpec)[keyof typeof CustomerMasterKeySpec];
403
403
  export declare const KeySpec: {
404
+ readonly ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519";
404
405
  readonly ECC_NIST_P256: "ECC_NIST_P256";
405
406
  readonly ECC_NIST_P384: "ECC_NIST_P384";
406
407
  readonly ECC_NIST_P521: "ECC_NIST_P521";
@@ -513,6 +514,8 @@ export declare const SigningAlgorithmSpec: {
513
514
  readonly ECDSA_SHA_256: "ECDSA_SHA_256";
514
515
  readonly ECDSA_SHA_384: "ECDSA_SHA_384";
515
516
  readonly ECDSA_SHA_512: "ECDSA_SHA_512";
517
+ readonly ED25519_PH_SHA_512: "ED25519_PH_SHA_512";
518
+ readonly ED25519_SHA_512: "ED25519_SHA_512";
516
519
  readonly ML_DSA_SHAKE_256: "ML_DSA_SHAKE_256";
517
520
  readonly RSASSA_PKCS1_V1_5_SHA_256: "RSASSA_PKCS1_V1_5_SHA_256";
518
521
  readonly RSASSA_PKCS1_V1_5_SHA_384: "RSASSA_PKCS1_V1_5_SHA_384";
@@ -631,6 +634,7 @@ export interface CustomKeyStoresListEntry {
631
634
  XksProxyConfiguration?: XksProxyConfigurationType | undefined;
632
635
  }
633
636
  export declare const DataKeyPairSpec: {
637
+ readonly ECC_NIST_EDWARDS25519: "ECC_NIST_EDWARDS25519";
634
638
  readonly ECC_NIST_P256: "ECC_NIST_P256";
635
639
  readonly ECC_NIST_P384: "ECC_NIST_P384";
636
640
  readonly ECC_NIST_P521: "ECC_NIST_P521";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-kms",
3
3
  "description": "AWS SDK for JavaScript Kms Client for Node.js, Browser and React Native",
4
- "version": "3.926.0",
4
+ "version": "3.927.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "node ../../scripts/compilation/inline client-kms",
@@ -20,17 +20,17 @@
20
20
  "dependencies": {
21
21
  "@aws-crypto/sha256-browser": "5.2.0",
22
22
  "@aws-crypto/sha256-js": "5.2.0",
23
- "@aws-sdk/core": "3.926.0",
24
- "@aws-sdk/credential-provider-node": "3.926.0",
23
+ "@aws-sdk/core": "3.927.0",
24
+ "@aws-sdk/credential-provider-node": "3.927.0",
25
25
  "@aws-sdk/middleware-host-header": "3.922.0",
26
26
  "@aws-sdk/middleware-logger": "3.922.0",
27
27
  "@aws-sdk/middleware-recursion-detection": "3.922.0",
28
- "@aws-sdk/middleware-user-agent": "3.926.0",
28
+ "@aws-sdk/middleware-user-agent": "3.927.0",
29
29
  "@aws-sdk/region-config-resolver": "3.925.0",
30
30
  "@aws-sdk/types": "3.922.0",
31
31
  "@aws-sdk/util-endpoints": "3.922.0",
32
32
  "@aws-sdk/util-user-agent-browser": "3.922.0",
33
- "@aws-sdk/util-user-agent-node": "3.926.0",
33
+ "@aws-sdk/util-user-agent-node": "3.927.0",
34
34
  "@smithy/config-resolver": "^4.4.2",
35
35
  "@smithy/core": "^3.17.2",
36
36
  "@smithy/fetch-http-handler": "^5.3.5",