AusweisApp2
Lade ...
Suche ...
Keine Treffer
SymmetricCipher.h
gehe zur Dokumentation dieser Datei
1
9#pragma once
10
11#include "SecurityProtocol.h"
12
13#include <QByteArray>
14#include <openssl/evp.h>
15
16namespace governikus
17{
18
19class SymmetricCipher final
20{
21 Q_DISABLE_COPY(SymmetricCipher)
22
23 private:
24 EVP_CIPHER_CTX* mCtx;
25 const EVP_CIPHER* mCipher;
26 QByteArray mIv;
27 QByteArray mKeyBytes;
28
29 public:
36 SymmetricCipher(const SecurityProtocol& pSecurityProtocol, const QByteArray& pKeyBytes);
38
42 [[nodiscard]] bool isInitialized() const;
43
49 QByteArray encrypt(const QByteArray& pPlainData);
50
56 QByteArray decrypt(const QByteArray& pEncryptedData);
57
63 bool setIv(const QByteArray& pIv);
64
65 [[nodiscard]] int getBlockSize() const;
66};
67
68} // namespace governikus
Definition SymmetricCipher.h:20
bool isInitialized() const
Returns true, if initialization succeeded, i.e.
Definition SymmetricCipher.cpp:58
QByteArray decrypt(const QByteArray &pEncryptedData)
Decrypts the message.
Definition SymmetricCipher.cpp:126
bool setIv(const QByteArray &pIv)
Sets the initialization vector.
Definition SymmetricCipher.cpp:105
int getBlockSize() const
Definition SymmetricCipher.cpp:119
QByteArray encrypt(const QByteArray &pPlainData)
Encrypts the message.
Definition SymmetricCipher.cpp:64
~SymmetricCipher()
Definition SymmetricCipher.cpp:46
Implementation of GeneralAuthenticate response APDUs.
Definition CommandApdu.h:16