7#include <Cutelyst/Plugins/Authentication/authentication.h>
8#include <Cutelyst/cutelyst_global.h>
10#include <QtCore/QCryptographicHash>
14class CredentialPasswordPrivate;
39 [[nodiscard]] QString passwordField()
const;
44 void setPasswordField(
const QString &fieldName);
49 [[nodiscard]] PasswordType passwordType()
const;
54 void setPasswordType(PasswordType type);
59 [[nodiscard]] QString passwordPreSalt()
const;
64 void setPasswordPreSalt(
const QString &passwordPreSalt);
69 [[nodiscard]] QString passwordPostSalt()
const;
74 void setPasswordPostSalt(
const QString &passwordPostSalt);
79 [[nodiscard]]
static bool validatePassword(
const QByteArray &password,
80 const QByteArray &correctHash);
85 [[nodiscard]]
static bool validatePassword(
const QString &password,
const QString &correctHash);
97 [[nodiscard]]
static QByteArray createPassword(
const QByteArray &password,
98 QCryptographicHash::Algorithm method,
109 [[nodiscard]]
static QByteArray createPassword(
const QByteArray &password);
117 [[nodiscard]]
inline static QString createPassword(
const QString &password);
128 [[nodiscard]]
static QByteArray pbkdf2(QCryptographicHash::Algorithm method,
129 const QByteArray &password,
130 const QByteArray &salt,
137 [[nodiscard]]
static QByteArray hmac(QCryptographicHash::Algorithm method,
138 const QByteArray &key,
139 const QByteArray &message);
142 CredentialPasswordPrivate *d_ptr;
146 const QString &correctHash)
static bool validatePassword(const QByteArray &password, const QByteArray &correctHash)
Validates the given password against the correct hash.
static QByteArray createPassword(const QByteArray &password, QCryptographicHash::Algorithm method, int iterations, int saltByteSize, int hashByteSize)
Creates a password hash string.
The Cutelyst namespace holds all public Cutelyst API.
QMultiMap< QString, QString > ParamsMultiMap