Класс PrivateKey
#include <QtCrypto>
Диаграмма кооперации класса QCA::PrivateKey:

Публичные функции
Публичные функции, унаследованные от QCA::PKey
| int | bitSize () const |
| bool | canExport () const |
| bool | canKeyAgree () const |
| bool | isDH () const |
| bool | isDSA () const |
| bool | isEC () const |
| bool | isGOST () const |
| bool | isNull () const |
| bool | isPrivate () const |
| bool | isPublic () const |
| bool | isRSA () const |
| bool | operator!= (const PKey &a) const |
| PKey & | operator= (const PKey &from) |
| bool | operator== (const PKey &a) const |
| PKey () | |
| PKey (const PKey &from) | |
| PrivateKey | toPrivateKey () const |
| PublicKey | toPublicKey () const |
| Type | type () const |
Публичные функции, унаследованные от QCA::Algorithm
| Algorithm (const Algorithm &from) | |
| void | change (const QString &type, const QString &provider) |
| void | change (Provider::Context *c) |
| Provider::Context * | context () |
| const Provider::Context * | context () const |
| Algorithm & | operator= (const Algorithm &from) |
| Provider * | provider () const |
| Provider::Context * | takeContext () |
| QString | type () const |
Статические публичные функции
| static PrivateKey | fromDER (const SecureArray &a, const SecureArray &passphrase=SecureArray(), ConvertResult *result=nullptr, const QString &provider=QString()) |
| static PrivateKey | fromPEM (const QString &s, const SecureArray &passphrase=SecureArray(), ConvertResult *result=nullptr, const QString &provider=QString()) |
| static PrivateKey | fromPEMFile (const QString &fileName, const SecureArray &passphrase=SecureArray(), ConvertResult *result=nullptr, const QString &provider=QString()) |
| static QList<PBEAlgorithm > | supportedPBEAlgorithms (const QString &provider=QString()) |
Статические публичные функции, унаследованные от QCA::PKey
| static QList<Type > | supportedIOTypes (const QString &provider=QString()) |
| static QList<Type > | supportedTypes (const QString &provider=QString()) |
Защищённые методы
| PrivateKey (const QString &type, const QString &provider) |
Защищённые функции, унаследованные от QCA::PKey
| PKey (const QString &type, const QString &provider) | |
| void | set (const PKey &k) |
| DHPrivateKey | toDHPrivateKey () const |
| DHPublicKey | toDHPublicKey () const |
| DSAPrivateKey | toDSAPrivateKey () const |
| DSAPublicKey | toDSAPublicKey () const |
| ECPrivateKey | toECPrivateKey () const |
| ECPublicKey | toECPublicKey () const |
| GOSTPrivateKey | toGOSTPrivateKey () const |
| GOSTPublicKey | toGOSTPublicKey () const |
| RSAPrivateKey | toRSAPrivateKey () const |
| RSAPublicKey | toRSAPublicKey () const |
Защищённые функции, унаследованные от QCA::Algorithm
| Algorithm () |
| Algorithm (const QString &type, const QString &provider) |
Дополнительные унаследованные члены
Публичные типы, унаследованные от QCA::PKey
| enum | Type { RSA , DSA , DH , EC , GOST , UNKNOWN } |
Подробное описание
Общий закрытый ключ.
Примеры
Описание конструкторов и деструктора
PrivateKey() [1/4]
| QCA::PrivateKey::PrivateKey () |
Создаёт пустой закрытый ключ.
PrivateKey() [2/4]
| QCA::PrivateKey::PrivateKey (const QString & fileName, const SecureArray & passphrase = SecureArray() ) | explicit |
Импортирует закрытый ключ из представления PEM в файле.
Параметры
| fileName | Имя файла, содержащего закрытый ключ |
| passphrase | Кодовая фраза для закрытого ключа |
См. также fromPEMFile как альтернативный метод.
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
PrivateKey() [3/4]
| QCA::PrivateKey::PrivateKey (const PrivateKey & from) |
Конструктор копирования.
Параметры
| from | Объект PrivateKey для копирования |
PrivateKey() [4/4]
| QCA::PrivateKey::PrivateKey (const QString & type, const QString & provider ) | protected |
Создаёт новый закрытый ключ.
Параметры
| type | Тип создаваемого ключа |
| provider | Используемый криптопровайдер, если требуется конкретный криптопровайдер |
Описание методов
operator=()
| PrivateKey & QCA::PrivateKey::operator= (const PrivateKey & from) |
Оператор присваивания.
Параметры
| from | Объект PrivateKey для копирования |
toRSA()
| RSAPrivateKey QCA::PrivateKey::toRSA () const |
Интерпретирует/конвертирует ключ в ключ RSA.
toDSA()
| DSAPrivateKey QCA::PrivateKey::toDSA () const |
Интерпретирует/конвертирует ключ в ключ DSA.
toDH()
| DHPrivateKey QCA::PrivateKey::toDH () const |
Интерпретирует/конвертирует ключ в ключ Диффи — Хеллмана.
toEC()
| ECPrivateKey QCA::PrivateKey::toEC () const |
Интерпретирует/конвертирует ключ в ключ эллиптической кривой.
toGOST()
| GOSTPrivateKey QCA::PrivateKey::toGOST () const |
Интерпретирует/конвертирует ключ в ключ ГОСТ.
canDecrypt()
| bool QCA::PrivateKey::canDecrypt () const |
Проверяет, можно ли использовать этот ключ для дешифрования.
Возвращает true, если ключ можно использовать для дешифрования.
canEncrypt()
| bool QCA::PrivateKey::canEncrypt () const |
Проверяет, можно ли использовать этот ключ для шифрования.
Возвращает true, если ключ можно использовать для шифрования.
canSign()
| bool QCA::PrivateKey::canSign () const |
Проверяет, можно ли использовать этот ключ для подписи.
Возвращает true, если ключ можно использовать для создания подписи.
Примеры
maximumEncryptSize()
| int QCA::PrivateKey::maximumEncryptSize (EncryptionAlgorithm alg) const |
Максимальный размер сообщения, которое можно зашифровать с помощью указанного алгоритма.
Параметры
| alg | Алгоритм для проверки |
decrypt()
| bool QCA::PrivateKey::decrypt (const SecureArray & in, SecureArray * out, EncryptionAlgorithm alg ) |
Расшифровывает сообщение.
Параметры
| in | Зашифрованные данные |
| out | Данные в виде обычного текста |
| alg | Используемый алгоритм |
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
Примеры
encrypt()
| SecureArray QCA::PrivateKey::encrypt (const SecureArray & a, EncryptionAlgorithm alg ) |
Шифрует сообщение, используя указанный алгоритм.
Параметры
| a | Сообщение для шифрования |
| alg | Используемый алгоритм |
startSign()
| void QCA::PrivateKey::startSign (SignatureAlgorithm alg, SignatureFormat format = DefaultFormat ) |
Инициализирует процесс подписи сообщения.
Параметры
| alg | Алгоритм, используемый для процесса подписи сообщения |
| format | Используемый формат подписи для DSA |
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
Примеры
update()
| void QCA::PrivateKey::update (const MemoryRegion & a) |
Обновляет процесс подписи.
Параметры
| a | Сообщение для обновления подписи |
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
Примеры
signature()
| QByteArray QCA::PrivateKey::signature () |
Получившаяся подпись.
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
Примеры
signMessage()
| QByteArray QCA::PrivateKey::signMessage (const MemoryRegion & a, SignatureAlgorithm alg, SignatureFormat format = DefaultFormat ) |
Одноэтапный процесс подписи.
Параметры
| a | Сообщение для подписи |
| alg | Используемый алгоритм подписи |
| format | Используемый формат подписи для DSA |
Возвращает подпись.
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
deriveKey()
| SymmetricKey QCA::PrivateKey::deriveKey (const PublicKey & theirs) |
Получает общий секретный ключ из открытого ключа.
Параметры
| theirs | Открытый ключ, из которого извлекается закрытый ключ |
supportedPBEAlgorithms()
| static QList<PBEAlgorithm > QCA::PrivateKey::supportedPBEAlgorithms (const QString & provider = QString()) | static |
Перечисляет поддерживаемые алгоритмы шифрования на основе пароля, которые можно использовать для защиты ключа.
Параметры
| provider | Криптопровайдер, который будет использоваться, если требуется конкретный криптопровайдер |
toDER()
| SecureArray QCA::PrivateKey::toDER (const SecureArray & passphrase = SecureArray(), PBEAlgorithm pbe = PBEDefault ) const |
Экспортирует ключ в формате особых правил кодирования (DER).
Параметры
| passphrase | Кодовая фраза для защиты ключа |
| pbe | Алгоритм симметричного шифрования для защиты ключа |
См. также fromDER
предоставляет действие, обратное
toDER,
преобразуя закодированный ключ DER в PrivateKey.
toPEM()
| QString QCA::PrivateKey::toPEM (const SecureArray & passphrase = SecureArray(), PBEAlgorithm pbe = PBEDefault ) const |
Экспортирует ключ в формате почты с повышенной секретностью (PEM).
Параметры
| passphrase | Кодовая фраза для защиты ключа |
| pbe | Алгоритм симметричного шифрования для защиты ключа |
См. также toPEMFile
предоставляет удобный способ сохранить закодированный ключ PEM в файл.
fromPEM
предоставляет действие, обратное
toPEM,
преобразуя закодированный ключ PEM в PrivateKey.
toPEMFile()
| bool QCA::PrivateKey::toPEMFile (const QString & fileName, const SecureArray & passphrase = SecureArray(), PBEAlgorithm pbe = PBEDefault ) const |
Экспортирует ключ в формате почты с повышенной секретностью (PEM) в файл.
Параметры
| fileName | Имя файла (и путь, если требуется), куда должен быть экспортирован ключ |
| passphrase | Кодовая фраза для защиты ключа |
| pbe | Алгоритм симметричного шифрования для защиты ключа |
Возвращает true, если экспорт успешен.
См. также toPEM
предоставляет удобный способ сохранить закодированный ключ PEM в файл.
fromPEM
предоставляет действие, обратное
toPEM,
преобразуя закодированный ключ PEM в PrivateKey.
Примеры
fromDER()
| static PrivateKey QCA::PrivateKey::fromDER (const SecureArray & a, const SecureArray & passphrase = SecureArray(), ConvertResult * result = nullptr, const QString & provider = QString() ) | static |
Импортирует ключ в формате особых правил кодирования (DER).
Параметры
| a | Массив, содержащий DER-представление ключа |
| passphrase | Кодовая фраза, которая используется для защиты ключа |
| result | Указатель на ConvertResult, который будет содержать результат импорта, если будет предоставлен |
| provider | Криптопровайдер, который будет использоваться, если требуется конкретный криптопровайдер |
См. также toDER предоставляет действие, обратное fromDER, экспортируя ключ в массив.
QCA::KeyLoader для асинхронного загрузчика.
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
fromPEM()
| static PrivateKey QCA::PrivateKey::fromPEM (const QString & s, const SecureArray & passphrase = SecureArray(), ConvertResult * result = nullptr, const QString & provider = QString() ) | static |
Импортирует ключ в формате почты с повышенной секретностью (PEM).
Параметры
| s | Строка, содержащая PEM-представление ключа |
| passphrase | Кодовая фраза, которая используется для защиты ключа |
| result | Указатель на ConvertResult, который будет содержать результат импорта, если будет предоставлен |
| provider | Криптопровайдер, который будет использоваться, если требуется конкретный криптопровайдер |
См. также toPEM предоставляет действие, обратное fromPEM, экспортируя ключ в строку в кодировке PEM.
QCA::KeyLoader для асинхронного загрузчика.
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.
fromPEMFile()
| static PrivateKey QCA::PrivateKey::fromPEMFile (const QString & fileName, const SecureArray & passphrase = SecureArray(), ConvertResult * result = nullptr, const QString & provider = QString() ) | static |
Импортирует ключ в формате почты с повышенной секретностью (PEM) из файла.
Параметры
| fileName | Имя (и путь, если требуется) файла, содержащего PEM-представление ключа |
| passphrase | Кодовая фраза, которая используется для защиты ключа |
| result | Указатель на ConvertResult, который будет содержать результат импорта, если будет предоставлен |
| provider | Криптопровайдер, который будет использоваться, если требуется конкретный криптопровайдер |
См. также toPEMFile предоставляет действие, обратное fromPEMFile,
fromPEM, который позволяет импорт из строки,
QCA::KeyLoader для асинхронного загрузчика.
Примечание.
есть также конструктор, позволяющий создавать ключ напрямую.
Эта синхронная операция может потребовать обработки событий, поэтому её нельзя вызывать из того же потока, что и EventHandler.