QSslKey 类

QSslKey 类提供了一个私有和公开密钥的接口。 更多...

头文件 #include <QSslKey>
CMakefind_package(Qt6 REQUIRED COMPONENTS Network)
target_link_libraries(mytarget PRIVATE Qt6::Network)
qmakeQT += network

注意:此类中的所有函数都是 可重入的

公共函数

QSslKey()
QSslKey(const QByteArray &encoded, QSsl::KeyAlgorithm algorithm, QSsl::EncodingFormat encoding = QSsl::Pem, QSsl::KeyType type = QSsl::PrivateKey, const QByteArray &passPhrase = QByteArray())
QSslKey(QIODevice *device, QSsl::KeyAlgorithm algorithm, QSsl::EncodingFormat encoding = QSsl::Pem, QSsl::KeyType type = QSsl::PrivateKey, const QByteArray &passPhrase = QByteArray())
QSslKey(Qt::HANDLE handle, QSsl::KeyType type = QSsl::PrivateKey)
QSslKey(const QSslKey &other)
~QSslKey()
QSsl::KeyAlgorithmalgorithm() const
voidclear()
Qt::HANDLEhandle() const
boolisNull() const
intlength() const
voidswap(QSslKey &other)
QByteArraytoDer(const QByteArray &passPhrase = QByteArray()) const
QByteArraytoPem(const QByteArray &passPhrase = QByteArray()) const
QSsl::KeyTypetype() const
booloperator!=(const QSslKey &other) const
QSslKey &operator=(const QSslKey &other)
booloperator==(const QSslKey &other) const

详细说明

QSslKey 提供了一个简单的密钥管理 API。

另见:QSslSocketQSslCertificateQSslCipher.

成员函数说明

QSslKey::QSslKey()

创建一个空密钥。

另见:isNull

QSslKey::QSslKey(const QByteArray &encoded, QSsl::KeyAlgorithm algorithm, QSsl::EncodingFormat encoding = QSsl::Pem, QSsl::KeyType type = QSsl::PrivateKey, const QByteArray &passPhrase = QByteArray())

通过使用指定的algorithmencoding格式解码字节序列中的字符串来构造QSslKey。:type指定密钥是公开的还是私有的。

如果是加密的密钥,则使用passPhrase来解密。

构造后,使用isNull()来检查encoded是否包含有效的密钥。

QSslKey::QSslKey(QIODevice *device, QSsl::KeyAlgorithm algorithm, QSsl::EncodingFormat encoding = QSsl::Pem, QSsl::KeyType type = QSsl::PrivateKey, const QByteArray &passPhrase = QByteArray())

通过从设备device读取和解码数据来构造QSslKey,使用指定的algorithmencoding格式。:type指定密钥是公开的还是私有的。

如果是加密的密钥,则使用passPhrase来解密。

构造后,使用isNull()来检查device提供了有效的密钥。

[显式] QSslKey::QSslKey(Qt::HANDLE handle, QSsl::KeyType type = QSsl::PrivateKey)

从有效的本地密钥handle构造QSslKey。type指定密钥是公开的还是私有的。

QSslKey将取走对this密钥的所有权,您不得使用本地库释放密钥。

QSslKey::QSslKey(const QSslKey &other)

构建other的相同副本。

[noexcept] QSslKey::~QSslKey()

销毁QSslKey对象。

QSsl::KeyAlgorithm QSslKey::algorithm() const

返回密钥算法。

void QSslKey::clear()

清除密钥的内容,将其变为空密钥。

另见:isNull

Qt::HANDLE QSslKey::handle() const

如果存在,则返回本地密钥处理器的指针,否则返回nullptr

您可以与此句柄一起使用本地API来访问有关密钥的扩展信息。

警告:使用此函数有很大的可能性不可移植,并且其返回值可能在平台之间和Qt之间的主要版本之间有所不同。

bool QSslKey::isNull() const

如果是空密钥,则返回true;否则返回false。

另请参阅clear()。

int QSslKey::length() const

返回密钥的位数长度,如果密钥为空则返回-1。

[无异常] void QSslKey::swap(QSslKey &other)

other交换SSL密钥。此函数非常快且从不失败。

QByteArray QSslKey::toDer(const QByteArray &passPhrase = QByteArray()) const

以DER编码返回密钥。

passPhrase参数应被省略,因为DER无法加密。在Qt的下一个版本中将对其进行删除。

QByteArray QSslKey::toPem(const QByteArray &passPhrase = QByteArray()) const

以PEM编码返回密钥。如果密钥是私钥且passPhrase非空,结果将以passPhrase加密。

QSsl::KeyType QSslKey::type() const

返回密钥的类型(即,公钥或私钥)。

bool QSslKey::operator!=(const QSslKey &other) const

如果此密钥不等于密钥other,则返回true;否则返回false

QSslKey &QSslKey::operator=(const QSslKey &other)

other的内容复制到该密钥中,使两个密钥相同。

返回对此QSslKey的引用。

bool QSslKey::operator==(const QSslKey &other) const

如果此密钥等于other,则返回true;否则返回false

© 2024 Qt公司有限公司。此处包含的文档贡献为其各自所有者的版权。此处提供的文档在自由软件基金会发布的GNU自由文档许可证版本1.3的条款下提供。Qt及其标志是芬兰及其它世界各地的Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。