Класс PKIXCertPathChecker
- Все реализуемые интерфейсы:
-
Cloneable,CertPathChecker
- Прямые известные подклассы:
PKIXRevocationChecker
public abstract class PKIXCertPathChecker extends Object implements CertPathChecker, Cloneable
X509Certificate. Можно создать конкретную реализацию класса PKIXCertPathChecker, чтобы расширить алгоритм проверки сертификационного пути PKIX. Например, реализация может проверять и обрабатывать критические частные расширения каждого сертификата в сертификационном пути.
Экземпляры PKIXCertPathChecker передаются в качестве параметров, используя методы setCertPathCheckers или addCertPathChecker класса PKIXParameters и PKIXBuilderParameters. Каждый из методов check PKIXCertPathChecker будет вызываться по очереди для каждого сертификата, обрабатываемого реализацией PKIX CertPathValidator или CertPathBuilder.
Класс PKIXCertPathChecker может вызываться несколько раз для последовательных сертификатов в сертификационном пути. Ожидается, что конкретные подклассы будут сохранять все внутреннее состояние, которое может потребоваться для проверки последовательных сертификатов. Метод init используется для инициализации внутреннего состояния проверяющего, чтобы можно было проверить сертификаты нового сертификационного пути. В случае со stateful реализацией, необходимо переопределить метод clone, если это необходимо, чтобы позволить PKIX CertPathBuilder эффективно возвращаться назад и пробовать другие пути. В этих ситуациях CertPathBuilder может восстановить предыдущие состояния проверки пути, восстанавливая клонированные PKIXCertPathChecker.
Порядок представления сертификатов PKIXCertPathChecker может быть либо в прямом направлении (от целевого сертификата к наиболее доверенному удостоверяющему центру), либо в обратном направлении (от наиболее доверенного удостоверяющего центра к целевому сертификату). Реализация PKIXCertPathChecker обязана поддерживать обратную проверку (возможность выполнения проверок при представлении сертификатов в обратном направлении) и может поддерживать прямую проверку (возможность выполнения проверок при представлении сертификатов в прямом направлении). Метод isForwardCheckingSupported указывает, поддерживается ли прямая проверка.
Дополнительные входные параметры, необходимые для выполнения проверки, могут быть указаны через конструкторы конкретных реализаций этого класса.
Доступ к нескольким потокам
Если не указано иное, методы, определенные в этом классе, не потокобезопасны. Несколько потоков, которым необходимо получить одновременный доступ к одному объекту, должны синхронизироваться между собой и обеспечить необходимое блокирование. Несколько потоков, каждый из которых манипулирует отдельными объектами, не требуют синхронизации.
- С:
- 1.4
- См. также:
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Конструктор по умолчанию. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
check |
Выполняет проверку(и) для указанного сертификата, используя внутреннее состояние. |
abstract void |
check |
Выполняет проверку(и) для указанного сертификата, используя внутреннее состояние, и удаляет любые критические расширения, которые обрабатывает, из указанного набора строк OID, представляющих неразрешенные критические расширения. |
Object |
clone() |
Возвращает клон этого объекта. |
abstract Set |
getSupportedExtensions() |
Возвращает неизменяемый набор расширений сертификатов X.509, которые поддерживаются этим PKIXCertPathChecker, (т.е. распознаются, могут быть обработаны), или null, если расширения не поддерживаются. |
abstract void |
init |
Инициализирует внутреннее состояние этого PKIXCertPathChecker. |
abstract boolean |
isForwardCheckingSupported() |
Указывает, поддерживается ли прямая проверка. |
Подробное описание конструкторов
PKIXCertPathChecker
protected PKIXCertPathChecker()
Подробное описание методов
init
public abstract void init(boolean forward) throws CertPathValidatorException
PKIXCertPathChecker. Флаг forward указывает порядок передачи сертификатов методу check (прямой или обратный). Реализация PKIXCertPathChecker должна поддерживать обратную проверку и может поддерживать прямую проверку.
- Определено в:
-
initв интерфейсеCertPathChecker - Параметры:
-
forward- порядок представления сертификатов методуcheck. Еслиtrue, сертификаты представляются от целевого к наиболее доверенному CA (прямое); еслиfalse, от наиболее доверенного CA к целевому (обратное). - Исключения:
-
CertPathValidatorException- если данныйPKIXCertPathCheckerне может проверять сертификаты в указанном порядке; оно никогда не должно выбрасываться, если флаг forward false, так как обратная проверка должна поддерживаться
isForwardCheckingSupported
public abstract boolean isForwardCheckingSupported()
PKIXCertPathChecker выполнять свои проверки, когда сертификаты передаются методу check в прямом направлении (от целевого к наиболее доверенному CA).- Определено в:
-
isForwardCheckingSupportedв интерфейсеCertPathChecker - Возвращает:
-
trueесли прямая проверка поддерживается,falseв противном случае
getSupportedExtensions
public abstract Set<String> getSupportedExtensions()
PKIXCertPathChecker, (т.е. распознает, может обработать), или null если расширения не поддерживаются. Каждый элемент набора является String , представляющим идентификатор объекта (OID) поддерживаемого расширения X.509. OID представлен набором неотрицательных целых чисел, разделенных точками.
Все расширения сертификатов X.509, которые PKIXCertPathChecker может потенциально обработать, должны быть включены в набор.
- Возвращает:
- неизменяемый набор OID расширений X.509 (в формате
String) поддерживаемых этимPKIXCertPathChecker, илиnullесли расширения не поддерживаются
check
public abstract void check(Certificate cert, Collection<String> unresolvedCritExts) throws CertPathValidatorException
init.- Параметры:
-
cert- проверяемыйCertificate -
unresolvedCritExts- набор строк OID, представляющих текущий набор неразрешенных критических расширений - Исключения:
-
CertPathValidatorException- если указанный сертификат не проходит проверку
check
public void check(Certificate cert) throws CertPathValidatorException
init. Эта реализация вызывает check(cert, java.util.Collections.<String>emptySet()).
- Определено в:
-
checkв интерфейсеCertPathChecker - Параметры:
-
cert- проверяемыйCertificate - Исключения:
-
CertPathValidatorException- если указанный сертификат не проходит проверку
clone
public Object clone()
Object.clone(). Все подклассы, которые поддерживают состояние, должны поддерживать и переопределять этот метод, если необходимо.- Переопределяет:
-
cloneв классеObject - Возвращает:
- копию этого
PKIXCertPathChecker - См. также:
© 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/PKIXCertPathChecker.html