Класс RSAPrivateKey
Публичные функции
BigInteger |
d () const |
BigInteger |
e () const |
BigInteger |
n () const |
BigInteger |
p () const |
BigInteger |
q () const |
|
RSAPrivateKey () |
|
RSAPrivateKey (const BigInteger &n, const BigInteger &e, const BigInteger &p, const BigInteger &q, const BigInteger &d, const QString &provider=QString()) |
|
RSAPrivateKey (const QByteArray &blob, const QString &algorithm, const PrivateKey &unwrappingKey, const QString &provider=QString()) |
|
RSAPrivateKey (const QByteArray &blob, const QString &algorithm, const SymmetricKey &unwrappingKey, const QString &provider=QString()) |
Публичные функции, унаследованные от QCA::PrivateKey
bool |
canDecrypt () const |
bool |
canEncrypt () const |
bool |
canSign () const |
bool |
decrypt (const SecureArray &in, SecureArray *out, EncryptionAlgorithm alg) |
SymmetricKey |
deriveKey (const PublicKey &theirs) |
SecureArray |
encrypt (const SecureArray &a, EncryptionAlgorithm alg) |
int |
maximumEncryptSize (EncryptionAlgorithm alg) const |
PrivateKey & |
operator= (const PrivateKey &from) |
|
PrivateKey () |
|
PrivateKey (const PrivateKey &from) |
|
PrivateKey (const QString &fileName, const SecureArray &passphrase=SecureArray()) |
QByteArray |
signature () |
QByteArray |
signMessage (const MemoryRegion &a, SignatureAlgorithm alg, SignatureFormat format=DefaultFormat) |
void |
startSign (SignatureAlgorithm alg, SignatureFormat format=DefaultFormat) |
SecureArray |
toDER (const SecureArray &passphrase=SecureArray(), PBEAlgorithm pbe=PBEDefault) const |
DHPrivateKey |
toDH () const |
DSAPrivateKey |
toDSA () const |
ECPrivateKey |
toEC () const |
GOSTPrivateKey |
toGOST () const |
QString |
toPEM (const SecureArray &passphrase=SecureArray(), PBEAlgorithm pbe=PBEDefault) const |
bool |
toPEMFile (const QString &fileName, const SecureArray &passphrase=SecureArray(), PBEAlgorithm pbe=PBEDefault) const |
RSAPrivateKey |
toRSA () const |
void |
update (const MemoryRegion &a) |
QByteArray |
wrap (const QString &algorithm, const PublicKey &wrappingKey) |
QByteArray |
wrap (const QString &algorithm, const SymmetricKey &wrappingKey) |
Публичные функции, унаследованные от QCA::PKey
Публичные функции, унаследованные от QCA::Algorithm
Дополнительные унаследованные члены
Публичные типы, унаследованные от QCA::PKey
Статические публичные функции, унаследованные от QCA::PrivateKey
Статические публичные функции, унаследованные от QCA::PKey
Защищённые функции, унаследованные от QCA::PrivateKey
Защищённые функции, унаследованные от QCA::PKey
Защищённые функции, унаследованные от QCA::Algorithm
Подробное описание
Закрытый ключ RSA.
Описание конструкторов и деструктора
RSAPrivateKey() [1/4]
QCA::RSAPrivateKey::RSAPrivateKey () |
Генерирует пустой закрытый ключ RSA.
RSAPrivateKey() [2/4]
Генерирует закрытый ключ RSA на основе указанных параметров.
Параметры
n |
Значение публичного ключа |
e |
Экспонента публичного ключа |
p |
Одно из двух выбранных простых чисел |
q |
Второе из двух выбранных простых чисел |
d |
Число, обратное экспоненте, модуль (p-1)(q-1) |
provider |
Криптопровайдер, который будет использоваться, если требуется конкретный криптопровайдер |
RSAPrivateKey() [3/4]
QCA::RSAPrivateKey::RSAPrivateKey (const QByteArray & blob, const QString & algorithm, const SymmetricKey & unwrappingKey, const QString & provider = QString() ) |
Извлекает (дешифрует) приватный ключ RSA из заданного массива байтов.
Параметры
blob |
Байты, возвращаемые функцией wrap() |
См. также PrivateKey::wrap()
для обертывания функциональности.
Параметры
algorithm |
Алгоритм дешифрования должен быть таким же, как и алгоритм шифрования |
unwrappingKey |
SymmetricKey, используемый для извлечения ключа, должен быть таким же, как и ключ для обёртывания. |
provider |
Криптопровайдер, который будет использоваться, если требуется конкретный криптопровайдер |
RSAPrivateKey() [4/4]
QCA::RSAPrivateKey::RSAPrivateKey (const QByteArray & blob, const QString & algorithm, const PrivateKey & unwrappingKey, const QString & provider = QString() ) |
Извлекает (дешифрует) приватный ключ RSA из заданного массива байтов.
Параметры
blob |
Байты, возвращаемые функцией wrap() |
См. также PrivateKey::wrap()
для обертывания функциональности.
Параметры
algorithm |
Алгоритм дешифрования должен быть таким же, как и алгоритм шифрования |
unwrappingKey |
PrivateKey, используемый для излечения ключа, должен быть связан с обертыванием PublicKey. |
provider |
Криптопровайдер, который будет использоваться, если требуется конкретный криптопровайдер |
Описание методов
n()
Значение публичного ключа.
Это значение является фактическим значением открытого ключа (произведение p
и q
, случайных
простых чисел, используемых для генерации ключа RSA), также известное как открытый модуль.
e()
Экспонента публичного ключа.
Это значение представляет собой экспоненту, выбранную на шаге генерации оригинального ключа.
p()
Одно из двух случайных простых чисел, используемых для генерации закрытого ключа.
q()
Второе из двух случайных простых чисел, используемых для генерации закрытого ключа.
d()
Число, обратное экспоненте, модуль (p-1)(q-1)
.