AWSKMSGetPublicKeyResponse

Objective-C

@interface AWSKMSGetPublicKeyResponse

Swift

class AWSKMSGetPublicKeyResponse
  • Instead, use the KeySpec field in the GetPublicKey response.

    The KeySpec and CustomerMasterKeySpec fields have the same value. We recommend that you use the KeySpec field in your code. However, to avoid breaking changes, KMS supports both fields.

    Declaration

    Objective-C

    @property (nonatomic) AWSKMSCustomerMasterKeySpec customerMasterKeySpec;

    Swift

    var customerMasterKeySpec: AWSKMSCustomerMasterKeySpec { get set }
  • The encryption algorithms that KMS supports for this key.

    This information is critical. If a public key encrypts data outside of KMS by using an unsupported encryption algorithm, the ciphertext cannot be decrypted.

    This field appears in the response only when the KeyUsage of the public key is ENCRYPT_DECRYPT.

    Declaration

    Objective-C

    @property (nonatomic, strong) NSArray<NSString *> *_Nullable encryptionAlgorithms;

    Swift

    var encryptionAlgorithms: [String]? { get set }
  • The key agreement algorithm used to derive a shared secret. This field is present only when the KMS key has a KeyUsage value of KEY_AGREEMENT.

    Declaration

    Objective-C

    @property (nonatomic, strong) NSArray<NSString *> *_Nullable keyAgreementAlgorithms;

    Swift

    var keyAgreementAlgorithms: [String]? { get set }
  • The Amazon Resource Name (key ARN) of the asymmetric KMS key from which the public key was downloaded.

    Declaration

    Objective-C

    @property (nonatomic, strong) NSString *_Nullable keyId;

    Swift

    var keyId: String? { get set }
  • The type of the of the public key that was downloaded.

    Declaration

    Objective-C

    @property (nonatomic) AWSKMSKeySpec keySpec;

    Swift

    var keySpec: AWSKMSKeySpec { get set }
  • The permitted use of the public key. Valid values for asymmetric key pairs are ENCRYPT_DECRYPT, SIGN_VERIFY, and KEY_AGREEMENT.

    This information is critical. For example, if a public key with SIGN_VERIFY key usage encrypts data outside of KMS, the ciphertext cannot be decrypted.

    Declaration

    Objective-C

    @property (nonatomic) AWSKMSKeyUsageType keyUsage;

    Swift

    var keyUsage: AWSKMSKeyUsageType { get set }
  • The exported public key.

    The value is a DER-encoded X.509 public key, also known as SubjectPublicKeyInfo (SPKI), as defined in RFC 5280. When you use the HTTP API or the Amazon Web Services CLI, the value is Base64-encoded. Otherwise, it is not Base64-encoded.

    Declaration

    Objective-C

    @property (nonatomic, strong) NSData *_Nullable publicKey;

    Swift

    var publicKey: Data? { get set }
  • The signing algorithms that KMS supports for this key.

    This field appears in the response only when the KeyUsage of the public key is SIGN_VERIFY.

    Declaration

    Objective-C

    @property (nonatomic, strong) NSArray<NSString *> *_Nullable signingAlgorithms;

    Swift

    var signingAlgorithms: [String]? { get set }