Enum CryptoMode

java.lang.Object
java.lang.Enum<CryptoMode>
com.amazonaws.services.s3.model.CryptoMode
All Implemented Interfaces:
Serializable, Comparable<CryptoMode>, java.lang.constant.Constable

public enum CryptoMode extends Enum<CryptoMode>
Denotes the different cryptographic modes available for securing an S3 object via client-side encryption. Crypto mode can be configured via CryptoConfiguration when the S3 encryption client is constructed.
  • Enum Constant Details

    • EncryptionOnly

      public static final CryptoMode EncryptionOnly
      Encryption-only mode using AES/CBC.
    • AuthenticatedEncryption

      public static final CryptoMode AuthenticatedEncryption
      Authenticated encryption mode using AES/GCM, AESWrap, etc. Please note the limitation on the maximum message size in bytes that can be encrypted under this mode is 2^36-32, or ~64G, due to the security limitation of AES/GCM as recommended by NIST.
    • StrictAuthenticatedEncryption

      public static final CryptoMode StrictAuthenticatedEncryption
      Strictly enforce the use of authenticated encryption via AES/GCM, AESWrap, etc., and will throw security exception if an S3 object retrieved is found to be not protected using authenticated encryption. This means range-get operation is not supported in this mode, since range-get is not authenticated.

      Please note the limitation on the maximum message size in bytes that can be encrypted under this mode is 2^36-32, or ~64G, due to the security limitation of AES/GCM as recommended by NIST.

  • Method Details

    • values

      public static CryptoMode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static CryptoMode valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null