xades4j를 사용하여 재현해야하는 예제 xades 서명을 받았습니다 ("템플릿과 유사").xades4j : signedproperties 참조에서 변환을 사용하여 서명을 생성하는 방법
예 서명이 (발췌)입니다 :
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="xmldsig-qualifyingproperties-yada-yada">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
<ds:Reference URI="#xmldsig-signedproperties-yada-yada">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"/>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>yada-yada-yada-yada-yada-yada-yada</ds:DigestValue>
</ds:Reference>
(...)
나는 어떤 속성이 입력되지 있기 때문에이 참조가 된 XAdES을 준수하지 않는 것을 알고있다.
제 문제는 해당 참조의 변형입니다. xades4j를 사용하여이 옵션을 설정하는 방법을 찾을 수 없습니다. 이 작업을 수행 할 수 있습니까?
또한 서명 상단에서 정규화 방법이 서명 된 속성 참조에서 하나의 정규화 방법이라고 말하기 때문에 여기에 의미가 있는지 여부는 알 수 없습니다. 이것을 정확하게 읽는가?
두 번째 요점과 완전히 일치합니다. 또한 제작자 관점에서 첫 번째로. 하지만 내가 검증자인 경우 (분명히) signedProperties 참조에서 정규화 변환을 갖는 서명을 검증하려고합니다. 고려해야 할 Transform을 사용해야합니까? Personality, 나는이 참조에서 어떤 변환도하지 않고 간단하고 명료하게하기 위해 지정된 기본값을 사용하는 것을 선호합니다. 그러나 나는 그들이 나에게주는 것을 가지고 놀아야한다 ... – brun0sa
변환이 있다면, xades4j는 참조를 처리 할 때 그것을 사용할 것이다. 당신이 할 수있는 일은 검증 결과에있는 데이터 객체를 분석하고 안전하지 않은 것으로 생각되는 변형이 있는지 확인하는 것입니다. 흰색 목록의 종류. – lgoncalves
이것은 어리석은 질문 일지 모르지만 ... 정규화 알고리즘은 포함 된 주석의 차이와 동일하다고 말했습니다. 이 예제에서는 "xml-exc-c14n"과 "REC-xml-c14n-20010315"(주석 부분은 무시함)입니다. 이것들은 동일합니까? – brun0sa