Chilkat - Delphi DLL - XADES - CkXmlDSigGen_AddExternalTextRef

У меня проблема с использованием функции Ck XmlDSig Gen_AddExternalTextRef. После подписания DigestValue всегда получает одно и то же значение для разных URL-адресов.

      <ds:DigestValue>8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=</ds:DigestValue>

В чем проблема?

Я не могу найти примеры использования функции XmlDSig Gen_AddExternalTextRef. Спасибо за помощь.

Марек

Код:

        .......................
  CkXmlDSigGen_AddExternalTextRef(xmlSigGen,PWideChar(url1),sbXml,'utf-8', true, 'sha256','');
  CkXmlDSigGen_SetRefIdAttr(xmlSigGen,PWideChar(url1),PWideChar(ref1));

  CkXmlDSigGen_AddExternalTextRef(xmlSigGen,PWideChar(url2),sbXml,'utf-8', true, 'sha256','');
  CkXmlDSigGen_SetRefIdAttr(xmlSigGen,PWideChar(url2),PWideChar(ref2));

  ................
  CkXmlDSigGen_CreateXmlDSigSb(xmlSigGen,sbXml);

Результирующий XML:

      <ds:Reference Id="xmldsig-fc9386fa-4c0d-42ba-bd4e-7ecb61218cfd-ref1" URI="https://isus.ezdrowie.gov.pl/fhir/Encounter/131544/_history/1">
  <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
  <ds:DigestValue>8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=</ds:DigestValue>

</ds:Reference>
<ds:Reference Id="xmldsig-fc9386fa-4c0d-42ba-bd4e-7ecb61218cfd2" URI="https://isus.ezdrowie.gov.pl/fhir/Condition/131553/_history/1">
  <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
  <ds:DigestValue>8ZRc1sGeVrPBx4lD717BgRaQekyh78QKV9SKsdt638U=</ds:DigestValue>

1 ответ

Вот пример добавления ссылок на внешние текстовые данные и последующей проверки: https://www.example-code.com/delphiDll/xmldsig_external_text_reference.asp

Другие вопросы по тегам