Classes: Cipher, CipherFactory, CipherImpl, CipherKey, CipherKeyImpl, CryptoIOS, CryptoInputStream, CryptoOutputStream, CryptoStreamBuf, CryptoTransform, DecryptingInputStream, DecryptingOutputStream, EncryptingInputStream, EncryptingOutputStream, OpenSSLInitializer, RSACipherImpl, RSADigestEngine, RSAKey, RSAKeyImpl, X509Certificate
Functions: initializeCrypto, uninitializeCrypto
Represents the abstract base class from which all implementations of
symmetric/assymetric encryption algorithms must inherit.
A factory for Cipher objects.
An implementation of the Cipher class for OpenSSL's crypto library.
CipherKey stores the key information for decryption/encryption of data.
An implementation of the CipherKey class for OpenSSL's crypto library.
The base class for CryptoInputStream and CryptoOutputStream.
This stream transforms all data passing through it using the given
CryptoTransform.
This stream transforms all data passing through it using the given
CryptoTransform.
This stream buffer performs cryptographic transformation on the data
going through it.
This interface represents the basic operations for cryptographic
transformations to be used with a CryptoInputStream or a
CryptoOutputStream.
This stream decrypts all data passing through it using the given
Cipher.
This stream decrypts all data passing through it using the given
Cipher.
This stream encrypts all data passing through it using the given
Cipher.
This stream encrypts all data passing through it using the given
Cipher.
Initalizes the OpenSSL library.
An implementation of the Cipher class for
assymetric (public-private key) encryption
based on the the RSA algorithm in OpenSSL's
crypto library.
This class implements a Poco::DigestEngine that can be
used to compute a secure digital signature.
This class stores an RSA key pair, consisting
of private and public key.
class RSAKeyImpl
This class represents a X509 Certificate.
void initializeCrypto();
Initialize the Crypto library, as well as the underlying OpenSSL libraries, by calling OpenSSLInitializer::initialize().
Should be called before using any class from the Crypto library. The Crypto library will be initialized automatically, through OpenSSLInitializer instances held by various Crypto classes (Cipher, CipherKey, RSAKey, X509Certificate). However, it is recommended to call initializeCrypto() in any case at application startup.
Can be called multiple times; however, for every call to initializeCrypto(), a matching call to uninitializeCrypto() must be performed.
void uninitializeCrypto();
Uninitializes the Crypto library by calling OpenSSLInitializer::uninitialize().