Spec-Zone.ru › OpenJDK 21

Класс CertificateFactorySpi

java.lang.Object
java.security.cert.CertificateFactorySpi
public abstract class CertificateFactorySpi extends Object
Этот класс определяет интерфейс поставщика услуг (SPI) для класса CertificateFactory. Все абстрактные методы в этом классе должны быть реализованы каждым поставщиком криптографических услуг, желающим предоставить реализацию фабрики сертификатов для определённого типа сертификатов, например, X.509.

Фабрики сертификатов используются для генерации объектов сертификата, цепочки сертификации (CertPath) и списка отзывов о сертификатах (CRL) из их кодировок.

Фабрика сертификатов для X.509 должна возвращать сертификаты, являющиеся экземплярами java.security.cert.X509Certificate, и CRL, являющиеся экземплярами java.security.cert.X509CRL.

Since:
1.2
See Also:
  • CertificateFactory
  • Certificate
  • X509Certificate
  • CertPath
  • CRL
  • X509CRL

Краткое описание конструкторов

Конструктор Описание
CertificateFactorySpi()
Конструктор для вызова подклассами.

Краткое описание методов

Модификатор и тип Метод Описание
abstract Certificate engineGenerateCertificate(InputStream inStream)
Генерирует объект сертификата и инициализирует его данными, считанными из входного потока inStream.
abstract Collection<? extends Certificate> engineGenerateCertificates(InputStream inStream)
Возвращает (возможно, пустой) набор представлений сертификатов, считанных из указанного входного потока inStream.
CertPath engineGenerateCertPath(InputStream inStream)
Генерирует объект CertPath и инициализирует его данными, считанными из InputStream inStream.
CertPath engineGenerateCertPath(InputStream inStream, String encoding)
Генерирует объект CertPath и инициализирует его данными, считанными из InputStream inStream.
CertPath engineGenerateCertPath(List<? extends Certificate> certificates)
Генерирует объект CertPath и инициализирует его набором List объектов Certificate.
abstract CRL engineGenerateCRL(InputStream inStream)
Генерирует объект списка отзывов о сертификатах (CRL) и инициализирует его данными, считанными из входного потока inStream.
abstract Collection<? extends CRL> engineGenerateCRLs(InputStream inStream)
Возвращает (возможно, пустой) набор представлений CRL, считанных из указанного входного потока inStream.
Iterator<String> engineGetCertPathEncodings()
Возвращает итератор кодировок CertPath , поддерживаемых этой фабрикой сертификатов, с использованием первой кодировки по умолчанию.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

CertificateFactorySpi

public CertificateFactorySpi()
Конструктор для вызова подклассами.

Подробное описание методов

engineGenerateCertificate

public abstract Certificate engineGenerateCertificate(InputStream inStream) throws CertificateException
Генерирует объект сертификата и инициализирует его данными, считанными из потока ввода inStream.

Для использования специализированного формата сертификата, поддерживаемого этой фабрикой сертификатов, возвращаемый объект сертификата можно привести к соответствующему классу сертификата. Например, если эта фабрика сертификатов реализует сертификаты X.509, возвращаемый объект сертификата можно привести к классу X509Certificate.

В случае фабрики сертификатов для сертификатов X.509 сертификат, предоставленный в inStream, должен быть закодирован в DER и может быть предоставлен в двоичном или печатном (Base64) кодировании. Если сертификат предоставлен в кодировании Base64, он должен быть ограничен в начале -----BEGIN CERTIFICATE----- и должен быть ограничен в конце -----END CERTIFICATE-----.

Обратите внимание, что если предоставленный поток ввода не поддерживает mark и reset, этот метод прочитает весь поток ввода. В противном случае каждый вызов этого метода считывает один сертификат, и позиция чтения потока ввода устанавливается на следующий байт после внутреннего маркера конца сертификата. Если данные в потоке ввода не содержат внутреннего маркера конца сертификата (кроме EOF) и после разбора сертификата есть данные, то будет выброшено исключение CertificateException.

Параметры:
inStream - поток ввода с данными сертификата.
Возвращает:
объект сертификата, инициализированный данными из потока ввода.
Исключения:
CertificateException - при ошибках разбора.

engineGenerateCertPath

public CertPath engineGenerateCertPath(InputStream inStream) throws CertificateException
Генерирует объект CertPath и инициализирует его данными, считанными из потока ввода InputStream inStream. Данные предполагаются в кодировании по умолчанию.

Этот метод был добавлен в версию 1.4 Java 2 Platform Standard Edition. Для сохранения обратной совместимости с существующими поставщиками услуг этот метод не может быть abstract и по умолчанию выбрасывает UnsupportedOperationException.

Параметры:
inStream - поток ввода, содержащий данные
Возвращает:
объект CertPath, инициализированный данными из потока ввода InputStream
Исключения:
CertificateException - если при декодировании произошла ошибка
UnsupportedOperationException - если метод не поддерживается
С тех пор:
1.4

engineGenerateCertPath

public CertPath engineGenerateCertPath(InputStream inStream, String encoding) throws CertificateException
Генерирует объект CertPath и инициализирует его данными, считанными из потока ввода InputStream inStream. Данные предполагаются в указанном кодировании.

Этот метод был добавлен в версию 1.4 Java 2 Platform Standard Edition. Для сохранения обратной совместимости с существующими поставщиками услуг этот метод не может быть abstract и по умолчанию выбрасывает UnsupportedOperationException.

Параметры:
inStream - поток ввода, содержащий данные
encoding - кодирование, используемое для данных
Возвращает:
объект CertPath, инициализированный данными из потока ввода InputStream
Исключения:
CertificateException - если при декодировании произошла ошибка или запрошенное кодирование не поддерживается
UnsupportedOperationException - если метод не поддерживается
С тех пор:
1.4

engineGenerateCertPath

public CertPath engineGenerateCertPath(List<? extends Certificate> certificates) throws CertificateException
Генерирует объект CertPath и инициализирует его списком List сертификатов Certificate.

Предоставленные сертификаты должны быть типа, поддерживаемого CertificateFactory . Они будут скопированы из предоставленного объекта List.

Этот метод был добавлен в версию 1.4 Java 2 Platform Standard Edition. Для сохранения обратной совместимости с существующими поставщиками услуг этот метод не может быть abstract и по умолчанию выбрасывает UnsupportedOperationException.

Параметры:
certificates - список List сертификатов Certificate
Возвращает:
объект CertPath, инициализированный предоставленным списком сертификатов
Исключения:
CertificateException - если произошла ошибка
UnsupportedOperationException - если метод не поддерживается
С тех пор:
1.4

engineGetCertPathEncodings

public Iterator<String> engineGetCertPathEncodings()
Возвращает итератор поддерживаемых кодирований CertPath для этой фабрики сертификатов, при этом кодирование по умолчанию идёт первым. См. раздел "Кодирования CertPath" в Спецификации Java Security Standard Algorithm Names для получения информации о стандартных именах кодирования.

Попытки изменить возвращаемый итератор через метод remove приводят к UnsupportedOperationException.

Этот метод был добавлен в версию 1.4 Java 2 Platform Standard Edition. Для сохранения обратной совместимости с существующими поставщиками услуг этот метод не может быть abstract и по умолчанию выбрасывает UnsupportedOperationException.

Возвращает:
итератор по именам поддерживаемых кодирований CertPath (как строки)
Исключения:
UnsupportedOperationException - если метод не поддерживается
С тех пор:
1.4

engineGenerateCertificates

public abstract Collection<? extends Certificate> engineGenerateCertificates(InputStream inStream) throws CertificateException
Возвращает (возможно пустой) набор просмотренных сертификатов, считанных из предоставленного потока ввода inStream.

Для использования специализированного формата сертификатов, поддерживаемого этой фабрикой сертификатов, каждый элемент возвращаемого набора просмотренных сертификатов может быть приведён к соответствующему классу сертификата. Например, если эта фабрика сертификатов реализует сертификаты X.509, элементы возвращаемого набора просмотренных сертификатов могут быть приведённы к классу X509Certificate.

В случае фабрики сертификатов для сертификатов X.509 inStream может содержать один DER-закодированный сертификат в форматах, описанных для generateCertificate. Кроме того, inStream может содержать цепочку сертификатов PKCS#7. Это объект PKCS#7 SignedData, с единственным существенным полем certificates. В частности, подпись и содержимое игнорируются. Этот формат позволяет загрузить несколько сертификатов одновременно. Если сертификаты отсутствуют, возвращается пустой набор просмотренных сертификатов.

Обратите внимание, что если предоставленный поток ввода не поддерживает mark и reset, этот метод прочитает весь поток ввода.

Параметры:
inStream - поток ввода с сертификатами.
Возвращает:
набор просмотренных сертификатов (возможно пустой) объектов java.security.cert.Certificate, инициализированных данными из потока ввода.
Исключения:
CertificateException - при ошибках разбора.

engineGenerateCRL

public abstract CRL engineGenerateCRL(InputStream inStream) throws CRLException
Генерирует объект списка отозванных сертификатов (CRL) и инициализирует его данными, считанными из потока ввода inStream.

Для использования специализированного формата CRL, поддерживаемого этой фабрикой сертификатов, возвращаемый объект CRL можно привести к соответствующему классу CRL. Например, если эта фабрика сертификатов реализует X.509 CRL, возвращаемый объект CRL можно привести к классу X509CRL.

Обратите внимание, что если предоставленный поток ввода не поддерживает mark и reset, этот метод прочитает весь поток ввода. В противном случае каждый вызов этого метода считывает один CRL, и позиция чтения потока ввода устанавливается на следующий байт после внутреннего маркера конца CRL. Если данные в потоке ввода не содержат внутреннего маркера конца CRL (кроме EOF) и после разбора CRL есть данные, то будет выброшено исключение CRLException.

Параметры:
inStream - поток ввода с данными CRL.
Возвращает:
объект CRL, инициализированный данными из потока ввода.
Исключения:
CRLException - при ошибках разбора.

engineGenerateCRLs

public abstract Collection<? extends CRL> engineGenerateCRLs(InputStream inStream) throws CRLException
Возвращает (возможно, пустой) набор представлений CRL, считанных из заданного потока ввода inStream.

Для использования специализированного формата CRL, поддерживаемого этим фабричным объектом сертификатов, каждый элемент возвращаемого набора представлений можно привести к соответствующему классу CRL. Например, если этот фабричный объект реализует X.509 CRL, элементы возвращаемого набора можно привести к классу X509CRL.

В случае фабричного объекта для X.509 CRL, inStream может содержать один закодированный в DER CRL. Кроме того, inStream может содержать набор CRL PKCS#7. Это объект PKCS#7 SignedData, единственным существенным полем которого является crls. В частности, подпись и содержимое игнорируются. Этот формат позволяет загружать сразу несколько CRL. Если CRL отсутствуют, возвращается пустой набор.

Обратите внимание, что если заданный поток ввода не поддерживает mark и reset, этот метод прочитает весь поток ввода.

Parameters:
inStream - поток ввода с CRL.
Returns:
набор (возможно, пустой) представлений объектов java.security.cert.CRL, инициализированных данными из потока ввода.
Throws:
CRLException - при ошибках парсинга.

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/security/cert/CertificateFactorySpi.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API