Класс QOpcUaKeyPair
Класс QOpcUaKeyPair обрабатывает пары открытых и закрытых ключей. Подробнее...
| Заголовок: | #include <QOpcUaKeyPair> |
| qmake: | QT += opcua |
| С момента: | Qt 5.14 |
| Наследует: | QObject |
Типы публичного доступа
| перечисление | Cipher { Aes128Cbc, Unencrypted } |
| перечисление | KeyType { Rsa, Empty, Unknown } |
| перечисление | RsaKeyStrength { Bits1024, Bits2048, Bits4096 } |
Публичные функции
| QOpcUaKeyPair(QObject *parent = nullptr) | |
| виртуальный | ~QOpcUaKeyPair() |
| void | generateRsaKey(QOpcUaKeyPair::RsaKeyStrength strength) |
| bool | hasPrivateKey() const |
| bool | loadFromPemData(const QByteArray &data) |
| QByteArray | privateKeyToByteArray(QOpcUaKeyPair::Cipher cipher, const QString &password) const |
| QByteArray | publicKeyToByteArray() const |
| QOpcUaKeyPair::KeyType | type() const |
Сигналы
| void | passphraseNeeded(QString &passphrase, int maximumLength, bool writeOperation) |
Подробное описание
В настоящее время этот класс доступен в качестве технологического предварительного просмотра, и поэтому API и функциональность, предоставляемые классом, могут быть изменены в любое время без предварительного уведомления.
Он может генерировать, загружать и хранить ключи для асимметричного шифрования. Экземпляры этого класса необходимо передавать в функции, которым нужен ключ.
Документация по типам членов
перечисление QOpcUaKeyPair::Cipher
Шифры для шифрования закрытых ключей.
| Константа | Значение | Описание |
|---|---|---|
QOpcUaKeyPair::Cipher::Aes128Cbc |
0 |
Шифрование AES128 с CBC |
QOpcUaKeyPair::Cipher::Unencrypted |
1 |
Ключ не будет зашифрован. |
перечисление QOpcUaKeyPair::KeyType
Этот тип перечисления определяет тип ключа.
| Константа | Значение | Описание |
|---|---|---|
QOpcUaKeyPair::KeyType::Rsa |
0 |
Ключ RSA |
QOpcUaKeyPair::KeyType::Empty |
1 |
Ключ недоступен. |
QOpcUaKeyPair::KeyType::Unknown |
2 |
Тип ключа не поддерживается. |
перечисление QOpcUaKeyPair::RsaKeyStrength
Этот тип перечисления определяет силу ключа RSA.
| Константа | Значение | Описание |
|---|---|---|
QOpcUaKeyPair::RsaKeyStrength::Bits1024 |
1024 |
Сила ключа 1024 бита. |
QOpcUaKeyPair::RsaKeyStrength::Bits2048 |
2048 |
Сила ключа 2048 бит. |
QOpcUaKeyPair::RsaKeyStrength::Bits4096 |
4096 |
Сила ключа 4096 бит. |
Документация по функциям-членам
QOpcUaKeyPair::QOpcUaKeyPair(QObject *parent = nullptr)
Создаёт новую пустую пару ключей с parent в качестве родительского объекта.
[signal] void QOpcUaKeyPair::passphraseNeeded(QString &passphrase, int maximumLength, bool writeOperation)
Этот сигнал излучается, когда для шифрования или дешифрования закрытого ключа требуется passphrase.
writeOperation имеет значение true при экспорте ключа, и имеет значение false при импорте ключа.
maximumLength задаёт максимальную длину в байтах для passphrase. Все символы в passphrase, превышающие этот предел, будут проигнорированы.
В случае использования этого сигнала через границы потоков необходимо подключить его к Qt::BlockingQueuedConnection.
[virtual] QOpcUaKeyPair::~QOpcUaKeyPair()
Удаляет пару ключей.
void QOpcUaKeyPair::generateRsaKey(QOpcUaKeyPair::RsaKeyStrength strength)
Генерирует новую асимметричную пару ключей RSA.
Длина ключа задаётся параметром strength.
bool QOpcUaKeyPair::hasPrivateKey() const
Возвращает true , если текущий ключ содержит закрытый ключ, в противном случае false.
bool QOpcUaKeyPair::loadFromPemData(const QByteArray &data)
Загружает ключ из данных PEM, закодированных в data. Возвращает true при успехе и false в противном случае.
Определяет из заголовка PEM, содержит ли данные закрытый или открытый ключ. Загрузка зашифрованных ключей возможна путём подключения функции к сигналу passphraseNeeded для предоставления парольной фразы.
QByteArray QOpcUaKeyPair::privateKeyToByteArray(QOpcUaKeyPair::Cipher cipher, const QString &password) const
Возвращает закрытый ключ в кодировке PEM. В случае отсутствия закрытого ключа возвращается пустой массив байтов.
Шифрование ключа необходимо указать с помощью параметров cipher и password. Для хранения незашифрованного ключа необходимо использовать шифр Cipher::Unencrypted.
QByteArray QOpcUaKeyPair::publicKeyToByteArray() const
Возвращает открытый ключ в виде массива байтов.
QOpcUaKeyPair::KeyType QOpcUaKeyPair::type() const
Возвращает тип текущего ключа.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qopcuakeypair.html