QSslCertificate¶
The
QSslCertificate
class provides a convenient API for an X509 certificate. More…
![Inheritance diagram of PySide2.QtNetwork.QSslCertificate](../../_images/inheritance-e7051538cfac356414af78c2e0d48474b8b52ddb.png)
Synopsis¶
Functions¶
def
__eq__
(other)def
__ne__
(other)def
clear
()def
digest
([algorithm=QCryptographicHash.Md5])def
effectiveDate
()def
expiryDate
()def
extensions
()def
handle
()def
isBlacklisted
()def
isNull
()def
isSelfSigned
()def
issuerDisplayName
()def
issuerInfo
(attribute)def
issuerInfo
(info)def
issuerInfoAttributes
()def
publicKey
()def
serialNumber
()def
subjectAlternativeNames
()def
subjectDisplayName
()def
subjectInfo
(attribute)def
subjectInfo
(info)def
subjectInfoAttributes
()def
swap
(other)def
toDer
()def
toPem
()def
toText
()def
version
()
Static functions¶
def
fromData
(data[, format=QSsl.Pem])def
fromDevice
(device[, format=QSsl.Pem])def
fromPath
(path[, format=QSsl.Pem[, syntax=QRegExp.FixedString]])def
importPkcs12
(device, key, cert[, caCertificates=None[, passPhrase=QByteArray()]])def
verify
(certificateChain[, hostName=”“])
Detailed Description¶
QSslCertificate
stores an X509 certificate, and is commonly used to verify the identity and store information about the local host, a remotely connected peer, or a trusted third party Certificate Authority.There are many ways to construct a
QSslCertificate
. The most common way is to callpeerCertificate()
, which returns aQSslCertificate
object, orpeerCertificateChain()
, which returns a list of them. You can also load certificates from a DER (binary) or PEM (Base64) encoded bundle, typically stored as one or more local files, or in a Qt Resource.You can call
isNull()
to check if your certificate is null. By default,QSslCertificate
constructs a null certificate. A null certificate is invalid, but an invalid certificate is not necessarily null. If you want to reset all contents in a certificate, callclear()
.After loading a certificate, you can find information about the certificate, its subject, and its issuer, by calling one of the many accessor functions, including
version()
,serialNumber()
,issuerInfo()
andsubjectInfo()
. You can calleffectiveDate()
andexpiryDate()
to check when the certificate starts being effective and when it expires. ThepublicKey()
function returns the certificate subject’s public key as aQSslKey
. You can callissuerInfo()
orsubjectInfo()
to get detailed information about the certificate issuer and its subject.Internally,
QSslCertificate
is stored as an X509 structure. You can access this handle by callinghandle()
, but the results are likely to not be portable.See also
-
class
QSslCertificate
(device[, format=QSsl.Pem])¶ QSslCertificate([data=QByteArray()[, format=QSsl.Pem]])
QSslCertificate(other)
- param format
EncodingFormat
- param device
QIODevice
- param other
- param data
QByteArray
Constructs a
QSslCertificate
by readingformat
encoded data fromdevice
and using the first certificate found. You can later callisNull()
to see ifdevice
contained a certificate, and if this certificate was loaded successfully.Constructs an identical copy of
other
.
-
PySide2.QtNetwork.QSslCertificate.
SubjectInfo
¶ Describes keys that you can pass to
issuerInfo()
orsubjectInfo()
to get information about the certificate issuer or subject.Constant
Description
QSslCertificate.Organization
“O” The name of the organization.
QSslCertificate.CommonName
“CN” The common name; most often this is used to store the host name.
QSslCertificate.LocalityName
“L” The locality.
QSslCertificate.OrganizationalUnitName
“OU” The organizational unit name.
QSslCertificate.CountryName
“C” The country.
QSslCertificate.StateOrProvinceName
“ST” The state or province.
QSslCertificate.DistinguishedNameQualifier
The distinguished name qualifier
QSslCertificate.SerialNumber
The certificate’s serial number
QSslCertificate.EmailAddress
The email address associated with the certificate
-
PySide2.QtNetwork.QSslCertificate.
clear
()¶ Clears the contents of this certificate, making it a null certificate.
See also
-
PySide2.QtNetwork.QSslCertificate.
digest
([algorithm=QCryptographicHash.Md5])¶ - Parameters
algorithm –
Algorithm
- Return type
QByteArray
Returns a cryptographic digest of this certificate. By default, an MD5 digest will be generated, but you can also specify a custom
algorithm
.
-
PySide2.QtNetwork.QSslCertificate.
effectiveDate
()¶ - Return type
QDateTime
Returns the date-time that the certificate becomes valid, or an empty
QDateTime
if this is a null certificate.See also
-
PySide2.QtNetwork.QSslCertificate.
expiryDate
()¶ - Return type
QDateTime
Returns the date-time that the certificate expires, or an empty
QDateTime
if this is a null certificate.See also
-
PySide2.QtNetwork.QSslCertificate.
extensions
()¶ - Return type
Returns a list containing the X509 extensions of this certificate.
-
static
PySide2.QtNetwork.QSslCertificate.
fromData
(data[, format=QSsl.Pem])¶ - Parameters
data –
QByteArray
format –
EncodingFormat
- Return type
Searches for and parses all certificates in
data
that are encoded in the specifiedformat
and returns them in a list of certificates.See also
-
static
PySide2.QtNetwork.QSslCertificate.
fromDevice
(device[, format=QSsl.Pem])¶ - Parameters
device –
QIODevice
format –
EncodingFormat
- Return type
Searches for and parses all certificates in
device
that are encoded in the specifiedformat
and returns them in a list of certificates.See also
-
static
PySide2.QtNetwork.QSslCertificate.
fromPath
(path[, format=QSsl.Pem[, syntax=QRegExp.FixedString]])¶ - Parameters
path – unicode
format –
EncodingFormat
syntax –
PatternSyntax
- Return type
Searches all files in the
path
for certificates encoded in the specifiedformat
and returns them in a list.path
must be a file or a pattern matching one or more files, as specified bysyntax
.Example:
for cert in QSslCertificate.fromPath('C:/ssl/certificate.*.pem', QSsL.Pem, QRegExp.Wildcard): print cert.issuerInfo(QSslCertificate.Organization)
See also
-
PySide2.QtNetwork.QSslCertificate.
handle
()¶ - Return type
HANDLE
Returns a pointer to the native certificate handle, if there is one, or a null pointer otherwise.
You can use this handle, together with the native API, to access extended information about the certificate.
Warning
Use of this function has a high probability of being non-portable, and its return value may vary from platform to platform or change from minor release to minor release.
-
static
PySide2.QtNetwork.QSslCertificate.
importPkcs12
(device, key, cert[, caCertificates=None[, passPhrase=QByteArray()]])¶ - Parameters
device –
QIODevice
key –
QSslKey
cert –
QSslCertificate
caCertificates –
QList
passPhrase –
QByteArray
- Return type
bool
Imports a PKCS#12 (pfx) file from the specified
device
. A PKCS#12 file is a bundle that can contain a number of certificates and keys. This method reads a singlekey
, itscertificate
and any associatedcaCertificates
from the bundle. If apassPhrase
is specified then this will be used to decrypt the bundle. Returnstrue
if the PKCS#12 file was successfully loaded.Note
The
device
must be open and ready to be read from.
-
PySide2.QtNetwork.QSslCertificate.
isBlacklisted
()¶ - Return type
bool
Returns
true
if this certificate is blacklisted; otherwise returnsfalse
.See also
-
PySide2.QtNetwork.QSslCertificate.
isNull
()¶ - Return type
bool
Returns
true
if this is a null certificate (i.e., a certificate with no contents); otherwise returnsfalse
.By default,
QSslCertificate
constructs a null certificate.See also
-
PySide2.QtNetwork.QSslCertificate.
isSelfSigned
()¶ - Return type
bool
Returns
true
if this certificate is self signed; otherwise returnsfalse
.A certificate is considered self-signed its issuer and subject are identical.
-
PySide2.QtNetwork.QSslCertificate.
issuerDisplayName
()¶ - Return type
unicode
Returns a name that describes the issuer. It returns the
CommonName
if available, otherwise falls back to the firstOrganization
or the firstOrganizationalUnitName
.See also
-
PySide2.QtNetwork.QSslCertificate.
issuerInfo
(attribute)¶ - Parameters
attribute –
QByteArray
- Return type
list of strings
-
PySide2.QtNetwork.QSslCertificate.
issuerInfo
(info) - Parameters
info –
SubjectInfo
- Return type
list of strings
Returns the issuer information for the
subject
from the certificate, or an empty list if there is no information forsubject
in the certificate. There can be more than one entry of each type.See also
-
PySide2.QtNetwork.QSslCertificate.
issuerInfoAttributes
()¶ - Return type
Returns a list of the attributes that have values in the issuer information of this certificate. The information associated with a given attribute can be accessed using the
issuerInfo()
method. Note that this list may include the OIDs for any elements that are not known by the SSL backend.See also
-
PySide2.QtNetwork.QSslCertificate.
__ne__
(other)¶ - Parameters
other –
QSslCertificate
- Return type
bool
Returns
true
if this certificate is not the same asother
; otherwise returnsfalse
.
-
PySide2.QtNetwork.QSslCertificate.
__eq__
(other)¶ - Parameters
other –
QSslCertificate
- Return type
bool
Returns
true
if this certificate is the same asother
; otherwise returnsfalse
.
-
PySide2.QtNetwork.QSslCertificate.
publicKey
()¶ - Return type
Returns the certificate subject’s public key.
-
PySide2.QtNetwork.QSslCertificate.
serialNumber
()¶ - Return type
QByteArray
Returns the certificate’s serial number string in hexadecimal format.
-
PySide2.QtNetwork.QSslCertificate.
subjectAlternativeNames
()¶ - Return type
Returns the list of alternative subject names for this certificate. The alternative names typically contain host names, optionally with wildcards, that are valid for this certificate.
These names are tested against the connected peer’s host name, if either the subject information for
CommonName
doesn’t define a valid host name, or the subject info name doesn’t match the peer’s host name.See also
-
PySide2.QtNetwork.QSslCertificate.
subjectDisplayName
()¶ - Return type
unicode
Returns a name that describes the subject. It returns the
CommonName
if available, otherwise falls back to the firstOrganization
or the firstOrganizationalUnitName
.See also
-
PySide2.QtNetwork.QSslCertificate.
subjectInfo
(info)¶ - Parameters
info –
SubjectInfo
- Return type
list of strings
Returns the information for the
subject
, or an empty list if there is no information forsubject
in the certificate. There can be more than one entry of each type.See also
-
PySide2.QtNetwork.QSslCertificate.
subjectInfo
(attribute) - Parameters
attribute –
QByteArray
- Return type
list of strings
-
PySide2.QtNetwork.QSslCertificate.
subjectInfoAttributes
()¶ - Return type
Returns a list of the attributes that have values in the subject information of this certificate. The information associated with a given attribute can be accessed using the
subjectInfo()
method. Note that this list may include the OIDs for any elements that are not known by the SSL backend.See also
-
PySide2.QtNetwork.QSslCertificate.
swap
(other)¶ - Parameters
other –
QSslCertificate
Swaps this certificate instance with
other
. This function is very fast and never fails.
-
PySide2.QtNetwork.QSslCertificate.
toDer
()¶ - Return type
QByteArray
Returns this certificate converted to a DER (binary) encoded representation.
-
PySide2.QtNetwork.QSslCertificate.
toPem
()¶ - Return type
QByteArray
Returns this certificate converted to a PEM (Base64) encoded representation.
-
PySide2.QtNetwork.QSslCertificate.
toText
()¶ - Return type
unicode
Returns this certificate converted to a human-readable text representation.
-
static
PySide2.QtNetwork.QSslCertificate.
verify
(certificateChain[, hostName=""])¶ - Parameters
certificateChain –
hostName – unicode
- Return type
Verifies a certificate chain. The chain to be verified is passed in the
certificateChain
parameter. The first certificate in the list should be the leaf certificate of the chain to be verified. IfhostName
is specified then the certificate is also checked to see if it is valid for the specified host name.Note that the root (CA) certificate should not be included in the list to be verified, this will be looked up automatically either using the CA list specified by
defaultCaCertificates()
or, if possible, it will be loaded on demand on Unix.
-
PySide2.QtNetwork.QSslCertificate.
version
()¶ - Return type
QByteArray
Returns the certificate’s version string.
© 2018 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.