En esta página

QOpcUaKeyPair Class

QOpcUaKeyPair maneja pares de claves privadas y publicas. Más...

Cabecera: #include <QOpcUaKeyPair>
CMake: find_package(Qt6 REQUIRED COMPONENTS OpcUa)
target_link_libraries(mytarget PRIVATE Qt6::OpcUa)
qmake: QT += opcua
Hereda: QObject

Tipos Públicos

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

Funciones Públicas

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

Señales

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

Descripción detallada

Esta clase está actualmente disponible como Muestra de Tecnología, y por lo tanto la API y la funcionalidad proporcionada por la clase puede estar sujeta a cambios en cualquier momento sin previo aviso.

Puede generar, cargar y almacenar claves para cifrado asimétrico. Las instancias de esta clase deben pasarse a funciones que necesiten una clave.

Documentación de los tipos de miembros

enum class QOpcUaKeyPair::Cipher

Cifrado de claves privadas.

ConstanteValorDescripción
QOpcUaKeyPair::Cipher::Aes128Cbc0Cifrado AES128 con CBC
QOpcUaKeyPair::Cipher::Unencrypted1La clave no se cifrará.

enum class QOpcUaKeyPair::KeyType

Este tipo enum especifica el tipo de una clave.

ConstanteValorDescripción
QOpcUaKeyPair::KeyType::Rsa0Una clave RSA
QOpcUaKeyPair::KeyType::Empty1No hay ninguna clave disponible.
QOpcUaKeyPair::KeyType::Unknown2No se maneja el tipo de clave.

enum class QOpcUaKeyPair::RsaKeyStrength

Este tipo enum especifica la fuerza de una clave RSA.

ConstanteValorDescripción
QOpcUaKeyPair::RsaKeyStrength::Bits10241024Clave de 1024 bits.
QOpcUaKeyPair::RsaKeyStrength::Bits20482048Clave de 2048 bits.
QOpcUaKeyPair::RsaKeyStrength::Bits40964096Un valor de clave de 4096 bits.

Documentación de las funciones miembro

QOpcUaKeyPair::QOpcUaKeyPair(QObject *parent = nullptr)

Crea un nuevo par de claves vacío con parent como objeto padre.

[virtual noexcept] QOpcUaKeyPair::~QOpcUaKeyPair()

Destruye el par de claves.

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

Genera un nuevo par de claves asimétricas RSA.

La longitud de la clave se especifica en strength.

bool QOpcUaKeyPair::hasPrivateKey() const

Devuelve true si la clave actual contiene una clave privada, en caso contrario false.

bool QOpcUaKeyPair::loadFromPemData(const QByteArray &data)

Carga una clave a partir de datos codificados en PEM en data. Devuelve true en caso de éxito y false en caso contrario.

Detecta a partir de la cabecera PEM si los datos contienen una clave privada o pública. La carga de claves cifradas es posible conectando una función a la señal passphraseNeeded para el suministro de la frase de contraseña.

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

Esta señal se emite cuando una clave privada necesita una passphrase para su cifrado o descifrado.

writeOperation es true cuando la frase de contraseña es necesaria para exportar una clave, y es false cuando la frase de contraseña es necesaria para importar una clave.

maximumLength especifica la longitud máxima en bytes de la frase de contraseña. Todos los caracteres de passphrase que superen este límite serán ignorados.

En caso de que tengas que utilizar esta señal cruzando límites de hilos tienes que conectarla con Qt::BlockingQueuedConnection.

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

Devuelve la clave privada codificada en PEM. En caso de que no haya clave privada, se devuelve una matriz de bytes vacía.

El cifrado de la clave debe especificarse mediante los parámetros cipher y password. Para almacenar la clave sin cifrar debe utilizarse el cifrado Cipher::Unencrypted.

QByteArray QOpcUaKeyPair::publicKeyToByteArray() const

Devuelve la clave pública como una matriz de bytes.

QOpcUaKeyPair::KeyType QOpcUaKeyPair::type() const

Devuelve el tipo de la clave actual.

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