Документация
ОС Аврора 5.0.1

Класс KeyGenerator

Сигналы

void finished ()

Публичные функции

bool blockingEnabled () const
PrivateKey createDH (const DLGroup &domain, const QString &provider=QString())
DLGroup createDLGroup (QCA::DLGroupSet set, const QString &provider=QString())
PrivateKey createDSA (const DLGroup &domain, const QString &provider=QString())
PrivateKey createEC (const QString &curve, const QString &provider=QString())
PrivateKey createGOST (const QString &paramset, const QString &provider=QString())
PrivateKey createRSA (int bits, int exp=65537, const QString &provider=QString())
DLGroup dlGroup () const
bool isBusy () const
PrivateKey key () const
KeyGenerator (QObject *parent=nullptr)
void setBlockingEnabled (bool b)

Дружественные функции и классы

class Private

Подробное описание

Класс для генерации асимметричных пар ключей.

Этот класс используется для генерации асимметричных ключей (пар открытого/закрытого ключей).

Примеры

rsatest.cpp.

Описание конструкторов и деструктора

KeyGenerator()

QCA::KeyGenerator::KeyGenerator (QObject * parent = nullptr)

Создаёт новый генератор ключей.

Параметры

parent Родительский объект, если применимо

Описание методов

blockingEnabled()

bool QCA::KeyGenerator::blockingEnabled () const

Проверяет, настроен ли генератор ключей на работу в режиме блокировки.

Возвращает true, если генератор ключей находится в режиме блокировки.

См. также setBlockingEnabled

setBlockingEnabled()

void QCA::KeyGenerator::setBlockingEnabled (bool b)

Устанавливает, находится ли генератор ключей в режиме блокировки.

Параметры

b Если true, генератор ключей будет настроен на работу в режиме блокировки, в противном случае он будет работать в неблокирующем режиме

См. также blockingEnabled().

isBusy()

bool QCA::KeyGenerator::isBusy () const

Проверяет, занят ли в настоящее время генератор ключей.

Возвращает true, если генератор ключей уже занят генерацией ключа.

createRSA()

PrivateKey QCA::KeyGenerator::createRSA (int bits, int exp = 65537, const QString & provider = QString() )

Создаёт ключ RSA указанной длины.

Этот метод создаёт как открытый ключ, так и соответствующий закрытый ключ. Скорее всего возникнет задача извлечь часть открытого ключа — простой способ как это сделать представлен в PKey::toPublicKey.

Выбрать подходящую длину ключа непросто — использование менее 2048, вероятно, слишком небезопасно для долгосрочного использования. Не следует использовать меньше 1024 без серьезного анализа.

Параметры

bits Требуемая длина ключа
exp Показатель степени — обычно 3, 17 или 65537
provider Название криптопровайдера, который будет использоваться, если требуется конкретный криптопровайдер

Примеры

rsatest.cpp.

createDSA()

PrivateKey QCA::KeyGenerator::createDSA (const DLGroup & domain, const QString & provider = QString() )

Создаёт ключ DSA.

Этот метод создаёт как открытый ключ, так и соответствующий закрытый ключ. Скорее всего возникнет задача извлечь часть открытого ключа — простой способ как это сделать представлен в PKey::toPublicKey.

Параметры

domain Группа дискретных логарифмов, из которой должен быть сгенерирован этот ключ
provider Название криптопровайдера, который будет использоваться, если требуется конкретный криптопровайдер

Примечание.

Не всякая DLGroup имеет смысл для DSA. Необходимо использовать один из DSA_512, DSA_768 и DSA_1024.

createDH()

PrivateKey QCA::KeyGenerator::createDH (const DLGroup & domain, const QString & provider = QString() )

Создаёт ключ согласно протоколу Диффи-Хеллмана.

Этот метод создаёт как открытый ключ, так и соответствующий закрытый ключ. Скорее всего возникнет задача извлечь часть открытого ключа — простой способ как это сделать представлен в PKey::toPublicKey.

Параметры

domain Группа дискретных логарифмов, из которой должен быть сгенерирован этот ключ
provider Название криптопровайдера, который будет использоваться, если требуется конкретный криптопровайдер

Примечание.

Для совместимости необходимо использовать один из наборов групп IETF_ в качестве аргумента домена.

createEC()

PrivateKey QCA::KeyGenerator::createEC (const QString & curve, const QString & provider = QString() )

Создаёт ключ на основе указанной эллиптической кривой.

Этот метод создаёт как открытый ключ, так и соответствующий закрытый ключ. Скорее всего возникнет задача извлечь часть открытого ключа — простой способ как это сделать представлен в PKey::toPublicKey.

Параметры

curve Название эллиптической кривой для создания
provider Название криптопровайдера, который будет использоваться, если требуется конкретный криптопровайдер

createGOST()

PrivateKey QCA::KeyGenerator::createGOST (const QString & paramset, const QString & provider = QString() )

Создаёт ключ ГОСТ на основе указанного набора параметров.

Этот метод создаёт как открытый ключ, так и соответствующий закрытый ключ. Скорее всего возникнет задача извлечь часть открытого ключа — простой способ как это сделать представлен в PKey::toPublicKey.

Параметры

paramset название набора параметров для создания
provider Название криптопровайдера, который будет использоваться, если требуется конкретный криптопровайдер

key()

PrivateKey QCA::KeyGenerator::key () const

Возвращает последний сгенерированный ключ.

Метод действительно полезен только тогда, когда осуществляется работа с неблокирующей генерацией ключей.

createDLGroup()

DLGroup QCA::KeyGenerator::createDLGroup (QCA::DLGroupSet set, const QString & provider = QString() )

Создаёт новую группу дискретных логарифмов.

Параметры

set Набор параметров дискретного логарифма для генерации
provider Название криптопровайдера, который будет использоваться, если требуется конкретный криптопровайдер

dlGroup()

DLGroup QCA::KeyGenerator::dlGroup () const

Текущая группа дискретных логарифмов.

finished

void QCA::KeyGenerator::finished () signal

Вызывается, когда генерация ключа завершена.

Используется только в неблокирующем режиме.

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.