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

Публичные типы
| enum | OperatingMode { Common , ROUserPKCS11 , RWUserPKCS11 } |
| enum | Type { System , User , Application , SmartCard } |
Сигналы
| void | entryRemoved (bool success) |
| void | entryWritten (const QString &entryId) |
| void | unavailable () |
| void | updated () |
Публичные функции
| QList<KeyStoreEntry > | entryList () const |
| bool | holdsIdentities () const |
| bool | holdsTrustedCertificates () const |
| QString | id () const |
| bool | isReadOnly () const |
| bool | isValid () const |
| KeyStore (const QString &id, KeyStoreManager *keyStoreManager) | |
| QString | name () const |
| OperatingMode | operatingMode () const |
| bool | removeEntry (const QString &id) |
| void | startAsynchronousMode () |
| bool | switchOperatingMode (OperatingMode mode) |
| Type | type () const |
| QString | writeEntry (const Certificate &cert) |
| QString | writeEntry (const CRL &crl) |
| QString | writeEntry (const KeyBundle &kb) |
Публичные функции, унаследованные от 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 |
Дружественные функции и классы
| class | KeyStoreManagerPrivate |
| class | KeyStorePrivate |
Дополнительные унаследованные члены
Защищённые функции, унаследованные от QCA::Algorithm
| Algorithm () |
| Algorithm (const QString &type, const QString &provider) |
Подробное описание
Объект хранилища ключей общего назначения.
Примеры использования:
systemstore: Системные доверенные сертификаты.accepted self-signed: Доверенные сертификаты приложения.apple keychain: Идентификаторы пользователей.smartcard: Идентификаторы смарт-карт.
Примечание.
- Может быть несколько объектов
KeyStore, ссылающихся на один и тот же идентификатор. - Когда создаётся
KeyStore, оно обращается к заданному идентификатору (deviceId) и внутреннемуcontextId. Если контекст исчезает,KeyStoreстановится недействительным (isValid() ==false), и испускается unavailable(). Даже если устройство позже появится снова,KeyStoreостанется недействительным. Для повторного использования устройства необходимо будет создать новыйKeyStore.
Описание перечислений
Type
| enum QCA::KeyStore::Type |
Тип хранилища ключей.
| System | Такие объекты, как корневые сертификаты |
| User | Объекты, например, как Apple Keychain, KDE Wallet |
| Application | Для кеширования принятых самоподписанных сертификатов |
| SmartCard | Для смарт-карт |
OperatingMode
| enum QCA::KeyStore::OperatingMode |
Режим работы хранилища ключей.
| Common | не особый режим работы хранилища ключей |
| ROUserPKCS11 | Специальный режим PKCS11 для работы в сеансе только для чтения. |
| RWUserPKCS11 | Специальный режим PKCS11 для работы в сеансе чтения-записи. |
Описание конструкторов и деструктора
KeyStore()
| QCA::KeyStore::KeyStore (const QString & id, KeyStoreManager * keyStoreManager ) |
Получает конкретный KeyStore.
Параметры
| id | Идентификация хранилища ключей |
| keyStoreManager | Родительский менеджер для этого хранилища ключей |
Описание методов
isValid()
| bool QCA::KeyStore::isValid () const |
Проверяет, действителен ли
KeyStore.
Возвращает true, если KeyStore
действителен.
type()
| Type QCA::KeyStore::type () const |
Тип KeyStore.
name()
| QString QCA::KeyStore::name () const |
Имя, связанное с этим KeyStore.
id()
| QString QCA::KeyStore::id () const |
ID, связанное с этим KeyStore.
isReadOnly()
| bool QCA::KeyStore::isReadOnly () const |
Проверяет, является ли KeyStore
открытым для записи.
Возвращает true, если KeyStore доступен
только для чтения.
startAsynchronousMode()
| void QCA::KeyStore::startAsynchronousMode () |
Включает асинхронный режим для этого экземпляра
KeyStore.
Обычно entryList() и writeEntry() блокируют вызовы. Однако, если вызывается startAsynchronousMode(), эти функции немедленно возвращаются. entryList() вернётся с последними известными записями или пустым списком, если они еще не известны (в этом режиме updated() будет испущен, как только начальные записи станут известны, даже если хранилище фактически не было изменено. writeEntry() всегда будет возвращать пустую строку, а сигнал entryWritten() указывает результат записи.
entryList()
| QList<KeyStoreEntry > QCA::KeyStore::entryList () const |
Список объектов KeyStoreEntry в этом хранилище.
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому ее нельзя вызывать из того же потока, что и EventHandler (это не проблема, если включён асинхронный режим).
См. также startAsynchronousMode
holdsTrustedCertificates()
| bool QCA::KeyStore::holdsTrustedCertificates () const |
Проверяет, содержит ли KeyStore
доверенные сертификаты (и CRL).
holdsIdentities()
| bool QCA::KeyStore::holdsIdentities () const |
Проверяет, содержит ли KeyStore
идентификационные данные (например,
KeyBundle).
writeEntry() [1/3]
| QString QCA::KeyStore::writeEntry (const KeyBundle & kb) |
Добавляет запись в KeyStore.
Возвращает entryId внесённой записи или пустую строку в случае ошибки.
Параметры
| kb | KeyBundle для добавления в KeyStore |
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому ее нельзя вызывать из того же потока, что и EventHandler (это не проблема, если включён асинхронный режим).
См. также startAsynchronousMode
writeEntry() [2/3]
| QString QCA::KeyStore::writeEntry (const Certificate & cert) |
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции только тем, какие аргументы она принимает.
Параметры
| cert | Certificate для добавления в KeyStore |
writeEntry() [3/3]
| QString QCA::KeyStore::writeEntry (const CRL & crl) |
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции только тем, какие аргументы она принимает.
Параметры
| crl | CRL для добавления в KeyStore |
removeEntry()
| bool QCA::KeyStore::removeEntry (const QString & id) |
Удаляет указанный KeyStoreEntry из этого
KeyStore.
Параметры
| id | Идентификатор удаляемой записи |
Примечание.
Эта синхронная операция может потребовать обработки событий, поэтому ее нельзя вызывать из того же потока, что и EventHandler (это не проблема, если включён асинхронный режим).
См. также startAsynchronousMode
operatingMode()
| OperatingMode QCA::KeyStore::operatingMode () const |
Текущий режим работы KeyStore.
switchOperatingMode()
| bool QCA::KeyStore::switchOperatingMode (OperatingMode mode) |
Переключение режима работы
KeyStore.
updated
| void QCA::KeyStore::updated () | signal |
Сигнал испускается, когда KeyStore
изменяется.
Это происходит, если записи добавляются, удаляются или изменяются в этом
KeyStore, включая изменения в
доступности записей.
unavailable
| void QCA::KeyStore::unavailable () | signal |
Сигнал испускается, когда KeyStore
становится недоступным.
entryWritten
| void QCA::KeyStore::entryWritten (const QString & entryId) | signal |
Сигнал испускается, когда запись была внесена в асинхронном режиме.
Параметры
| entryId | Новый идентификатор записи в случае успеха или пустая строка, если запись не удалась |
entryRemoved
| void QCA::KeyStore::entryRemoved (bool success) | signal |
Сигнал испускается, когда запись была удалена, в асинхронном режиме.
Параметры
| success | Указывает, было ли удаление успешным (true) или нет (false). |