AusweisApp2
SymmetricCipher.h
gehe zur Dokumentation dieser Datei
1 
7 #pragma once
8 
9 #include <openssl/evp.h>
10 #include <QByteArray>
11 
12 namespace governikus
13 {
14 
15 class SymmetricCipher final
16 {
17  private:
18  EVP_CIPHER_CTX* mCtx;
19  const EVP_CIPHER* mCipher;
20  QByteArray mIv, mKeyBytes;
21 
22  Q_DISABLE_COPY(SymmetricCipher)
23 
24  public:
31  SymmetricCipher(const QByteArray& pPaceAlgorithm, const QByteArray& pKeyBytes);
33 
37  bool isInitialized();
38 
44  QByteArray encrypt(const QByteArray& pPlainData);
45 
51  QByteArray decrypt(const QByteArray& pEncryptedData);
52 
58  bool setIv(const QByteArray& pIv);
59 
60  int getBlockSize() const;
61 };
62 
63 } // namespace governikus
governikus::KnownOIDs
Definition: KnownOIDs.h:13
governikus::SymmetricCipher::SymmetricCipher
SymmetricCipher(const QByteArray &pPaceAlgorithm, const QByteArray &pKeyBytes)
Creates a new instance with cipher algorithm determined by parameter and specified cipher key.
Definition: SymmetricCipher.cpp:18
KnownOIDs.h
governikus::SymmetricCipher
Definition: SymmetricCipher.h:16
governikus::SymmetricCipher::setIv
bool setIv(const QByteArray &pIv)
Sets the initialization vector.
Definition: SymmetricCipher.cpp:132
governikus::KnownOIDs::id_PACE::DH::GM
@ GM
SymmetricCipher.h
governikus::SymmetricCipher::decrypt
QByteArray decrypt(const QByteArray &pEncryptedData)
Decrypts the message.
Definition: SymmetricCipher.cpp:153
governikus
Implementation of ActivationContext for Intent based activation on Android systems.
Definition: ActivationContext.h:15
governikus::SymmetricCipher::getBlockSize
int getBlockSize() const
Definition: SymmetricCipher.cpp:146
governikus::SymmetricCipher::encrypt
QByteArray encrypt(const QByteArray &pPlainData)
Encrypts the message.
Definition: SymmetricCipher.cpp:91
governikus::SymmetricCipher::isInitialized
bool isInitialized()
Returns true, if initialization succeeded, i.e.
Definition: SymmetricCipher.cpp:85
governikus::KnownOIDs::id_PACE::ECDH::GM
@ GM
governikus::SymmetricCipher::~SymmetricCipher
~SymmetricCipher()
Definition: SymmetricCipher.cpp:70