Base class for all engines. All non-pure abstract functions simply
return NULL, indicating the algorithm in question is not
supported. Subclasses can reimplement whichever function(s)
they want to hook in a particular type.
- Returns
- name of this engine
abstract const BlockCipher findBlockCipher(in SCANToken algo_spec, AlgorithmFactory af);
- Parameters
SCANToken algo_spec |
the algorithm name/specification |
AlgorithmFactory af |
an algorithm factory object |
- Returns
- newly allocated object, or NULL
abstract const StreamCipher findStreamCipher(in SCANToken algo_spec, AlgorithmFactory af);
- Parameters
SCANToken algo_spec |
the algorithm name/specification |
AlgorithmFactory af |
an algorithm factory object |
- Returns
- newly allocated object, or NULL
abstract const HashFunction findHash(in SCANToken algo_spec, AlgorithmFactory af);
- Parameters
SCANToken algo_spec |
the algorithm name/specification |
AlgorithmFactory af |
an algorithm factory object |
- Returns
- newly allocated object, or NULL
abstract const MessageAuthenticationCode findMac(in SCANToken algo_spec, AlgorithmFactory af);
- Parameters
SCANToken algo_spec |
the algorithm name/specification |
AlgorithmFactory af |
an algorithm factory object |
- Returns
- newly allocated object, or NULL
abstract const PBKDF findPbkdf(in SCANToken algo_spec, AlgorithmFactory af);
- Parameters
SCANToken algo_spec |
the algorithm name/specification |
AlgorithmFactory af |
an algorithm factory object |
- Returns
- newly allocated object, or NULL
abstract const KeyedFilter getCipher(in string algo_spec, CipherDir dir, AlgorithmFactory af);
Return a new cipher object
- Parameters
string algo_spec |
the algorithm name/specification |
CipherDir dir |
specifies if encryption or decryption is desired |
AlgorithmFactory af |
an algorithm factory object |
- Returns
- newly allocated object, or NULL