Class ECDHEncrypter

    • Constructor Detail

      • ECDHEncrypter

        public ECDHEncrypter​(ECPublicKey publicKey)
                      throws JOSEException
        Creates a new Elliptic Curve Diffie-Hellman encrypter.
        Parameters:
        publicKey - The public EC key. Must not be null.
        Throws:
        JOSEException - If the elliptic curve is not supported.
      • ECDHEncrypter

        public ECDHEncrypter​(ECKey ecJWK)
                      throws JOSEException
        Creates a new Elliptic Curve Diffie-Hellman encrypter.
        Parameters:
        ecJWK - The EC JSON Web Key (JWK). Must not be null.
        Throws:
        JOSEException - If the elliptic curve is not supported.
      • ECDHEncrypter

        public ECDHEncrypter​(ECPublicKey publicKey,
                             SecretKey contentEncryptionKey)
                      throws JOSEException
        Creates a new Elliptic Curve Diffie-Hellman encrypter with an optionally specified content encryption key (CEK).
        Parameters:
        publicKey - The public EC key. Must not be null.
        contentEncryptionKey - The content encryption key (CEK) to use. If specified its algorithm must be "AES" and its length must match the expected for the JWE encryption method ("enc"). If null a CEK will be generated for each JWE.
        Throws:
        JOSEException - If the elliptic curve is not supported.
    • Method Detail

      • encrypt

        @Deprecated
        public JWECryptoParts encrypt​(JWEHeader header,
                                      byte[] clearText)
                               throws JOSEException
        Deprecated.
        Encrypts the specified clear text of a JWE object.
        Parameters:
        header - The JSON Web Encryption (JWE) header. Must specify a supported JWE algorithm and method. Must not be null.
        clearText - The clear text to encrypt. Must not be null.
        Returns:
        The resulting JWE crypto parts.
        Throws:
        JOSEException - If the JWE algorithm or method is not supported or if encryption failed for some other internal reason.
      • encrypt

        public JWECryptoParts encrypt​(JWEHeader header,
                                      byte[] clearText,
                                      byte[] aad)
                               throws JOSEException
        Description copied from interface: JWEEncrypter
        Encrypts the specified clear text of a JWE object.
        Specified by:
        encrypt in interface JWEEncrypter
        Parameters:
        header - The JSON Web Encryption (JWE) header. Must specify a supported JWE algorithm and method. Must not be null.
        clearText - The clear text to encrypt. Must not be null.
        aad - The additional authenticated data. Must not be null.
        Returns:
        The resulting JWE crypto parts.
        Throws:
        JOSEException - If the JWE algorithm or method is not supported or if encryption failed for some other internal reason.