QOpcUaKeyPair Class

QOpcUaKeyPair handles private and public key pairs. 更多...

头: #include <QOpcUaKeyPair>
qmake: QT += opcua
Since: Qt 5.14
继承: QObject

该类在 Qt 5.14 引入。

公共类型

enum class Cipher { Aes128Cbc, Unencrypted }
enum class KeyType { Rsa, Empty, Unknown }
enum class RsaKeyStrength { Bits1024, Bits2048, Bits4096 }

公共函数

QOpcUaKeyPair (QObject * parent = nullptr)
virtual ~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

详细描述

This class is currently available as a Technology Preview, and therefore the API and functionality provided by the class may be subject to change at any time without prior notice.

It can generate, load and store keys for asymmetric encryption. Instances of this class have to be passed to functions which need a key.

成员类型文档编制

enum class QOpcUaKeyPair:: Cipher

Ciphers for encryption of private keys.

常量 描述
QOpcUaKeyPair::Cipher::Aes128Cbc 0 Encrypting AES128 with CBC
QOpcUaKeyPair::Cipher::Unencrypted 1 The Key will not be encrypted.

enum class QOpcUaKeyPair:: KeyType

This enum type specifies the type of a key.

常量 描述
QOpcUaKeyPair::KeyType::Rsa 0 An RSA key
QOpcUaKeyPair::KeyType::Empty 1 No key is available.
QOpcUaKeyPair::KeyType::Unknown 2 The type of key is not handled.

enum class QOpcUaKeyPair:: RsaKeyStrength

This enum type specifies the strength of a RSA key.

常量 描述
QOpcUaKeyPair::RsaKeyStrength::Bits1024 1024 A key strength of 1024 bits.
QOpcUaKeyPair::RsaKeyStrength::Bits2048 2048 A key strength of 2048 bits.
QOpcUaKeyPair::RsaKeyStrength::Bits4096 4096 A key strength of 4096 bits.

成员函数文档编制

QOpcUaKeyPair:: QOpcUaKeyPair ( QObject * parent = nullptr)

Creates a new empty key pair.

[虚拟] QOpcUaKeyPair:: ~QOpcUaKeyPair ()

Destroys the key pair.

void QOpcUaKeyPair:: generateRsaKey ( QOpcUaKeyPair::RsaKeyStrength strength )

Generates a new asymmetric RSA key pair.

The length of the key can be specified by the strength 参数。

bool QOpcUaKeyPair:: hasPrivateKey () const

返回 true if the current key contains a private key, otherwise false .

bool QOpcUaKeyPair:: loadFromPemData (const QByteArray & data )

Loads a key from PEM encoded data in data 。返回 true on success and false 否则。

It detects from the PEM header if the data contains a private or public key. Loading encrypted keys is possible by connecting a function to the signal passphraseNeeded for provision of the passphrase.

QByteArray QOpcUaKeyPair:: privateKeyToByteArray ( QOpcUaKeyPair::Cipher cipher , const QString & password ) const

Returns the PEM encoded private key. In case there is no private key, an empty byte array is returned.

The encryption of the key has to be specified using the parameters cipher and password . In order to store the key unencrypted the cipher Cipher::Unencrypted has to be used.

QByteArray QOpcUaKeyPair:: publicKeyToByteArray () const

Loads a key from PEM encoded data in data 。返回 true on success and false 否则。

It detects from the PEM header if the data contains a private or public key. Loading encrypted keys is possible by connecting a function to the signal passphraseNeeded for provision of the passphrase.

QOpcUaKeyPair::KeyType QOpcUaKeyPair:: type () const

Returns the type of the current key.