Spec-Zone.ru › OpenJDK 21

Класс XMLSignatureFactory

java.lang.Object
javax.xml.crypto.dsig.XMLSignatureFactory
public abstract class XMLSignatureFactory extends Object
Фабрика для создания объектов XMLSignature с нуля или для распаковки объекта XMLSignature из соответствующего XML-представления.

Тип XMLSignatureFactory

Каждый экземпляр XMLSignatureFactory поддерживает определённый тип XML-механизма. Для создания XMLSignatureFactory, вызовите один из статических методов getInstance, передав желаемый тип XML-механизма, например:

XMLSignatureFactory factory = XMLSignatureFactory.getInstance("DOM");

Создаваемые этой фабрикой объекты будут основаны на DOM и соответствовать требованиям межплатформенной совместимости DOM, как определено в Требованиях к механизму DOM. Список стандартных типов механизмов см. в разделе XMLSignatureFactory спецификации Стандартных имён алгоритмов Java Security.

XMLSignatureFactory реализуются и загружаются с помощью механизма Provider. Например, поставщик услуг, поддерживающий механизм DOM, был бы указан в подклассе Provider как:

     put("XMLSignatureFactory.DOM", "org.example.DOMXMLSignatureFactory");
 

Реализация ДОЛЖНА минимально поддерживать тип механизма по умолчанию: DOM.

Обратите внимание, что вызывающий поток должен использовать один и тот же экземпляр XMLSignatureFactory для создания XMLStructure объектов конкретного XMLSignature, который должен быть сгенерирован. Поведение не определено, если XMLStructure из разных поставщиков или разных типов механизмов используются вместе.

Также, создаваемые этой фабрикой объекты XMLStructure могут содержать состояние, специфичное для XMLSignature и не предназначены для повторного использования.

Создание XMLSignatures с нуля

После создания XMLSignatureFactory, объекты могут быть созданы путём вызова соответствующего метода. Например, экземпляр Reference может быть создан путём вызова одного из методов newReference.

Распаковка XMLSignatures из XML

В качестве альтернативы, XMLSignature может быть создан из существующего XML-представления путём вызова метода unmarshalXMLSignature и передачи ему экземпляра специфичного для механизма XMLValidateContext, содержащего XML-содержание:

 DOMValidateContext context = new DOMValidateContext(key, signatureElement);
 XMLSignature signature = factory.unmarshalXMLSignature(context);
 
Каждый XMLSignatureFactory должен поддерживать необходимые типы XMLValidateContext для этого типа фабрики, но может поддерживать и другие. DOM XMLSignatureFactory должен поддерживать объекты DOMValidateContext.

Подпись и сериализация XMLSignatures в XML

Каждый XMLSignature объект, созданный фабрикой, также может быть сериализован в XML-представление и подписан путём вызова метода sign объекта XMLSignature и передачи ему объекта специфичного для механизма XMLSignContext, содержащего ключ подписи и параметры сериализации (см. DOMSignContext). Например:
    DOMSignContext context = new DOMSignContext(privateKey, document);
    signature.sign(context);
 
Доступ в нескольких потоках

Статические методы этого класса гарантированно потокобезопасны. Несколько потоков могут одновременно вызывать статические методы, определённые в этом классе, без негативных последствий.

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

Since:
1.6
END_OF_DOCUMENT_MARKER

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

XMLSignatureFactory()
Модификатор Конструктор Описание
protected
Конструктор по умолчанию, для вызова подклассами.

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

Модификатор и тип Метод Описание
static XMLSignatureFactory getInstance()
Возвращает XMLSignatureFactory, поддерживающий механизм обработки XML по умолчанию и тип представления ("DOM").
static XMLSignatureFactory getInstance(String mechanismType)
Возвращает XMLSignatureFactory, поддерживающий указанный механизм обработки XML и тип представления (например, "DOM").
static XMLSignatureFactory getInstance(String mechanismType, String provider)
Возвращает XMLSignatureFactory, поддерживающий затребованный механизм обработки XML и тип представления (например, "DOM"), предоставленный указанным поставщиком.
static XMLSignatureFactory getInstance(String mechanismType, Provider provider)
Возвращает XMLSignatureFactory, поддерживающий затребованный механизм обработки XML и тип представления (например, "DOM"), предоставленный указанным поставщиком.
final KeyInfoFactory getKeyInfoFactory()
Возвращает KeyInfoFactory, создающий объекты KeyInfo.
final String getMechanismType()
Возвращает тип механизма обработки XML и поддерживаемого представления, предоставляемый этим XMLSignatureFactory (например, "DOM").
final Provider getProvider()
Возвращает поставщика этого XMLSignatureFactory.
abstract URIDereferencer getURIDereferencer()
Возвращает ссылку на URIDereferencer по умолчанию, используемый для разыменования URI в объектах Reference.
abstract boolean isFeatureSupported(String feature)
Указывает, поддерживается ли указанная функция.
abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm, C14NMethodParameterSpec params)
Создает CanonicalizationMethod для указанного URI алгоритма и параметров.
abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm, XMLStructure params)
Создает CanonicalizationMethod для указанного URI алгоритма и параметров.
abstract DigestMethod newDigestMethod(String algorithm, DigestMethodParameterSpec params)
Создает DigestMethod для указанного URI алгоритма и параметров.
abstract Manifest newManifest(List<? extends Reference> references)
Создает Manifest, содержащий указанный список Reference.
abstract Manifest newManifest(List<? extends Reference> references, String id)
Создает Manifest, содержащий указанный список Reference и необязательный идентификатор.
abstract Reference newReference(String uri, DigestMethod dm)
Создает Reference с указанным URI и методом дайджеста.
abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id)
Создает Reference с указанными параметрами.
abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id, byte[] digestValue)
Создает Reference с указанными параметрами и предварительно вычисленным значением дайджеста.
abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> appliedTransforms, Data result, List<? extends Transform> transforms, String type, String id)
Создает Reference с указанными параметрами.
abstract SignatureMethod newSignatureMethod(String algorithm, SignatureMethodParameterSpec params)
Создает SignatureMethod для указанного URI алгоритма и параметров.
abstract SignatureProperties newSignatureProperties(List<? extends SignatureProperty> properties, String id)
Создает SignatureProperties, содержащий указанный список SignatureProperty и необязательный идентификатор.
abstract SignatureProperty newSignatureProperty(List<? extends XMLStructure> content, String target, String id)
Создает SignatureProperty, содержащий указанный список XMLStructure, целевой URI и необязательный идентификатор.
abstract SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references)
Создает SignedInfo с указанными методами канонизации и подписи, а также списком одной или нескольких ссылок.
abstract SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references, String id)
Создает SignedInfo с указанными параметрами.
abstract Transform newTransform(String algorithm, TransformParameterSpec params)
Создает Transform для указанного URI алгоритма и параметров.
abstract Transform newTransform(String algorithm, XMLStructure params)
Создает Transform для указанного URI алгоритма и параметров.
abstract XMLObject newXMLObject(List<? extends XMLStructure> content, String id, String mimeType, String encoding)
Создаёт XMLObject из указанных параметров.
abstract XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki)
Создаёт XMLSignature и инициализирует его содержимым указанных объектов SignedInfo и KeyInfo.
abstract XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki, List<? extends XMLObject> objects, String id, String signatureValueId)
Создаёт XMLSignature и инициализирует его указанными параметрами.
abstract XMLSignature unmarshalXMLSignature(XMLValidateContext context)
Демаршализует новый экземпляр XMLSignature из экземпляра XMLValidateContext специфичного для механизма.
abstract XMLSignature unmarshalXMLSignature(XMLStructure xmlStructure)
Демаршализует новый экземпляр XMLSignature из экземпляра XMLStructure специфичного для механизма.

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

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

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

XMLSignatureFactory

protected XMLSignatureFactory()
Конструктор по умолчанию, для вызова подклассами.

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

getInstance

public static XMLSignatureFactory getInstance(String mechanismType)
Возвращает XMLSignatureFactory, поддерживающий указанный механизм обработки XML и тип представления (например, "DOM").

Этот метод использует стандартный механизм поиска поставщиков JCA для поиска и создания реализации XMLSignatureFactory указанного типа механизма. Он проходит по списку зарегистрированных поставщиков безопасности Provider, начиная с наиболее предпочтительного Provider. Возвращается новый объект XMLSignatureFactory из первого Provider , поддерживающего указанный механизм.

Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().

Описание реализации:
Реализация JDK дополнительно использует свойство jdk.security.provider.preferred Security для определения предпочтительного порядка поставщиков для указанного алгоритма. Это может отличаться от порядка поставщиков, возвращаемого методом Security.getProviders().
Параметры:
mechanismType - тип механизма обработки XML и представления. Список стандартных типов механизмов см. в разделе XMLSignatureFactory в Спецификации имен стандартных алгоритмов Java Security.
Возвращает:
новый XMLSignatureFactory
Издает исключение:
NullPointerException - если mechanismType является null
NoSuchMechanismException - если ни один Provider не поддерживает реализацию XMLSignatureFactory для указанного механизма
См. также:
  • Provider

getInstance

public static XMLSignatureFactory getInstance(String mechanismType, Provider provider)
Возвращает XMLSignatureFactory, поддерживающий затребованный механизм обработки XML и тип представления (например, "DOM"), предоставляемый указанным поставщиком. Обратите внимание, что указанный объект Provider не обязательно должен быть зарегистрирован в списке поставщиков.
Параметры:
mechanismType - тип механизма обработки XML и представления. Список стандартных типов механизмов см. в разделе XMLSignatureFactory в Спецификации имен стандартных алгоритмов Java Security.
provider - объект Provider
Возвращает:
новый XMLSignatureFactory
Издает исключение:
NullPointerException - если provider или mechanismType является null
NoSuchMechanismException - если реализация XMLSignatureFactory для указанного механизма недоступна из указанного объекта Provider
См. также:
  • Provider

getInstance

public static XMLSignatureFactory getInstance(String mechanismType, String provider) throws NoSuchProviderException
Возвращает XMLSignatureFactory, поддерживающий затребованный механизм обработки XML и тип представления (например, "DOM"), предоставляемый указанным поставщиком. Указанный поставщик должен быть зарегистрирован в списке поставщиков безопасности.

Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().

Параметры:
mechanismType - тип механизма обработки XML и представления. Список стандартных типов механизмов см. в разделе XMLSignatureFactory в Спецификации имен стандартных алгоритмов Java Security.
provider - имя строки поставщика
Возвращает:
новый XMLSignatureFactory
Издает исключение:
NoSuchProviderException - если указанный поставщик не зарегистрирован в списке поставщиков безопасности
NullPointerException - если provider или mechanismType является null
NoSuchMechanismException - если реализация XMLSignatureFactory для указанного механизма недоступна от указанного поставщика
См. также:
  • Provider

getInstance

public static XMLSignatureFactory getInstance()
Возвращает XMLSignatureFactory, поддерживающий стандартный механизм обработки XML и тип представления ("DOM").

Этот метод использует стандартный механизм поиска поставщиков JCA для поиска и создания реализации XMLSignatureFactory указанного типа механизма. Он проходит по списку зарегистрированных поставщиков безопасности Provider, начиная с наиболее предпочтительного Provider. Возвращается новый объект XMLSignatureFactory из первого Provider , поддерживающего механизм DOM.

Обратите внимание, что список зарегистрированных поставщиков можно получить с помощью метода Security.getProviders().

Возвращает:
новый XMLSignatureFactory
Издает исключение:
NoSuchMechanismException - если ни один Provider не поддерживает реализацию XMLSignatureFactory для механизма DOM
См. также:
  • Provider

getMechanismType

public final String getMechanismType()
Возвращает тип механизма обработки XML и представления, поддерживаемого этим XMLSignatureFactory (например, "DOM").
Возвращает:
тип механизма обработки XML, поддерживаемый этим XMLSignatureFactory

getProvider

public final Provider getProvider()
Возвращает поставщика этого XMLSignatureFactory.
Возвращает:
поставщик этого XMLSignatureFactory

newXMLSignature

public abstract XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki)
Создаёт XMLSignature и инициализирует его содержимым указанных объектов SignedInfo и KeyInfo.
Параметры:
si - информация о подписании
ki - информация о ключе (может быть null )
Возвращает:
объект XMLSignature
Издаёт исключение:
NullPointerException - если si является null

newXMLSignature

public abstract XMLSignature newXMLSignature(SignedInfo si, KeyInfo ki, List<? extends XMLObject> objects, String id, String signatureValueId)
Создаёт XMLSignature и инициализирует его указанными параметрами.
Параметры:
si - информация о подписании
ki - информация о ключе (может быть null )
objects - список объектов XMLObject (может быть пустым или null )
id - идентификатор (может быть null )
signatureValueId - идентификатор SignatureValue (может быть null )
Возвращает:
объект XMLSignature
Издаёт исключение:
NullPointerException - если si является null
ClassCastException - если какой-либо из objects не является объектом типа XMLObject

newReference

public abstract Reference newReference(String uri, DigestMethod dm)
Создаёт Reference с указанным URI и методом хеширования.
Параметры:
uri - URI ссылки (может быть null )
dm - метод хеширования
Возвращает:
объект Reference
Издаёт исключение:
IllegalArgumentException - если uri не соответствует RFC 2396
NullPointerException - если dm является null

newReference

public abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id)
Создаёт ссылку с указанными параметрами.
Параметры:
uri - URI ссылки (может быть null)
dm - метод хеширования
transforms - список Transformов. Список защищён от последующих изменений. Может быть null или пустым.
type - тип ссылки в виде URI (может быть null)
id - идентификатор ссылки (может быть null)
Возвращает:
ссылку Reference
Исключения:
ClassCastException - если какой-либо из transforms не является объектом типа Transform
IllegalArgumentException - если uri не соответствует RFC 2396
NullPointerException - если dm null

newReference

public abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> transforms, String type, String id, byte[] digestValue)
Создаёт ссылку с указанными параметрами и предварительно вычисленным значением хеша.

Этот метод полезен, когда значение хеша ссылки уже вычислено. Например, см. спецификацию OASIS-DSS (Услуги цифровых подписей).

Параметры:
uri - URI ссылки (может быть null)
dm - метод хеширования
transforms - список Transformов. Список защищён от последующих изменений. Может быть null или пустым.
type - тип ссылки в виде URI (может быть null)
id - идентификатор ссылки (может быть null)
digestValue - значение хеша. Массив клонируется для защиты от последующих изменений.
Возвращает:
ссылку Reference
Исключения:
ClassCastException - если какой-либо из transforms не является объектом типа Transform
IllegalArgumentException - если uri не соответствует RFC 2396
NullPointerException - если dm или digestValue null

newReference

public abstract Reference newReference(String uri, DigestMethod dm, List<? extends Transform> appliedTransforms, Data result, List<? extends Transform> transforms, String type, String id)
Создаёт ссылку с указанными параметрами.

Этот метод полезен, когда список преобразований уже применён к Reference. Например, см. спецификацию OASIS-DSS (Услуги цифровых подписей).

При генерации XML-документа, содержащего эту ссылку, указанные transforms (если не null) применяются к указанному result. Элемент Transforms результирующего элемента Reference устанавливается в конкатенацию appliedTransforms и transforms.

Параметры:
uri - URI ссылки (может быть null)
dm - метод хеширования
appliedTransforms - список Transformов, которые уже были применены. Список защищён от последующих изменений. Список должен содержать как минимум один элемент.
result - результат обработки последовательности appliedTransforms
transforms - список Transformов, которые должны быть применены при генерации подписи. Список защищён от последующих изменений. Может быть null или пустым.
type - тип ссылки в виде URI (может быть null)
id - идентификатор ссылки (может быть null)
Возвращает:
ссылку Reference
Исключения:
ClassCastException - если какое-либо из преобразований (в любом списке) не является объектом типа Transform
IllegalArgumentException - если uri не соответствует RFC 2396 или appliedTransforms пусто
NullPointerException - если dm, appliedTransforms или result null

newSignedInfo

public abstract SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references)
Создаёт SignedInfo с указанными методами канонизации и подписи, и списком одной или более ссылок.
Параметры:
cm - метод канонизации
sm - метод подписи
references - список одной или более ссылок Referenceов. Список защищён от последующих изменений.
Возвращает:
объект SignedInfo
Исключения:
ClassCastException - если какая-либо из ссылок не является объектом типа Reference
IllegalArgumentException - если references пусто
NullPointerException - если какие-либо из параметров null

newSignedInfo

public abstract SignedInfo newSignedInfo(CanonicalizationMethod cm, SignatureMethod sm, List<? extends Reference> references, String id)
Создаёт SignedInfo с указанными параметрами.
Параметры:
cm - метод канонизации
sm - метод подписи
references - список одной или более ссылок Referenceов. Список защищён от последующих изменений.
id - идентификатор (может быть null)
Возвращает:
объект SignedInfo
Исключения:
ClassCastException - если какая-либо из ссылок не является объектом типа Reference
IllegalArgumentException - если references пусто
NullPointerException - если cm, sm, или references null

newXMLObject

public abstract XMLObject newXMLObject(List<? extends XMLStructure> content, String id, String mimeType, String encoding)
Создаёт XMLObject из указанных параметров.
Параметры:
content - список XMLStructureов. Список защищён от последующих изменений. Может быть null или пустым.
id - Id (может быть null)
mimeType - тип MIME (может быть null)
encoding - кодировка (может быть null)
Возвращает:
объект XMLObject
Исключения:
ClassCastException - если content содержит записи, которые не являются объектами типа XMLStructure

newManifest

public abstract Manifest newManifest(List<? extends Reference> references)
Создаёт Manifest, содержащий указанный список Referenceов.
Параметры:
references - список одной или более ссылок Referenceов. Список защищён от последующих изменений.
Возвращает:
объект Manifest
Исключения:
NullPointerException - если references null
IllegalArgumentException - если references пусто
ClassCastException - если references содержит записи, которые не являются объектами типа Reference

newManifest

public abstract Manifest newManifest(List<? extends Reference> references, String id)
Создаёт Manifest, содержащий указанный список Referenceов и необязательный id.
Параметры:
references - список одной или более ссылок Referenceов. Список защищён от последующих изменений.
id - идентификатор (может быть null)
Возвращает:
объект Manifest
Исключения:
NullPointerException - если references null
IllegalArgumentException - если references пусто
ClassCastException - если references содержит записи, которые не являются объектами типа Reference

новыйОбъектСвойствоПодписи

public abstract SignatureProperty newSignatureProperty(List<? extends XMLStructure> content, String target, String id)
Создаёт объект XMLStructure содержащий указанный список XMLStructures, целевой URI и необязательный идентификатор.
Параметры:
content - список из одного или более XMLStructures. Список защищён от последующих изменений.
target - целевой URI подписи, к которой относится это свойство
id - идентификатор (может быть null).
Возвращает:
объект SignatureProperty
Исключение:
NullPointerException - если content или target имеют значение null
IllegalArgumentException - если content пуст
ClassCastException - если content содержит элементы, не являющиеся объектами XMLStructure

новыеСвойстваПодписи

public abstract SignatureProperties newSignatureProperties(List<? extends SignatureProperty> properties, String id)
Создаёт объект SignatureProperty содержащий указанный список SignaturePropertys и необязательный идентификатор.
Параметры:
properties - список из одного или более SignaturePropertys. Список защищён от последующих изменений.
id - идентификатор (может быть null).
Возвращает:
объект SignatureProperties
Исключение:
NullPointerException - если properties имеет значение null
IllegalArgumentException - если properties пуст
ClassCastException - если properties содержит элементы, не являющиеся объектами SignatureProperty

новыйМетодХеширования

public abstract DigestMethod newDigestMethod(String algorithm, DigestMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Создаёт объект DigestMethod для указанного URI алгоритма и параметров.
Параметры:
algorithm - URI, определяющий алгоритм хеширования
params - параметры хеширования, специфичные для алгоритма (могут быть null)
Возвращает:
объект DigestMethod
Исключение:
InvalidAlgorithmParameterException - если указанные параметры не подходят для запрошенного алгоритма
NoSuchAlgorithmException - если реализация указанного алгоритма не найдена
NullPointerException - если algorithm имеет значение null

новыйМетодПодписи

public abstract SignatureMethod newSignatureMethod(String algorithm, SignatureMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Создаёт объект SignatureMethod для указанного URI алгоритма и параметров.
Параметры:
algorithm - URI, определяющий алгоритм подписи
params - параметры подписи, специфичные для алгоритма (могут быть null)
Возвращает:
объект SignatureMethod
Исключение:
InvalidAlgorithmParameterException - если указанные параметры не подходят для запрошенного алгоритма
NoSuchAlgorithmException - если реализация указанного алгоритма не найдена
NullPointerException - если algorithm имеет значение null

новыйПреобразование

public abstract Transform newTransform(String algorithm, TransformParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Создаёт объект Transform для указанного URI алгоритма и параметров.
Параметры:
algorithm - URI, определяющий алгоритм преобразования
params - параметры преобразования, специфичные для алгоритма (могут быть null)
Возвращает:
объект Transform
Исключение:
InvalidAlgorithmParameterException - если указанные параметры не подходят для запрошенного алгоритма
NoSuchAlgorithmException - если реализация указанного алгоритма не найдена
NullPointerException - если algorithm имеет значение null

новыйПреобразование

public abstract Transform newTransform(String algorithm, XMLStructure params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Создаёт объект Transform для указанного URI алгоритма и параметров. Параметры задаются как механизм-специфическая XML-структура (например, DOMStructure). Этот метод полезен, когда параметры находятся в формате XML или не существует стандартного класса для их задания.
Параметры:
algorithm - URI, определяющий алгоритм преобразования
params - механизм-специфическая XML-структура для разархивирования параметров (может быть null если не требуется или необязательна)
Возвращает:
объект Transform
Исключение:
ClassCastException - если тип params не подходит для этого XMLSignatureFactory
InvalidAlgorithmParameterException - если указанные параметры не подходят для запрошенного алгоритма
NoSuchAlgorithmException - если реализация указанного алгоритма не найдена
NullPointerException - если algorithm имеет значение null

новыйМетодКанонизации

public abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm, C14NMethodParameterSpec params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Создаёт объект CanonicalizationMethod для указанного URI алгоритма и параметров.
Параметры:
algorithm - URI, определяющий алгоритм канонизации
params - параметры канонизации, специфичные для алгоритма (могут быть null)
Возвращает:
объект CanonicalizationMethod
Исключение:
InvalidAlgorithmParameterException - если указанные параметры не подходят для запрошенного алгоритма
NoSuchAlgorithmException - если реализация указанного алгоритма не найдена
NullPointerException - если algorithm имеет значение null

новыйМетодКанонизации

public abstract CanonicalizationMethod newCanonicalizationMethod(String algorithm, XMLStructure params) throws NoSuchAlgorithmException, InvalidAlgorithmParameterException
Создаёт объект CanonicalizationMethod для указанного URI алгоритма и параметров. Параметры задаются как механизм-специфическая XML-структура (например, DOMStructure). Этот метод полезен, когда параметры находятся в формате XML или не существует стандартного класса для их задания.
Параметры:
algorithm - URI, определяющий алгоритм канонизации
params - механизм-специфическая XML-структура для разархивирования параметров (может быть null если не требуется или необязательна)
Возвращает:
объект CanonicalizationMethod
Исключение:
ClassCastException - если тип params не подходит для этого XMLSignatureFactory
InvalidAlgorithmParameterException - если указанные параметры не подходят для запрошенного алгоритма
NoSuchAlgorithmException - если реализация указанного алгоритма не найдена
NullPointerException - если algorithm имеет значение null

фабрикаОбъектовКлючей

public final KeyInfoFactory getKeyInfoFactory()
Возвращает KeyInfoFactory, создающую объекты KeyInfo. Возвращаемая KeyInfoFactory имеет тот же тип механизма и поставщика, что и этот XMLSignatureFactory.
Возвращает:
KeyInfoFactory
Исключение:
NoSuchMechanismException - если реализация KeyFactory с таким же типом механизма и поставщиком недоступна

разархивироватьXMLПодпись

public abstract XMLSignature unmarshalXMLSignature(XMLValidateContext context) throws MarshalException
Разархивирует новый экземпляр XMLSignature из механизм-специфического экземпляра XMLValidateContext.
Параметры:
context - механизм-специфический контекст для разархивирования подписи
Возвращает:
объект XMLSignature
Исключение:
NullPointerException - если context имеет значение null
ClassCastException - если тип context не подходит для этой фабрики
MarshalException - если произошла невосстановимая ошибка во время разархивирования

разархивироватьXMLПодпись

public abstract XMLSignature unmarshalXMLSignature(XMLStructure xmlStructure) throws MarshalException
Разархивирует новый экземпляр XMLSignature из механизм-специфического экземпляра XMLStructure. Этот метод полезен, если требуется только разархивирование (а не валидация) XML-подписи.
Параметры:
xmlStructure - механизм-специфическая XML-структура для разархивирования подписи
Возвращает:
объект XMLSignature
Исключение:
NullPointerException - если xmlStructure имеет значение null
ClassCastException - если тип xmlStructure не подходит для этой фабрики
MarshalException - если произошла невосстановимая ошибка во время разархивирования

поддерживаетсяФункция

public abstract boolean isFeatureSupported(String feature)
Указывает, поддерживается ли указанная функция.
Параметры:
feature - имя функции (как абсолютный URI)
Возвращает:
true если указанная функция поддерживается, false в противном случае
Исключение:
NullPointerException - если feature имеет значение null
END_OF_DOCUMENT_MARKER

getURIDereferencer

public abstract URIDereferencer getURIDereferencer()
Возвращает ссылку на URIDereferencer, используемый по умолчанию для разыменования URI в объектах Reference.
Возвращает:
ссылку на URIDereferencer (никогда не null)

© 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.xml.crypto/javax/xml/crypto/dsig/XMLSignatureFactory.html

Spec-Zone.ru

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