AusweisApp2
Lade ...
Suche ...
Keine Treffer
KeyDerivationFunction.h
gehe zur Dokumentation dieser Datei
1
7#pragma once
8
9#include "SecurityProtocol.h"
10
11#include <QByteArray>
12#include <QCryptographicHash>
13
14namespace governikus
15{
16
18{
19 private:
20 QCryptographicHash::Algorithm mHashAlgorithm;
21 int mKeySize;
22 [[nodiscard]] QByteArray deriveKey(const QByteArray& pK, const QByteArray& pNonce, quint32 pC) const;
23
24 public:
30 explicit KeyDerivationFunction(const SecurityProtocol& pSecurityProtocol);
32
36 [[nodiscard]] bool isInitialized() const;
37
43 QByteArray enc(const QByteArray& pSecret, const QByteArray& pNonce = QByteArray()) const;
44
50 QByteArray mac(const QByteArray& pSecret, const QByteArray& pNonce = QByteArray()) const;
51
57 QByteArray pi(const QByteArray& pSecret) const;
58
59};
60
61} // namespace governikus
Definition: KeyDerivationFunction.h:18
bool isInitialized() const
Returns true, if initialization succeeded, i.e.
Definition: KeyDerivationFunction.cpp:28
QByteArray mac(const QByteArray &pSecret, const QByteArray &pNonce=QByteArray()) const
Derive the MAC key.
Definition: KeyDerivationFunction.cpp:40
QByteArray pi(const QByteArray &pSecret) const
Derive the password key.
Definition: KeyDerivationFunction.cpp:46
QByteArray enc(const QByteArray &pSecret, const QByteArray &pNonce=QByteArray()) const
Derive the encryption key.
Definition: KeyDerivationFunction.cpp:34
A simple template renderer.
Definition: ActivationContext.h:15