QSslDiffieHellmanParameters 类
QSslDiffieHellmanParameters 类为服务器 Diffie-Hellman 参数提供了接口。 更多...
头文件 | #include <QSslDiffieHellmanParameters> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Network) target_link_libraries(mytarget PRIVATE Qt6::Network) |
qmake | QT += network |
- 所有成员列表,包括继承的成员
- QSslDiffieHellmanParameters 是 网络编程 API 和 隐式共享类 的一部分。
注意: 此类中所有函数都是 可重入的。
公共类型
枚举 | Error { NoError, InvalidInputDataError, UnsafeParametersError } |
公共函数
QSslDiffieHellmanParameters() | |
QSslDiffieHellmanParameters(const QSslDiffieHellmanParameters &other) | |
QSslDiffieHellmanParameters(QSslDiffieHellmanParameters &&other) | |
~QSslDiffieHellmanParameters() | |
QSslDiffieHellmanParameters::Error | error() const |
QString | errorString() const |
bool | isEmpty() const |
bool | isValid() const |
void | swap(QSslDiffieHellmanParameters &other) |
QSslDiffieHellmanParameters & | operator=(const QSslDiffieHellmanParameters &other) |
QSslDiffieHellmanParameters & | operator=(QSslDiffieHellmanParameters &&other) |
静态公共成员
QSslDiffieHellmanParameters | defaultParameters() |
QSslDiffieHellmanParameters | fromEncoded(const QByteArray &encoded, QSsl::EncodingFormat encoding = QSsl::Pem) |
QSslDiffieHellmanParameters | fromEncoded(QIODevice *device, QSsl::EncodingFormat encoding = QSsl::Pem) |
相关非成员
size_t | qHash(const QSslDiffieHellmanParameters &dhparam, size_t seed = 0) |
bool | operator!=(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs) |
QDebug | operator<<(QDebug debug, const QSslDiffieHellmanParameters &dhparam) |
bool | operator==(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs) |
详细描述
QSslDiffieHellmanParameters 根据基于 QSslSocket 的 QSslDiffieHellmanParameters 为服务器设置 Diffie-Hellman 参数的接口。
另请参阅 QSslSocket,QSslCipher 和 QSslConfiguration。
成员类型文档
enum QSslDiffieHellmanParameters::Error
描述了一个 QSslDiffieHellmanParameters 错误。
常量 | 值 | 描述 |
---|---|---|
QSslDiffieHellmanParameters::NoError | 0 | 没有发生错误。 |
QSslDiffieHellmanParameters::InvalidInputDataError | 1 | 给定的输入数据无法用来构造一个 QSslDiffieHellmanParameters 对象。 |
QSslDiffieHellmanParameters::UnsafeParametersError | 2 | Diffie-Hellman 参数是不安全的,不应该使用。 |
成员函数文档
QSslDiffieHellmanParameters::QSslDiffieHellmanParameters()
构建一个空的 QSslDiffieHellmanParameters 实例。
如果在一个 QSslConfiguration 对象上设置了一个空的 QSslDiffieHellmanParameters 实例,则将禁用 Diffie-Hellman 商议。
另请参阅 isValid() 和 QSslConfiguration。
QSslDiffieHellmanParameters::QSslDiffieHellmanParameters(const QSslDiffieHellmanParameters &other)
构建与 other 相同的副本。
[noexcept]
QSslDiffieHellmanParameters::QSslDiffieHellmanParameters(QSslDiffieHellmanParameters &&other)
从 other 中移动构造。
注意: 移动后的对象 other 会处于一种部分构造状态,在这种状态中,唯一有效的操作是销毁或分配新值。
[static]
QSslDiffieHellmanParameters QSslDiffieHellmanParameters::defaultParameters()
销毁 QSslDiffieHellmanParameters 对象。
[static]
QSslDiffieHellmanParameters QSslDiffieHellmanParameters::defaultParameters()
返回由 QSslSocket 使用的默认 QSslDiffieHellmanParameters。
这是目前从 RFC 3526 的 2048 位 MODP 群。
[noexcept]
QSslDiffieHellmanParameters::Error QSslDiffieHellmanParameters::error() const
返回导致 QSslDiffieHellmanParameters 对象无效的错误。
[noexcept]
QString QSslDiffieHellmanParameters::errorString() const
返回一个对导致 QSslDiffieHellmanParameters 对象无效的错误的人可读描述。
[static]
QSslDiffieHellmanParameters QSslDiffieHellmanParameters::fromEncoded(const QByteArray &encoded, QSsl::EncodingFormat encoding = QSsl::Pem)
使用PEM或DER形式的字节数组encoded构建一个QSslDiffieHellmanParameters对象,编码方式由encoding指定。
使用返回对象的isValid()方法检查Diffie-Hellman参数是否有效且正确加载。
另请参阅 isValid() 和 QSslConfiguration。
[静态]
QSslDiffieHellmanParameters QSslDiffieHellmanParameters::fromEncoded(QIODevice *device, QSsl::EncodingFormat encoding = QSsl::Pem)
通过从device中读取PEM或DER形式的数据来构建一个QSslDiffieHellmanParameters对象,编码方式由encoding指定。
使用返回对象的isValid()方法检查Diffie-Hellman参数是否有效且正确加载。
特别地,如果device为空或者没有打开读取权限,将返回一个无效对象。
另请参阅 isValid() 和 QSslConfiguration。
[noexcept]
bool QSslDiffieHellmanParameters::isEmpty() const
如果这是一个空的QSslDiffieHellmanParameters实例,返回true
。
在一个基于QSslSocket的服务器上设置一个空的QSslDiffieHellmanParameters实例将禁用Diffie-Hellman密钥交换。
[noexcept]
bool QSslDiffieHellmanParameters::isValid() const
如果这是一个有效的QSslDiffieHellmanParameters,返回true
,否则返回false。
在构建一个QSslDiffieHellmanParameters对象后使用此方法以确定其有效性。
如果QSslDiffieHellmanParameters对象无效,您可以使用error()方法确定阻止对象创建的错误。
另请参阅error()。
[noexcept]
void QSslDiffieHellmanParameters::swap(QSslDiffieHellmanParameters &other)
将此QSslDiffieHellmanParameters与other交换。此函数非常快且不会失败。
QSslDiffieHellmanParameters &QSslDiffieHellmanParameters::operator=(const QSslDiffieHellmanParameters &other)
将other的内容复制到这个QSslDiffieHellmanParameters对象中,使两个对象相同。
返回对当前QSslDiffieHellmanParameters的引用。
[noexcept]
QSslDiffieHellmanParameters &QSslDiffieHellmanParameters::operator=(QSslDiffieHellmanParameters &&other)
将other移动赋值到这个QSslDiffieHellmanParameters实例。
注意: 移动后的对象 other 会处于一种部分构造状态,在这种状态中,唯一有效的操作是销毁或分配新值。
相关非成员
[noexcept]
size_t qHash(const QSslDiffieHellmanParameters &dhparam, size_t seed = 0)
为 dhparam 返回一个哈希值,使用 seed 作为计算种子。
[noexcept]
bool operator!=(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs)
如果 lhs 不等于 rhs,则返回 true
;否则返回 false
。
QDebug operator<<(QDebug debug, const QSslDiffieHellmanParameters &dhparam)
将 dhparam 中的 Diffie-Hellman 参数写入调试对象 debug,以便进行调试。
Diffie-Hellman 参数将以 Base64 编码的 DER 格式表示。
另请参阅调试技术。
[noexcept]
bool operator==(const QSslDiffieHellmanParameters &lhs, const QSslDiffieHellmanParameters &rhs)
如果 lhs 等于 rhs,则返回 true
;否则返回 false
。
© 2024 The Qt Company Ltd. 本文档中包含的贡献的文档版权属于各自的所有者。本文档是根据自由软件基金会发布的 GNU 自由文档许可证版本 1.3 条款许可的。Qt 及相关商标是芬兰 The Qt Company Ltd. 及其在世界其他国家的商标。所有其他商标均为各自所有者的财产。