Ссылка на интерфейс
- Все суперинтерфейсы:
-
URIReference,XMLStructure
public interface Reference extends URIReference, XMLStructure
Представление элемента
Reference согласно Рекомендации W3C по синтаксису и обработке XML-подписей. Схема XML определена как:
<element name="Reference" type="ds:ReferenceType"/>
<complexType name="ReferenceType">
<sequence>
<element ref="ds:Transforms" minOccurs="0"/>
<element ref="ds:DigestMethod"/>
<element ref="ds:DigestValue"/>
</sequence>
<attribute name="Id" type="ID" use="optional"/>
<attribute name="URI" type="anyURI" use="optional"/>
<attribute name="Type" type="anyURI" use="optional"/>
</complexType>
<element name="DigestValue" type="ds:DigestValueType"/>
<simpleType name="DigestValueType">
<restriction base="base64Binary"/>
</simpleType>
Экземпляр Reference можно создать, вызвав один из методов newReference класса XMLSignatureFactory; например:
XMLSignatureFactory factory = XMLSignatureFactory.getInstance("DOM");
Reference ref = factory.newReference
("http://www.ietf.org/rfc/rfc3275.txt",
factory.newDigestMethod(DigestMethod.SHA1, null));
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
byte[] |
getCalculatedDigestValue() |
Возвращает вычисленный дайджест этого Reference после операции проверки. |
Data |
getDereferencedData() |
Возвращает дереференцированные данные, если кеширование ссылок активировано. |
InputStream |
getDigestInputStream() |
Возвращает предварительно дайджестированный входной поток, если кеширование ссылок активировано. |
DigestMethod |
getDigestMethod() |
Возвращает метод дайджеста этого Reference. |
byte[] |
getDigestValue() |
Возвращает значение дайджеста этого Reference. |
String |
getId() |
Возвращает необязательный атрибут Id этого Reference, который позволяет ссылаться на эту ссылку из других мест. |
List<Transform> |
getTransforms() |
|
boolean |
validate |
Проверяет эту ссылку. |
Методы, объявленные в интерфейсе javax.xml.crypto.URIReference
getType, getURI
Методы, объявленные в интерфейсе javax.xml.crypto.XMLStructure
isFeatureSupported
Подробное описание методов
getTransforms
List<Transform> getTransforms()
- Возвращает:
- неизменяемый список преобразований (может быть пустым, но никогда не
null)
getDigestMethod
DigestMethod getDigestMethod()
Возвращает метод дайджеста этого
Reference.- Возвращает:
- метод дайджеста
getId
String getId()
Возвращает необязательный атрибут
Id этого Reference, который позволяет ссылаться на эту ссылку из других мест.- Возвращает:
- атрибут
Id(может бытьnullесли не указан)
getDigestValue
byte[] getDigestValue()
Возвращает значение дайджеста этого
Reference.- Возвращает:
- сырое значение дайджеста, или
nullесли эта ссылка еще не дайджестирована. Каждый вызов этого метода возвращает новую копию для предотвращения последующих изменений.
getCalculatedDigestValue
byte[] getCalculatedDigestValue()
Возвращает вычисленный дайджест этого
Reference после операции проверки. Этот метод полезен для отладки, если ссылка не проходит проверку.- Возвращает:
- вычисленный дайджест, или
nullесли эта ссылка еще не проверена. Каждый вызов этого метода возвращает новую копию для предотвращения последующих изменений.
validate
boolean validate(XMLValidateContext validateContext) throws XMLSignatureException
Проверяет эту ссылку. Этот метод проверяет дайджест этой ссылки.
Этот метод проверяет ссылку только при первом вызове. При последующих вызовах он возвращает кэшированный результат.
- Параметры:
-
validateContext- контекст проверки - Возвращает:
-
trueесли эта ссылка прошла проверку успешно;falseв противном случае - Исключения:
-
NullPointerException- еслиvalidateContextявляетсяnull -
XMLSignatureException- если при проверке ссылки возникло непредвиденное исключение
getDereferencedData
Data getDereferencedData()
Возвращает дереференцированные данные, если кеширование ссылок активировано. Это результат дереференцирования URI этой ссылки во время операции проверки или генерации.
- Возвращает:
- дереференцированные данные, или
nullесли кеширование ссылок не активировано или эта ссылка не была сгенерирована или проверена
getDigestInputStream
InputStream getDigestInputStream()
Возвращает предварительно дайджестированный входной поток, если кеширование ссылок активировано. Это входной поток для операции дайджестирования во время операции проверки или подписания.
- Возвращает:
- входной поток, содержащий предварительно дайджестированный ввод, или
nullесли кеширование ссылок не активировано или эта ссылка не была сгенерирована или проверена
© 1993, 2021, 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/17/docs/api/java.xml.crypto/javax/xml/crypto/dsig/Reference.html