Класс KeyDerivationFunction
#include <QtCrypto>
Диаграмма кооперации класса QCA::KeyDerivationFunction:

Публичные функции
| KeyDerivationFunction (const KeyDerivationFunction &from) | |
| SymmetricKey | makeKey (const SecureArray &secret, const InitializationVector &salt, unsigned int keyLength, int msecInterval, unsigned int *iterationCount) |
| SymmetricKey | makeKey (const SecureArray &secret, const InitializationVector &salt, unsigned int keyLength, unsigned int iterationCount) |
| KeyDerivationFunction & | operator= (const KeyDerivationFunction &from) |
Публичные функции, унаследованные от QCA::Algorithm
| Algorithm (const Algorithm &from) | |
| void | change (const QString &type, const QString &provider) |
| void | change (Provider::Context *c) |
| Provider::Context * | context () |
| const Provider::Context * | context () const |
| Algorithm & | operator= (const Algorithm &from) |
| Provider * | provider () const |
| Provider::Context * | takeContext () |
| QString | type () const |
Статические публичные функции
| static QString | withAlgorithm (const QString &kdfType, const QString &algType) |
Защищённые методы
| KeyDerivationFunction (const QString &type, const QString &provider) |
Защищённые функции, унаследованные от QCA::Algorithm
| Algorithm () |
| Algorithm (const QString &type, const QString &provider) |
Подробное описание
Общий суперкласс для алгоритмов формирования ключей.
KeyDerivationFunction — это суперкласс для различных алгоритмов функции формирования ключей в
QCA. Не следует использовать его напрямую, если нет необходимости добавлять еще одну возможность
получения ключа в QCA — нужно использовать подкласс.
PBKDF2 с использованием SHA1
рекомендуется для новых приложений.
Описание конструкторов и деструктора
KeyDerivationFunction() [1/2]
| QCA::KeyDerivationFunction::KeyDerivationFunction (const KeyDerivationFunction & from) |
Стандартный конструктор копирования.
Параметры
| from | KeyDerivationFunction для копирования |
KeyDerivationFunction() [2/2]
| QCA::KeyDerivationFunction::KeyDerivationFunction (const QString & type, const QString & provider ) | protected |
Специальный конструктор для инициализации подкласса.
Параметры
| type | Алгоритм создания |
| provider | Имя криптопровайдера, с помощью которого будет создана функция формирования ключа |
Описание методов
operator=()
| KeyDerivationFunction & QCA::KeyDerivationFunction::operator= (const KeyDerivationFunction & from) |
Оператор присваивания.
Копирует состояние (включая ключ) из одной
KeyDerivationFunction
в другую.
Параметры
| from | Объект KeyDerivationFunction для присваивания |
makeKey() [1/2]
| SymmetricKey QCA::KeyDerivationFunction::makeKey (const SecureArray & secret, const InitializationVector & salt, unsigned int keyLength, unsigned int iterationCount ) |
Создаёт ключ из указанных данных для расшифровки, модификатора входа хэш-функции.
Примечание.
Длина ключа игнорируется для некоторых функций.
Параметры
| secret | Данные для расшифровки (пароль или кодовая фраза) |
| salt | «Соль» для использования |
| keyLength | Длина возвращаемого ключа |
| iterationCount | количество итераций для выполнения |
Возвращает производный ключ.
makeKey() [2/2]
| SymmetricKey QCA::KeyDerivationFunction::makeKey (const SecureArray & secret, const InitializationVector & salt, unsigned int keyLength, int msecInterval, unsigned int * iterationCount ) |
Создаёт ключ из указанных данных для расшифровки, модификатора входа хэш-функции.
Примечание.
Длина ключа игнорируется для некоторых функций.
Параметры
| secret | Данные для расшифровки (пароль или кодовая фраза) |
| salt | «Соль» для использования |
| keyLength | Длина возвращаемого ключа |
| msecInterval | Максимальное время вычисления ключа в миллисекундах |
| iterationCount | Указатель для хранения количества итераций, выполненных за указанное время |
Возвращает производный ключ.
withAlgorithm()
| static QString QCA::KeyDerivationFunction::withAlgorithm (const QString & kdfType, const QString & algType ) | static |
Составляет название алгоритма.
Следует использовать это для создания стандартной строки имени. Вероятно, этот метод может понадобится только при создании нового подкласса.
Параметры
| kdfType | Тип функции формирования ключа |
| algType | Название алгоритма для использования с функцией формирования ключа |
Возвращает имя пары KDF/алгоритм.