Алгоритм подписи по умолчанию

Система применяет алгоритм по умолчанию для генерации подписей. Это применимо к запросам, где не указано, какой алгоритм мы хотим использовать для подписи. Такая ситуация типична, когда мы отправляем, например, PDF-файл.

Конфигурация системы в этом аспекте следующая:

  • В настоящее время -> Алгоритм SHA1
  • От 26.04.2023 -> SHA256

Как запросить конкретный алгоритм в запросе подписи

Поле <SignatureDigestAlgorithm> необходимо добавить в поле <OptionalInputs> в запросе, поступающем в TX.

Возможные значения:

  • мд5
  • ша1
  • id_sha256
  • id_sha384
  • id_sha512

Пример:

<Необязательные входы>

...

<SignatureDigestAlgorithm>id_sha256</SignatureDigestAlgorithm>

....

</Необязательные входы>

Запрашивает, чтобы вместо документа предоставлялся внешне рассчитанный HASH.

Бывают случаи, когда запрос содержит не подписываемый документ, а HASH, рассчитанный извне TrustedX. В этом случае узел <Document> содержит такую структуру:

<Входные документы><DocumentHash>

<ns3:DigestMethod Algorithm=" urn:nist-gov:sha256 " xsi:type="ns3:DigestMethodType" xmlns:ns3=http://www.w3.org/2000/09/xmldsig#/>

<ns4:DigestValue xsi:type="ns4:DigestValueType" xmlns:ns4=http://www.w3.org/2000/09/xmldsig#>ZTgwZTYyZTQ2MTJmMjQ5NGE4OTAwY2QxZTJjZTA4ZjQwNjQwMjI0NTE1MzY4ZjYwNDVjOTU4YTM3M jFlZGY3MA==</ns4:DigestValue жестValue>

</DocumentHash>

</Входные документы>

В этом случае значение, указывающее в <ds:DigestMethod> использованный атрибут алгоритма, значения могут быть следующими:

  • http://www.w3.org/2000/09/xmldsig#sha1
  • http://www.w3.org/2001/04/xmldsig-more#md5
  • урна:nist-gov:sha256
  • урна:nist-gov:sha384
  • урна:nist-gov:sha512
  • http://www.w3.org/2001/04/xmlenc#sha256 (только для создания подписей XMLDSig/XAdES)
  • http://www.w3.org/2001/04/xmldsig-more#sha384 (только для создания подписей XMLDSig/XAdES)
  • http://www.w3.org/2001/04/xmlenc#sha512 (только для создания подписей XMLDSig/XAdES)

ПРИМЕЧАНИЕ . В этих случаях необходимо убедиться, что комбинация SignatureDigestAlgorithm и рассчитанного HASH должна быть согласованной. или система не подпишет.