Enum JweAlgorithmType

    • Enum Constant Detail

      • DIRECT

        public static final JweAlgorithmType DIRECT
        Direct symmetric encryption.
      • ECDH_ES

        public static final JweAlgorithmType ECDH_ES
        Elliptic Curve Diffie-Hellman (ECDH) key agreement in Ephemeral-Static (ES) configuration.
    • Method Detail

      • values

        public static JweAlgorithmType[] values()
        Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:
        for (JweAlgorithmType c : JweAlgorithmType.values())
            System.out.println(c);
        
        Returns:
        an array containing the constants of this enum type, in the order they are declared
      • valueOf

        public static JweAlgorithmType 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
      • isSymmetric

        public boolean isSymmetric()
        Indicates whether the algorithm type uses the same key for both encryption and decryption operations (symmetric encryption). Otherwise, a public key is used for encryption and a corresponding private key for decryption.
        Returns:
        true if the algorithm is symmetric, or false if it is a public key algorithm.
      • isAuthenticated

        public boolean isAuthenticated()
        Indicates whether the algorithm type provides assurance of the originator of an encrypted JWT (sender authentication). If the algorithm is unauthenticated then it should be used in combination with a JWS signature scheme if you need to ensure that JWTs can only be produced by trusted sources.
        Returns:
        true if the encryption algorithm provides sender authentication as well as confidentiality.
      • getEncryptionPurpose

        public Purpose<? extends CryptoKey> getEncryptionPurpose​(String label)
        Returns a Purpose that can be used to retrieve keys that are suitable for encryption with this type of JWE algorithm.
        Parameters:
        label - the purpose label.
        Returns:
        a purpose with the given label and an appropriate key type.
      • getDecryptionPurpose

        public Purpose<? extends CryptoKey> getDecryptionPurpose​(String label)
        Returns a Purpose that can be used to retrieve keys that are suitable for decryption with this type of JWE algorithm.
        Parameters:
        label - the purpose label.
        Returns:
        a purpose with the given label and an appropriate key type.