Package org.apache.commons.crypto.jna
Class OpenSsl11XNativeJna
java.lang.Object
org.apache.commons.crypto.jna.OpenSsl11XNativeJna
- All Implemented Interfaces:
OpenSslInterfaceNativeJna
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final Throwable
(package private) static final boolean
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncom.sun.jna.ptr.PointerByReference
_ENGINE_by_id
(String string) int
TODO Appears to be deprecated as of OpenSSL 1.1.0.int
_ENGINE_finish
(com.sun.jna.ptr.PointerByReference rdrandEngine) int
_ENGINE_free
(com.sun.jna.ptr.PointerByReference rdrandEngine) int
_ENGINE_init
(com.sun.jna.ptr.PointerByReference rdrandEngine) void
int
_ENGINE_set_default
(com.sun.jna.ptr.PointerByReference rdrandEngine, int flags) _ERR_error_string
(com.sun.jna.NativeLong err, char[] buff) com.sun.jna.NativeLong
com.sun.jna.ptr.PointerByReference
com.sun.jna.ptr.PointerByReference
com.sun.jna.ptr.PointerByReference
com.sun.jna.ptr.PointerByReference
com.sun.jna.ptr.PointerByReference
com.sun.jna.ptr.PointerByReference
void
_EVP_CIPHER_CTX_cleanup
(com.sun.jna.ptr.PointerByReference context) void
_EVP_CIPHER_CTX_free
(com.sun.jna.ptr.PointerByReference context) com.sun.jna.ptr.PointerByReference
int
_EVP_CIPHER_CTX_set_padding
(com.sun.jna.ptr.PointerByReference context, int padding) int
_EVP_CipherFinal_ex
(com.sun.jna.ptr.PointerByReference context, ByteBuffer outBuffer, int[] outlen) int
_EVP_CipherInit_ex
(com.sun.jna.ptr.PointerByReference context, com.sun.jna.ptr.PointerByReference algo, com.sun.jna.ptr.PointerByReference impl, byte[] encoded, byte[] iv, int cipherMode) int
_EVP_CipherUpdate
(com.sun.jna.ptr.PointerByReference context, ByteBuffer outBuffer, int[] outlen, ByteBuffer inBuffer, int remaining) boolean
_INIT_OK()
_OpenSSL_version
(int i) int
_RAND_bytes
(ByteBuffer buf, int length) com.sun.jna.ptr.PointerByReference
com.sun.jna.ptr.PointerByReference
static com.sun.jna.ptr.PointerByReference
ENGINE_by_id
(String id) Gets engine by idstatic int
ENGINE_finish
(com.sun.jna.ptr.PointerByReference e) Releases all functional references.static int
ENGINE_free
(com.sun.jna.ptr.PointerByReference e) Frees the structural referencestatic int
ENGINE_init
(com.sun.jna.ptr.PointerByReference e) Obtains a functional reference from an existing structural reference.static int
ENGINE_set_default
(com.sun.jna.ptr.PointerByReference e, int flags) Sets the engine as the default for random number generation.static String
ERR_error_string
(com.sun.jna.NativeLong err, char[] null_) Generates a human-readable string representing the error code e.static com.sun.jna.NativeLong
static com.sun.jna.ptr.PointerByReference
static com.sun.jna.ptr.PointerByReference
static com.sun.jna.ptr.PointerByReference
static com.sun.jna.ptr.PointerByReference
static com.sun.jna.ptr.PointerByReference
static com.sun.jna.ptr.PointerByReference
static void
EVP_CIPHER_CTX_free
(com.sun.jna.ptr.PointerByReference c) Clears all information from a cipher context and free up any allocated memory associate with it, including ctx itself.static com.sun.jna.ptr.PointerByReference
Creates a cipher context.static int
EVP_CIPHER_CTX_set_padding
(com.sun.jna.ptr.PointerByReference c, int pad) Enables or disables paddingstatic int
EVP_CipherFinal_ex
(com.sun.jna.ptr.PointerByReference ctx, ByteBuffer bout, int[] outl) Finishes a multiple-part operation.static int
EVP_CipherInit_ex
(com.sun.jna.ptr.PointerByReference ctx, com.sun.jna.ptr.PointerByReference cipher, com.sun.jna.ptr.PointerByReference impl, byte[] key, byte[] iv, int enc) Init a cipher.static int
EVP_CipherUpdate
(com.sun.jna.ptr.PointerByReference ctx, ByteBuffer bout, int[] outl, ByteBuffer in, int inl) Continues a multiple-part encryption/decryption operation.static String
OpenSSL_version
(int type) Retrieves version/build information about OpenSSL library.static int
RAND_bytes
(ByteBuffer buf, int num) Generates random datastatic com.sun.jna.ptr.PointerByReference
OpenSSL uses for random number generation
-
Field Details
-
INIT_OK
static final boolean INIT_OK -
INIT_ERROR
-
-
Constructor Details
-
OpenSsl11XNativeJna
OpenSsl11XNativeJna()
-
-
Method Details
-
ENGINE_by_id
Gets engine by id- Parameters:
id
- engine id- Returns:
- engine instance
-
ENGINE_finish
public static int ENGINE_finish(com.sun.jna.ptr.PointerByReference e) Releases all functional references.- Parameters:
e
- engine reference.- Returns:
- 0 on success, 1 otherwise.
-
ENGINE_free
public static int ENGINE_free(com.sun.jna.ptr.PointerByReference e) Frees the structural reference- Parameters:
e
- engine reference.- Returns:
- 0 on success, 1 otherwise.
-
ENGINE_init
public static int ENGINE_init(com.sun.jna.ptr.PointerByReference e) Obtains a functional reference from an existing structural reference.- Parameters:
e
- engine reference- Returns:
- zero if the ENGINE was not already operational and couldn't be successfully initialized
-
ENGINE_set_default
public static int ENGINE_set_default(com.sun.jna.ptr.PointerByReference e, int flags) Sets the engine as the default for random number generation.- Parameters:
e
- engine referenceflags
- ENGINE_METHOD_RAND- Returns:
- zero if failed.
-
ERR_error_string
Generates a human-readable string representing the error code e.- Parameters:
err
- the error codenull_
- buf is NULL, the error string is placed in a static buffer- Returns:
- the human-readable error messages.
- See Also:
-
ERR_peek_error
public static com.sun.jna.NativeLong ERR_peek_error()- Returns:
- the earliest error code from the thread's error queue without modifying it.
-
EVP_aes_128_cbc
public static com.sun.jna.ptr.PointerByReference EVP_aes_128_cbc()- Returns:
- an OpenSSL AES EVP cipher instance with a 128-bit key CBC mode
-
EVP_aes_128_ctr
public static com.sun.jna.ptr.PointerByReference EVP_aes_128_ctr()- Returns:
- an OpenSSL AES EVP cipher instance with a 128-bit key CTR mode
-
EVP_aes_192_cbc
public static com.sun.jna.ptr.PointerByReference EVP_aes_192_cbc()- Returns:
- an OpenSSL AES EVP cipher instance with a 192-bit key CBC mode
-
EVP_aes_192_ctr
public static com.sun.jna.ptr.PointerByReference EVP_aes_192_ctr()- Returns:
- an OpenSSL AES EVP cipher instance with a 192-bit key CTR mode
-
EVP_aes_256_cbc
public static com.sun.jna.ptr.PointerByReference EVP_aes_256_cbc()- Returns:
- an OpenSSL AES EVP cipher instance with a 256-bit key CBC mode
-
EVP_aes_256_ctr
public static com.sun.jna.ptr.PointerByReference EVP_aes_256_ctr()- Returns:
- an OpenSSL AES EVP cipher instance with a 256-bit key CTR mode
-
EVP_CIPHER_CTX_free
public static void EVP_CIPHER_CTX_free(com.sun.jna.ptr.PointerByReference c) Clears all information from a cipher context and free up any allocated memory associate with it, including ctx itself.- Parameters:
c
- openssl evp cipher
-
EVP_CIPHER_CTX_new
public static com.sun.jna.ptr.PointerByReference EVP_CIPHER_CTX_new()Creates a cipher context.- Returns:
- a pointer to a newly created EVP_CIPHER_CTX for success and NULL for failure.
-
EVP_CIPHER_CTX_set_padding
public static int EVP_CIPHER_CTX_set_padding(com.sun.jna.ptr.PointerByReference c, int pad) Enables or disables padding- Parameters:
c
- cipher contextpad
- If the pad parameter is zero then no padding is performed- Returns:
- always returns 1
-
EVP_CipherFinal_ex
public static int EVP_CipherFinal_ex(com.sun.jna.ptr.PointerByReference ctx, ByteBuffer bout, int[] outl) Finishes a multiple-part operation.- Parameters:
ctx
- cipher contextbout
- output byte bufferoutl
- output length- Returns:
- 1 for success and 0 for failure.
-
EVP_CipherInit_ex
public static int EVP_CipherInit_ex(com.sun.jna.ptr.PointerByReference ctx, com.sun.jna.ptr.PointerByReference cipher, com.sun.jna.ptr.PointerByReference impl, byte[] key, byte[] iv, int enc) Init a cipher.- Parameters:
ctx
- cipher contextcipher
- evp cipher instanceimpl
- enginekey
- keyiv
- ivenc
- 1 for encryption, 0 for decryption- Returns:
- 1 for success and 0 for failure.
-
EVP_CipherUpdate
public static int EVP_CipherUpdate(com.sun.jna.ptr.PointerByReference ctx, ByteBuffer bout, int[] outl, ByteBuffer in, int inl) Continues a multiple-part encryption/decryption operation.- Parameters:
ctx
- cipher contextbout
- output byte bufferoutl
- output lengthin
- input byte bufferinl
- input length- Returns:
- 1 for success and 0 for failure.
-
OpenSSL_version
Retrieves version/build information about OpenSSL library.- Parameters:
type
- type can be OPENSSL_VERSION, OPENSSL_CFLAGS, OPENSSL_BUILT_ON...- Returns:
- A pointer to a constant string describing the version of the OpenSSL library or giving information about the library build.
- See Also:
-
RAND_bytes
Generates random data- Parameters:
buf
- the bytes for generated random.num
- buffer length- Returns:
- 1 on success, 0 otherwise.
-
RAND_get_rand_method
public static com.sun.jna.ptr.PointerByReference RAND_get_rand_method()OpenSSL uses for random number generation- Returns:
- pointers to the respective methods
-
_ENGINE_by_id
- Specified by:
_ENGINE_by_id
in interfaceOpenSslInterfaceNativeJna
-
_ENGINE_cleanup
public int _ENGINE_cleanup()Description copied from interface:OpenSslInterfaceNativeJna
TODO Appears to be deprecated as of OpenSSL 1.1.0.- Specified by:
_ENGINE_cleanup
in interfaceOpenSslInterfaceNativeJna
-
_ENGINE_finish
public int _ENGINE_finish(com.sun.jna.ptr.PointerByReference rdrandEngine) - Specified by:
_ENGINE_finish
in interfaceOpenSslInterfaceNativeJna
-
_ENGINE_free
public int _ENGINE_free(com.sun.jna.ptr.PointerByReference rdrandEngine) - Specified by:
_ENGINE_free
in interfaceOpenSslInterfaceNativeJna
-
_ENGINE_init
public int _ENGINE_init(com.sun.jna.ptr.PointerByReference rdrandEngine) - Specified by:
_ENGINE_init
in interfaceOpenSslInterfaceNativeJna
-
_ENGINE_load_rdrand
public void _ENGINE_load_rdrand()- Specified by:
_ENGINE_load_rdrand
in interfaceOpenSslInterfaceNativeJna
-
_ENGINE_set_default
public int _ENGINE_set_default(com.sun.jna.ptr.PointerByReference rdrandEngine, int flags) - Specified by:
_ENGINE_set_default
in interfaceOpenSslInterfaceNativeJna
-
_ERR_error_string
- Specified by:
_ERR_error_string
in interfaceOpenSslInterfaceNativeJna
-
_ERR_peek_error
public com.sun.jna.NativeLong _ERR_peek_error()- Specified by:
_ERR_peek_error
in interfaceOpenSslInterfaceNativeJna
-
_EVP_aes_128_cbc
public com.sun.jna.ptr.PointerByReference _EVP_aes_128_cbc()- Specified by:
_EVP_aes_128_cbc
in interfaceOpenSslInterfaceNativeJna
-
_EVP_aes_128_ctr
public com.sun.jna.ptr.PointerByReference _EVP_aes_128_ctr()- Specified by:
_EVP_aes_128_ctr
in interfaceOpenSslInterfaceNativeJna
-
_EVP_aes_192_cbc
public com.sun.jna.ptr.PointerByReference _EVP_aes_192_cbc()- Specified by:
_EVP_aes_192_cbc
in interfaceOpenSslInterfaceNativeJna
-
_EVP_aes_192_ctr
public com.sun.jna.ptr.PointerByReference _EVP_aes_192_ctr()- Specified by:
_EVP_aes_192_ctr
in interfaceOpenSslInterfaceNativeJna
-
_EVP_aes_256_cbc
public com.sun.jna.ptr.PointerByReference _EVP_aes_256_cbc()- Specified by:
_EVP_aes_256_cbc
in interfaceOpenSslInterfaceNativeJna
-
_EVP_aes_256_ctr
public com.sun.jna.ptr.PointerByReference _EVP_aes_256_ctr()- Specified by:
_EVP_aes_256_ctr
in interfaceOpenSslInterfaceNativeJna
-
_EVP_CIPHER_CTX_cleanup
public void _EVP_CIPHER_CTX_cleanup(com.sun.jna.ptr.PointerByReference context) - Specified by:
_EVP_CIPHER_CTX_cleanup
in interfaceOpenSslInterfaceNativeJna
-
_EVP_CIPHER_CTX_free
public void _EVP_CIPHER_CTX_free(com.sun.jna.ptr.PointerByReference context) - Specified by:
_EVP_CIPHER_CTX_free
in interfaceOpenSslInterfaceNativeJna
-
_EVP_CIPHER_CTX_new
public com.sun.jna.ptr.PointerByReference _EVP_CIPHER_CTX_new()- Specified by:
_EVP_CIPHER_CTX_new
in interfaceOpenSslInterfaceNativeJna
-
_EVP_CIPHER_CTX_set_padding
public int _EVP_CIPHER_CTX_set_padding(com.sun.jna.ptr.PointerByReference context, int padding) - Specified by:
_EVP_CIPHER_CTX_set_padding
in interfaceOpenSslInterfaceNativeJna
-
_EVP_CipherFinal_ex
public int _EVP_CipherFinal_ex(com.sun.jna.ptr.PointerByReference context, ByteBuffer outBuffer, int[] outlen) - Specified by:
_EVP_CipherFinal_ex
in interfaceOpenSslInterfaceNativeJna
-
_EVP_CipherInit_ex
public int _EVP_CipherInit_ex(com.sun.jna.ptr.PointerByReference context, com.sun.jna.ptr.PointerByReference algo, com.sun.jna.ptr.PointerByReference impl, byte[] encoded, byte[] iv, int cipherMode) - Specified by:
_EVP_CipherInit_ex
in interfaceOpenSslInterfaceNativeJna
-
_EVP_CipherUpdate
public int _EVP_CipherUpdate(com.sun.jna.ptr.PointerByReference context, ByteBuffer outBuffer, int[] outlen, ByteBuffer inBuffer, int remaining) - Specified by:
_EVP_CipherUpdate
in interfaceOpenSslInterfaceNativeJna
-
_INIT_ERROR
- Specified by:
_INIT_ERROR
in interfaceOpenSslInterfaceNativeJna
-
_INIT_OK
public boolean _INIT_OK()- Specified by:
_INIT_OK
in interfaceOpenSslInterfaceNativeJna
-
_OpenSSL_version
- Specified by:
_OpenSSL_version
in interfaceOpenSslInterfaceNativeJna
-
_RAND_bytes
- Specified by:
_RAND_bytes
in interfaceOpenSslInterfaceNativeJna
-
_RAND_get_rand_method
public com.sun.jna.ptr.PointerByReference _RAND_get_rand_method()- Specified by:
_RAND_get_rand_method
in interfaceOpenSslInterfaceNativeJna
-
_RAND_SSLeay
public com.sun.jna.ptr.PointerByReference _RAND_SSLeay()- Specified by:
_RAND_SSLeay
in interfaceOpenSslInterfaceNativeJna
-