Sur cette page

QOpcUaKeyPair Class

QOpcUaKeyPair gère les paires de clés privées et publiques. Plus d'informations...

En-tête : #include <QOpcUaKeyPair>
CMake : find_package(Qt6 REQUIRED COMPONENTS OpcUa)
target_link_libraries(mytarget PRIVATE Qt6::OpcUa)
qmake : QT += opcua
Héritages : QObject

Types publics

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

Fonctions publiques

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

Signaux

void passphraseNeeded(QString &passphrase, int maximumLength, bool writeOperation)

Description détaillée

Cette classe est actuellement disponible en tant qu'aperçu technologique et, par conséquent, l'API et les fonctionnalités fournies par la classe peuvent être modifiées à tout moment sans préavis.

Elle permet de générer, de charger et de stocker des clés pour le cryptage asymétrique. Les instances de cette classe doivent être transmises aux fonctions qui ont besoin d'une clé.

Type de membre Documentation

enum class QOpcUaKeyPair::Cipher

Chiffres pour le cryptage des clés privées.

ConstanteValeurDescription de la constante
QOpcUaKeyPair::Cipher::Aes128Cbc0Chiffrement AES128 avec CBC
QOpcUaKeyPair::Cipher::Unencrypted1La clé ne sera pas cryptée.

enum class QOpcUaKeyPair::KeyType

Ce type d'énumération spécifie le type d'une clé.

ConstanteValeurDescription de la clé
QOpcUaKeyPair::KeyType::Rsa0Une clé RSA
QOpcUaKeyPair::KeyType::Empty1Aucune clé n'est disponible.
QOpcUaKeyPair::KeyType::Unknown2Le type de clé n'est pas géré.

enum class QOpcUaKeyPair::RsaKeyStrength

Ce type d'énumération spécifie la force d'une clé RSA.

ConstanteValeurDescription
QOpcUaKeyPair::RsaKeyStrength::Bits10241024Une puissance de clé de 1024 bits.
QOpcUaKeyPair::RsaKeyStrength::Bits20482048Une puissance de clé de 2048 bits.
QOpcUaKeyPair::RsaKeyStrength::Bits40964096Une puissance de clé de 4096 bits.

Documentation des fonctions membres

QOpcUaKeyPair::QOpcUaKeyPair(QObject *parent = nullptr)

Crée une nouvelle paire de clés vide avec parent comme objet parent.

[virtual noexcept] QOpcUaKeyPair::~QOpcUaKeyPair()

Détruit la paire de clés.

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

Génère une nouvelle paire de clés RSA asymétriques.

La longueur de la clé est spécifiée par strength.

bool QOpcUaKeyPair::hasPrivateKey() const

Renvoie true si la clé actuelle contient une clé privée, sinon false.

bool QOpcUaKeyPair::loadFromPemData(const QByteArray &data)

Charge une clé à partir de données encodées en PEM dans data. Il renvoie true en cas de succès et false dans le cas contraire.

Il détecte à partir de l'en-tête PEM si les données contiennent une clé privée ou publique. Le chargement de clés cryptées est possible en connectant une fonction au signal passphraseNeeded pour la fourniture de la phrase d'authentification.

[signal] void QOpcUaKeyPair::passphraseNeeded(QString &passphrase, int maximumLength, bool writeOperation)

Ce signal est émis lorsqu'une clé privée a besoin d'une passphrase pour le cryptage ou le décryptage.

writeOperation est true lorsque la phrase de passe est nécessaire pour l'exportation d'une clé, et est false lorsque la phrase de passe est nécessaire pour l'importation d'une clé.

maximumLength spécifie la longueur maximale en octets de la phrase de passe. Tous les caractères de passphrase dépassant cette limite seront ignorés.

Si vous utilisez ce signal en traversant les limites d'un thread, vous devez le connecter à Qt::BlockingQueuedConnection.

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

Renvoie la clé privée encodée PEM. S'il n'y a pas de clé privée, un tableau d'octets vide est renvoyé.

Le cryptage de la clé doit être spécifié à l'aide des paramètres cipher et password. Pour stocker la clé en clair, il convient d'utiliser le cryptogramme Cipher::Unencrypted.

QByteArray QOpcUaKeyPair::publicKeyToByteArray() const

Renvoie la clé publique sous la forme d'un tableau d'octets.

QOpcUaKeyPair::KeyType QOpcUaKeyPair::type() const

Renvoie le type de la clé actuelle.

© 2026 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.