Spec-Zone.ru › OpenJDK 27

Класс PKIXParameters

java.lang.Object
java.security.cert.PKIXParameters
Все реализуемые интерфейсы:
Cloneable, CertPathParameters
Прямые известные подклассы:
PKIXBuilderParameters
public class PKIXParameters extends Object implements CertPathParameters
Параметры, используемые в качестве входных данных для алгоритма PKIX CertPathValidator.

Средство PKIX CertPathValidator использует эти параметры для проверки CertPath в соответствии с алгоритмом проверки сертификационного пути PKIX.

Чтобы создать объект PKIXParameters, приложение должно указать один или несколько наиболее доверенных центров сертификации, определённых алгоритмом проверки сертификационного пути PKIX. Наиболее доверенные центры сертификации можно указать с помощью одного из двух конструкторов. Приложение может вызвать PKIXParameters(Set), указав Set объектов TrustAnchor, каждый из которых задаёт наиболее доверенный центр сертификации. В качестве альтернативы приложение может вызвать PKIXParameters(KeyStore), указав экземпляр KeyStore, содержащий записи доверенных сертификатов, каждая из которых будет считаться наиболее доверенным центром сертификации.

После создания объекта PKIXParameters можно задать другие параметры (например, вызвав setInitialPolicies или setDate), а затем передать PKIXParameters вместе с проверяемым CertPath в CertPathValidator.validate.

Для любого не заданного параметра (или параметра, которому присвоено значение null) будет установлено значение по умолчанию. Значение по умолчанию для параметра date — null, обозначающее текущее время проверки пути. Для остальных параметров по умолчанию используются наименее ограничивающие значения.

Параллельный доступ

Если не указано иное, методы, определённые в этом классе, не являются потокобезопасными. Несколько потоков, которым требуется одновременный доступ к одному объекту, должны синхронизировать свои действия и обеспечивать необходимую блокировку. Потокам, каждый из которых работает с отдельным объектом, синхронизация не требуется.

Начиная с:
1.4
См. также:
  • CertPathValidator

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

Конструктор Описание
PKIXParameters(KeyStore keystore)
Создаёт экземпляр PKIXParameters, заполняя набор наиболее доверенных центров сертификации записями доверенных сертификатов, содержащимися в указанном KeyStore.
PKIXParameters(Set<TrustAnchor> trustAnchors)
Создаёт экземпляр PKIXParameters с указанным Set наиболее доверенных центров сертификации.

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

Модификатор и тип Метод Описание
void addCertPathChecker(PKIXCertPathChecker checker)
Добавляет PKIXCertPathChecker в список средств проверки сертификационного пути.
void addCertStore(CertStore store)
Добавляет CertStore в конец списка CertStore, используемых для поиска сертификатов и списков отзыва сертификатов.
Object clone()
Создаёт копию этого объекта PKIXParameters.
List<PKIXCertPathChecker> getCertPathCheckers()
Возвращает List средств проверки сертификационного пути.
List<CertStore> getCertStores()
Возвращает неизменяемый List объектов CertStore, используемых для поиска сертификатов и списков отзыва сертификатов.
Date getDate()
Возвращает время, на которое следует определять срок действия сертификационного пути.
Set<String> getInitialPolicies()
Возвращает неизменяемый Set идентификаторов начальных политик (строк OID), указывающий, что любая из этих политик приемлема для пользователя сертификата при обработке сертификационного пути.
boolean getPolicyQualifiersRejected()
Возвращает значение флага PolicyQualifiersRejected.
String getSigProvider()
Возвращает имя поставщика подписи или null, если оно не задано.
CertSelector getTargetCertConstraints()
Возвращает обязательные ограничения для целевого сертификата.
Set<TrustAnchor> getTrustAnchors()
Возвращает неизменяемый Set наиболее доверенных центров сертификации.
boolean isAnyPolicyInhibited()
Проверяет, следует ли обрабатывать OID любой политики, если он включён в сертификат.
boolean isExplicitPolicyRequired()
Проверяет, требуется ли явная политика.
boolean isPolicyMappingInhibited()
Проверяет, запрещено ли сопоставление политик.
boolean isRevocationEnabled()
Проверяет значение флага RevocationEnabled.
void setAnyPolicyInhibited(boolean val)
Задаёт состояние, определяющее, следует ли обрабатывать OID любой политики, если он включён в сертификат.
void setCertPathCheckers(List<PKIXCertPathChecker> checkers)
Задаёт List дополнительных средств проверки сертификационного пути.
void setCertStores(List<CertStore> stores)
Задаёт список CertStore, используемых для поиска сертификатов и списков отзыва сертификатов.
void setDate(Date date)
Задаёт время, на которое следует определять срок действия сертификационного пути.
void setExplicitPolicyRequired(boolean val)
Задаёт флаг ExplicitPolicyRequired.
void setInitialPolicies(Set<String> initialPolicies)
Задаёт Set идентификаторов начальных политик (строк OID), указывающий, что любая из этих политик приемлема для пользователя сертификата при обработке сертификационного пути.
void setPolicyMappingInhibited(boolean val)
Задаёт флаг PolicyMappingInhibited.
void setPolicyQualifiersRejected(boolean qualifiersRejected)
Задаёт флаг PolicyQualifiersRejected.
void setRevocationEnabled(boolean val)
Задаёт флаг RevocationEnabled.
void setSigProvider(String sigProvider)
Задаёт имя поставщика подписи.
void setTargetCertConstraints(CertSelector selector)
Задаёт обязательные ограничения для целевого сертификата.
void setTrustAnchors(Set<TrustAnchor> trustAnchors)
Задаёт Set наиболее доверенных центров сертификации.
String toString()
Возвращает форматированную строку с описанием параметров.

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

equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
boolean equals(Object obj)
Показывает, равен ли этот объект другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии.
Финализация устарела и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ждать пробуждения, обычно в результате вызова метода notify или прерывания потока.
final void wait(long timeoutMillis)
Заставляет текущий поток ждать пробуждения, обычно в результате вызова метода notify или прерывания потока, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ждать пробуждения, обычно в результате вызова метода notify или прерывания потока, либо до истечения заданного промежутка реального времени.

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

PKIXParameters

public PKIXParameters(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
Создает экземпляр PKIXParameters с указанным Set наиболее доверенных центров сертификации. Каждый элемент набора — это TrustAnchor.

Обратите внимание, что Set копируется для защиты от последующих изменений.

Параметры:
trustAnchors — Set TrustAnchorов
Исключения:
InvalidAlgorithmParameterException — если указанный Set пуст (trustAnchors.isEmpty() == true)
NullPointerException — если указанный Set равен null
ClassCastException — если элементы Set имеют тип, отличный от java.security.cert.TrustAnchor

PKIXParameters

public PKIXParameters(KeyStore keystore) throws KeyStoreException, InvalidAlgorithmParameterException
Создает экземпляр PKIXParameters, заполняя набор наиболее доверенных центров сертификации доверенными записями сертификатов, содержащимися в указанном KeyStore. Учитываются только записи хранилища ключей, содержащие доверенные X509Certificates; все остальные типы сертификатов игнорируются.
Параметры:
keystore — KeyStore, из которого будет заполнен набор наиболее доверенных центров сертификации
Исключения:
KeyStoreException — если хранилище ключей не было инициализировано
InvalidAlgorithmParameterException — если хранилище ключей не содержит ни одной доверенной записи сертификата
NullPointerException — если хранилище ключей null

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

getTrustAnchors

public Set<TrustAnchor> getTrustAnchors()
Возвращает неизменяемый Set наиболее доверенных центров сертификации.
Возвращает:
неизменяемый Set TrustAnchorов (никогда не null)
См. также:
  • setTrustAnchors(Set)

setTrustAnchors

public void setTrustAnchors(Set<TrustAnchor> trustAnchors) throws InvalidAlgorithmParameterException
Задает Set наиболее доверенных центров сертификации.

Обратите внимание, что Set копируется для защиты от последующих изменений.

Параметры:
trustAnchors — Set TrustAnchorов
Исключения:
InvalidAlgorithmParameterException — если указанный Set пуст (trustAnchors.isEmpty() == true)
NullPointerException — если указанный Set равен null
ClassCastException — если элементы набора имеют тип, отличный от java.security.cert.TrustAnchor
См. также:
  • getTrustAnchors()

getInitialPolicies

public Set<String> getInitialPolicies()
Возвращает неизменяемый Set идентификаторов начальных политик (строк OID), указывающий, что любая из этих политик была бы приемлема для пользователя сертификата при обработке пути сертификации. По умолчанию возвращается пустой Set, что означает, что приемлема любая политика.
Возвращает:
неизменяемый Set начальных OID политик в формате String или пустой Set (означающий, что приемлема любая политика). Никогда не возвращает null.
См. также:
  • setInitialPolicies(Set)

setInitialPolicies

public void setInitialPolicies(Set<String> initialPolicies)
Задает Set идентификаторов начальных политик (строк OID), указывающий, что любая из этих политик была бы приемлема для пользователя сертификата при обработке пути сертификации. По умолчанию приемлема любая политика (то есть все политики), поэтому пользователю, который хочет разрешить любую политику, не нужно вызывать этот метод; также его можно вызвать с пустым Set (или null).

Обратите внимание, что Set копируется для защиты от последующих изменений.

Параметры:
initialPolicies — Set начальных OID политик в формате String (или null)
Исключения:
ClassCastException — если элементы набора имеют тип, отличный от String
См. также:
  • getInitialPolicies()

setCertStores

public void setCertStores(List<CertStore> stores)
Задает список CertStoreов, используемых для поиска сертификатов и списков отзыва сертификатов (CRL). Может быть null; в этом случае CertStoreы использоваться не будут. CertStoreы, расположенные в начале списка, могут иметь приоритет над теми, что находятся дальше.

Обратите внимание, что List копируется для защиты от последующих изменений.

Параметры:
stores — List CertStoreов (или null)
Исключения:
ClassCastException — если элементы списка имеют тип, отличный от java.security.cert.CertStore
См. также:
  • getCertStores()

addCertStore

public void addCertStore(CertStore store)
Добавляет CertStore в конец списка CertStoreов, используемых для поиска сертификатов и списков отзыва сертификатов (CRL).
Параметры:
store — CertStore для добавления. Если null, хранилище игнорируется (не добавляется в список).

getCertStores

public List<CertStore> getCertStores()
Возвращает неизменяемый List CertStoreов, используемых для поиска сертификатов и списков отзыва сертификатов (CRL).
Возвращает:
неизменяемый List CertStoreов (может быть пустым, но никогда не null)
См. также:
  • setCertStores(List)

setRevocationEnabled

public void setRevocationEnabled(boolean val)
Задает флаг RevocationEnabled. Если этот флаг имеет значение true, будет использоваться механизм проверки отзыва по умолчанию базового поставщика службы PKIX, если только PKIXRevocationChecker не передан в качестве CertPathChecker (дополнительные сведения см. ниже). Если этот флаг имеет значение false, механизм проверки отзыва по умолчанию будет отключен (не будет использоваться).

При создании объекта PKIXParameters этому флагу присваивается значение true. Эта настройка отражает наиболее распространенную стратегию проверки отзыва, поскольку каждый поставщик службы должен поддерживать проверку отзыва, чтобы соответствовать PKIX. Приложениям со сложными требованиями следует задать этому флагу значение false, если использовать механизм проверки отзыва по умолчанию поставщика службы PKIX нецелесообразно или если требуется использовать альтернативный механизм проверки отзыва (вызвав также метод addCertPathChecker или setCertPathCheckers).

Обратите внимание: если PKIXRevocationChecker передается в качестве параметра через метод addCertPathChecker или setCertPathCheckers, он будет использоваться для проверки отзыва независимо от значения флага RevocationEnabled.

Параметры:
val — новое значение флага RevocationEnabled

isRevocationEnabled

public boolean isRevocationEnabled()
Проверяет флаг RevocationEnabled. Если этот флаг имеет значение true, будет использоваться механизм проверки отзыва по умолчанию базового поставщика службы PKIX, если только PKIXRevocationChecker не передан в качестве CertPathChecker. Если этот флаг имеет значение false, механизм проверки отзыва по умолчанию будет отключен (не будет использоваться). Дополнительные сведения о задании значения этого флага см. в методе setRevocationEnabled.
Возвращает:
текущее значение флага RevocationEnabled

setExplicitPolicyRequired

public void setExplicitPolicyRequired(boolean val)
Задает флаг ExplicitPolicyRequired. Если этот флаг имеет значение true, приемлемая политика должна быть явно указана в каждом сертификате. По умолчанию флаг ExplicitPolicyRequired имеет значение false.
Параметры:
val — true, если требуется явная политика, и false в противном случае

isExplicitPolicyRequired

public boolean isExplicitPolicyRequired()
Проверяет, требуется ли явная политика. Если этот флаг имеет значение true, приемлемая политика должна быть явно указана в каждом сертификате. По умолчанию флаг ExplicitPolicyRequired имеет значение false.
Возвращает:
true, если требуется явная политика, и false в противном случае

setPolicyMappingInhibited

public void setPolicyMappingInhibited(boolean val)
Задает флаг PolicyMappingInhibited. Если этот флаг имеет значение true, сопоставление политик запрещено. По умолчанию сопоставление политик не запрещено (флаг имеет значение false).
Параметры:
val — true, если сопоставление политик требуется запретить, и false в противном случае

isPolicyMappingInhibited

public boolean isPolicyMappingInhibited()
Проверяет, запрещено ли сопоставление политик. Если этот флаг имеет значение true, сопоставление политик запрещено. По умолчанию сопоставление политик не запрещено (флаг имеет значение false).
Возвращает:
true, если сопоставление политик запрещено, и false в противном случае

setAnyPolicyInhibited

public void setAnyPolicyInhibited(boolean val)
Задает состояние, определяющее, следует ли обрабатывать OID политики anyPolicy, если он включен в сертификат. По умолчанию обработка OID политики anyPolicy не запрещена (метод isAnyPolicyInhibited() возвращает false).
Параметры:
val — true, если обработку OID политики anyPolicy требуется запретить, и false в противном случае

isAnyPolicyInhibited

public boolean isAnyPolicyInhibited()
Проверяет, следует ли обрабатывать OID политики anyPolicy, если он включен в сертификат.
Возвращает:
true, если обработка OID политики anyPolicy запрещена, и false в противном случае

setPolicyQualifiersRejected

public void setPolicyQualifiersRejected(boolean qualifiersRejected)
Задает флаг PolicyQualifiersRejected. Если этот флаг имеет значение true, сертификаты, содержащие квалификаторы политики в расширении политик сертификата, помеченном как критическое, отклоняются. Если флаг имеет значение false, сертификаты не отклоняются по этой причине.

При создании объекта PKIXParameters этому флагу присваивается значение true. Эта настройка отражает наиболее распространенную (и простую) стратегию обработки квалификаторов политики. Приложениям, которым требуется использовать более сложную политику, следует задать этому флагу значение false.

Обратите внимание, что алгоритм проверки пути сертификации PKIX требует обработки и проверки любого квалификатора политики в расширении политик сертификата, помеченном как критическое. В противном случае путь сертификации должен быть отклонен. Если флаг policyQualifiersRejected имеет значение false, для соответствия PKIX приложение должно самостоятельно проверять все квалификаторы политики таким образом.

Параметры:
qualifiersRejected — новое значение флага PolicyQualifiersRejected
См. также:
  • getPolicyQualifiersRejected()
  • PolicyQualifierInfo

getPolicyQualifiersRejected

public boolean getPolicyQualifiersRejected()
Возвращает флаг PolicyQualifiersRejected. Если этот флаг имеет значение true, сертификаты, содержащие квалификаторы политики в расширении политик сертификата, помеченном как критическое, отклоняются. Если флаг имеет значение false, сертификаты не отклоняются по этой причине.

При создании объекта PKIXParameters этому флагу присваивается значение true. Эта настройка отражает наиболее распространенную (и простую) стратегию обработки квалификаторов политики. Приложениям, которым требуется использовать более сложную политику, следует задать этому флагу значение false.

Возвращает:
текущее значение флага PolicyQualifiersRejected
См. также:
  • setPolicyQualifiersRejected(boolean)

getDate

public Date getDate()
Возвращает момент времени, на который следует определять действительность пути сертификации. Если null, используется текущее время.

Обратите внимание, что возвращаемый Date копируется для защиты от последующих изменений.

Возвращает:
Date или null, если значение не задано
См. также:
  • setDate(Date)

setDate

public void setDate(Date date)
Задает момент времени, на который следует определять действительность пути сертификации. Если null, используется текущее время.

Обратите внимание, что указанный здесь Date копируется для защиты от последующих изменений.

Параметры:
date — Date или null для указания текущего времени
См. также:
  • getDate()

setCertPathCheckers

public void setCertPathCheckers(List<PKIXCertPathChecker> checkers)
Задает List дополнительных средств проверки пути сертификации. Если указанный List содержит объект, не являющийся PKIXCertPathChecker, он игнорируется.

Каждое указанное PKIXCertPathChecker выполняет дополнительные проверки сертификата. Обычно это проверки для обработки и проверки закрытых расширений, содержащихся в сертификатах. Каждое PKIXCertPathChecker следует создавать с необходимыми параметрами инициализации для выполнения проверки.

Этот метод позволяет приложениям со сложными требованиями расширять CertPathValidator или CertPathBuilder PKIX. Каждое из указанных PKIXCertPathChecker будет по очереди вызываться CertPathValidator или CertPathBuilder PKIX для каждого обрабатываемого или проверяемого сертификата.

Независимо от того, заданы ли эти дополнительные PKIXCertPathCheckerы, CertPathValidator или CertPathBuilder PKIX должен выполнять все обязательные проверки PKIX для каждого сертификата. Единственное исключение — если флаг RevocationEnabled имеет значение false (см. метод setRevocationEnabled).

Обратите внимание, что указанный здесь List копируется, а каждый PKIXCertPathChecker в списке клонируется для защиты от последующих изменений.

Параметры:
checkers — List PKIXCertPathCheckerов. Может быть null; в этом случае дополнительные средства проверки использоваться не будут.
Исключения:
ClassCastException — если элементы списка имеют тип, отличный от java.security.cert.PKIXCertPathChecker
См. также:
  • getCertPathCheckers()

getCertPathCheckers

public List<PKIXCertPathChecker> getCertPathCheckers()
Возвращает List средств проверки пути сертификации. Возвращаемый List является неизменяемым, а каждый PKIXCertPathChecker в List клонируется для защиты от последующих изменений.
Возвращает:
неизменяемый List PKIXCertPathCheckerов (может быть пустым, но не null)
См. также:
  • setCertPathCheckers(List)

addCertPathChecker

public void addCertPathChecker(PKIXCertPathChecker checker)
Добавляет PKIXCertPathChecker в список средств проверки пути сертификации. Дополнительные сведения см. в методе setCertPathCheckers.

Обратите внимание, что PKIXCertPathChecker клонируется для защиты от последующих изменений.

Параметры:
checker — PKIXCertPathChecker для добавления в список проверок. Если null, средство проверки игнорируется (не добавляется в список).

getSigProvider

public String getSigProvider()
Возвращает имя поставщика службы подписи или null, если оно не задано.
Возвращает:
имя поставщика службы подписи (или null)
См. также:
  • setSigProvider(String)

setSigProvider

public void setSigProvider(String sigProvider)
Задает имя поставщика службы подписи. Указанный поставщик будет иметь приоритет при создании объектов Signature. Если значение равно null или не задано, будет использоваться первый найденный поставщик, поддерживающий алгоритм.
Параметры:
sigProvider — имя поставщика службы подписи (или null)
См. также:
  • getSigProvider()

getTargetCertConstraints

public CertSelector getTargetCertConstraints()
Возвращает требуемые ограничения для целевого сертификата. Ограничения возвращаются в виде экземпляра CertSelector. Если null, ограничения не заданы.

Обратите внимание, что возвращаемый CertSelector клонируется для защиты от последующих изменений.

Возвращает:
CertSelector, задающий ограничения для целевого сертификата (или null)
См. также:
  • setTargetCertConstraints(CertSelector)

setTargetCertConstraints

public void setTargetCertConstraints(CertSelector selector)
Задает требуемые ограничения для целевого сертификата. Ограничения указываются в виде экземпляра CertSelector. Если null, ограничения не заданы.

Обратите внимание, что указанный CertSelector клонируется для защиты от последующих изменений.

Параметры:
selector — CertSelector, задающий ограничения для целевого сертификата (или null)
См. также:
  • getTargetCertConstraints()

clone

public Object clone()
Создает копию этого объекта PKIXParameters. Изменения копии не повлияют на исходный объект, и наоборот.
Определено в:
clone в интерфейсе CertPathParameters
Переопределено:
clone в классе Object
Возвращает:
копию этого объекта PKIXParameters
См. также:
  • Cloneable

toString

public String toString()
Возвращает отформатированную строку с описанием параметров.
Переопределено:
toString в классе Object
Возвращает:
отформатированную строку с описанием параметров.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, которая содержит более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.

Spec-Zone.ru

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