Problema al integrarse contra el servicio de firma de coesysProblema al integrarse contra el servicio de firma de coesyshttps://centroderecursos.agesic.gub.uy/c/message_boards/find_thread?p_l_id=33353&threadId=962332024-03-28T11:51:34Z2024-03-28T11:51:34ZRE: Problema al integrarse contra el servicio de firma de coesysAlexis Rosanohttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=3232732018-08-17T20:09:00Z2018-08-17T20:09:00ZHola!<br /><br />Aprovecho este hilo para hacer una consulta acerca del armado del SignRequest.<br /><br />Entiendo que el SignRequest armado por Diego Menendez es correcto.<br /><br />De acuerdo a un ejemplo, tengo este XML para firmar archivos PDF:<br /><br /><div class="lfr-code"><table><tbody><tr><td class="line-numbers" data-line-number="1"></td><td class="lines"><div class="line"><?xml version="1.0" encoding="UTF-8" standalone="no"?></div></td></tr><tr><td class="line-numbers" data-line-number="2"></td><td class="lines"><div class="line"><dss:SignRequest xmlns:dss="urn:oasis:names:tc:dss:1.0:core:schema" Profile="urn:gemalto:dss:profiles:cades" RequestID="0.10351272094083208"></div></td></tr><tr><td class="line-numbers" data-line-number="3"></td><td class="lines"><div class="line"> <dss:OptionalInputs></div></td></tr><tr><td class="line-numbers" data-line-number="4"></td><td class="lines"><div class="line"> <dss:ClaimedIdentity><dss:Name Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">sp-sdk-example</dss:Name><dss:SupportingInfo><SignResponseConsumerURL xmlns="urn:oasis:names:tc:dssx:1.0:profiles:gemalto:demo">http://localhost:8080/sp-sdk-example/client/response</SignResponseConsumerURL></dss:SupportingInfo></dss:ClaimedIdentity></div></td></tr><tr><td class="line-numbers" data-line-number="5"></td><td class="lines"><div class="line"> <dss:SignatureType>urn:etsi:ts:102:778</dss:SignatureType></div></td></tr><tr><td class="line-numbers" data-line-number="6"></td><td class="lines"><div class="line"> <demo:SignatureMethods xmlns:demo="urn:oasis:names:tc:dssx:1.0:profiles:gemalto:demo"><demo:SignatureMethod>SmartCard</demo:SignatureMethod></demo:SignatureMethods></div></td></tr><tr><td class="line-numbers" data-line-number="7"></td><td class="lines"><div class="line"> <ades:SignatureForm xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#">urn:oasis:names:tc:dss:1.0:profiles:AdES:forms:BES</ades:SignatureForm></div></td></tr><tr><td class="line-numbers" data-line-number="8"></td><td class="lines"><div class="line"> <dss:Properties><dss:SignedProperties></div></td></tr><tr><td class="line-numbers" data-line-number="9"></td><td class="lines"><div class="line"> <dss:Property><dss:Identifier>urn:oasis:names:tc:dss:1.0:profiles:AdES:SigningTime</dss:Identifier><dss:Value/></dss:Property></div></td></tr><tr><td class="line-numbers" data-line-number="10"></td><td class="lines"><div class="line"> <dss:Property><dss:Identifier>urn:oasis:names:tc:dss:1.0:profiles:AdES:DataObjectFormat</dss:Identifier><dss:Value><ades:RequestedDocsFormat xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#"><ades:BinaryValue>MAQGAioD</ades:BinaryValue></ades:RequestedDocsFormat></dss:Value></dss:Property></div></td></tr><tr><td class="line-numbers" data-line-number="11"></td><td class="lines"><div class="line"> <dss:Property><dss:Identifier>urn:oasis:names:tc:dss:1.0:profiles:AdES:CommitmentTypeIndication</dss:Identifier><dss:Value><ades:RequestedCommitment xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#"><ades:BinaryValue>MAYGBCoDBAU=</ades:BinaryValue></ades:RequestedCommitment></dss:Value></dss:Property></div></td></tr><tr><td class="line-numbers" data-line-number="12"></td><td class="lines"><div class="line"> <dss:Property><dss:Identifier>urn:oasis:names:tc:dss:1.0:profiles:AdES:SignatureProductionPlace</dss:Identifier><dss:Value><ades:RequestedSignatureProductionPlace xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#"><ades:BinaryValue>MA2gCwwJQW55IHBsYWNl</ades:BinaryValue></ades:RequestedSignatureProductionPlace></dss:Value></dss:Property></div></td></tr><tr><td class="line-numbers" data-line-number="13"></td><td class="lines"><div class="line"> <dss:Property></div></td></tr><tr><td class="line-numbers" data-line-number="14"></td><td class="lines"><div class="line"> <dss:Identifier>urn:oasis:names:tc:dss:1.0:profiles:AdES:SignerRole</dss:Identifier></div></td></tr><tr><td class="line-numbers" data-line-number="15"></td><td class="lines"><div class="line"> <dss:Value><ades:RequestedSignerRole xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#"><ades:BinaryValue>MBygGjAYMBYGByoDBAUGBwgxCwwJQW55IHZhbHVl</ades:BinaryValue></ades:RequestedSignerRole></dss:Value></dss:Property></div></td></tr><tr><td class="line-numbers" data-line-number="16"></td><td class="lines"><div class="line"> </dss:SignedProperties></dss:Properties></div></td></tr><tr><td class="line-numbers" data-line-number="17"></td><td class="lines"><div class="line"> <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"/><SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/></Transforms><DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/><DigestValue>0GmdYzpg7I+IA5qnu4Gco/vP0SXWzh0hYximUyrwSnc=</DigestValue></Reference></SignedInfo><SignatureValue>YRJQM6xu6z4u1fcx9hFiwS1dtqIEt3n2Lr80TCqqgcmVJNqc2dA4d7gM/g1yQ3WSm0d9c8JGk7v4</div></td></tr><tr><td class="line-numbers" data-line-number="18"></td><td class="lines"><div class="line">a8cKx6NQjiOfnSUwaJFj3DbGxhqsWIfqRHWxIwVjwwwRNz2ArfjnG3onGKAZXjs7+ATUb8oEpvUb</div></td></tr><tr><td class="line-numbers" data-line-number="19"></td><td class="lines"><div class="line">qC/rkeIPyKEPWcBH9Q8=</SignatureValue><KeyInfo><X509Data></div></td></tr><tr><td class="line-numbers" data-line-number="20"></td><td class="lines"><div class="line"> <X509Certificate>MIIBlTCB/6ADAgECAgEBMA0GCSqGSIb3DQEBBQUAMBAxDjAMBgNVBAMMBWxpbmsyMB4XDTE0MDUx</div></td></tr><tr><td class="line-numbers" data-line-number="21"></td><td class="lines"><div class="line"> OTE2Mzg1NloXDTE5MDUxOTE2MzkwNlowEjEQMA4GA1UEAwwHc2lnbmluZzCBnzANBgkqhkiG9w0B</div></td></tr><tr><td class="line-numbers" data-line-number="22"></td><td class="lines"><div class="line"> AQEFAAOBjQAwgYkCgYEAne5Z8HFAkNzIQtCwr7M9idQeYBy8nbSX3aV+Q7nB/Y4LgWqYBFqah9vk</div></td></tr><tr><td class="line-numbers" data-line-number="23"></td><td class="lines"><div class="line"> SGabQKhcR+Xo2gV9ik331WaxwnuIsHPz7SOm+bI79ZBfq+/7NWPVFgAUB8jyhaDVmK26SHxPTpA+</div></td></tr><tr><td class="line-numbers" data-line-number="24"></td><td class="lines"><div class="line"> +CgrFJEokOi+qOvxYyibY1LDDN/4SCfn6BWWq88CAwEAATANBgkqhkiG9w0BAQUFAAOBgQARozNY</div></td></tr><tr><td class="line-numbers" data-line-number="25"></td><td class="lines"><div class="line"> uiRfnfDeNjiB1lPdmJQmsEqq+faPv99vPUaxb3lvFbWpgEQ+xkJ5agPKV6JLgo6N9o16LIw8NH9p</div></td></tr><tr><td class="line-numbers" data-line-number="26"></td><td class="lines"><div class="line"> Fw5/JivVtm3EXb63NZHcpRSz2Mk0g3zVSiPZtS4vNjc5EGODTsGn0i9EasE8Qkczh8oyNuyjRV7t</div></td></tr><tr><td class="line-numbers" data-line-number="27"></td><td class="lines"><div class="line"> xZ5/6vDRl1vevQ==</X509Certificate></div></td></tr><tr><td class="line-numbers" data-line-number="28"></td><td class="lines"><div class="line"></X509Data></KeyInfo></Signature></dss:OptionalInputs></div></td></tr><tr><td class="line-numbers" data-line-number="29"></td><td class="lines"><div class="line"><dss:InputDocuments><dss:Document><dss:Base64Data MimeType="application/pdf">JVBERi0xLjUNCiW………8OUIwNDc2MEUwQ0YzQUM0OTgwODQwMDhFNDUzNkVFQzc+XSAvUHJldiAxNjEyNjYvWFJlZlN0bSAxNjA5NjQ+Pg0Kc3RhcnR4cmVmDQoxNjE5NDQNCiUlRU9G</dss:Base64Data></dss:Document></div></td></tr><tr><td class="line-numbers" data-line-number="30"></td><td class="lines"><div class="line"></dss:InputDocuments></dss:SignRequest></div></td></tr></tbody></table></div><br />En particular, por qué en un caso se utiliza un tag <em>SignatureForm </em>y en otro <em>SignedProperties</em>, ya que en realidad en ambos casos se quieren firmar PDFs.<br /><br />Mi ambiente: Estoy trabajando con GX para el Poder Judicial y estamos implementando la firma de documentos PDF a partir del documento electrónico.<br /><br />Muchas gracias por la ayuda!<br /><br /><div class="quote"><div class="quote-content">Diego MenendezHola! Pude pasar dicho problema.<br /><br />Ahora tengo otro. Al intentar integrarme me está dando el siguiente mensaje:<br /><br />"Operation failedThe identity of the requester is unknown.N/A"<br /><br />Supuestamente ya estoy dado de alta en Coesys. <br /><br />Hay manera de chequear en los logs del servicio que está pasando?<br /><br />Este es el SignRequest que armo:<br /><br /><div class="lfr-code"><table><tbody><tr><td class="line-numbers" data-line-number="1"></td><td class="lines"><div class="line"><?xml version="1.0" encoding="UTF-8"?></div></td></tr><tr><td class="line-numbers" data-line-number="2"></td><td class="lines"><div class="line"><dss:SignRequest xmlns:dss="urn:oasis:names:tc:dss:1.0:core:schema" Profile="urn:gemalto:dss:profiles:cades" RequestID="0.9271639871877586"></div></td></tr><tr><td class="line-numbers" data-line-number="3"></td><td class="lines"><div class="line"> <dss:OptionalInputs></div></td></tr><tr><td class="line-numbers" data-line-number="4"></td><td class="lines"><div class="line"> <dss:ClaimedIdentity></div></td></tr><tr><td class="line-numbers" data-line-number="5"></td><td class="lines"><div class="line"> <dss:Name Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">http://apia.statum.biz/ApiaDocumentum</dss:Name></div></td></tr><tr><td class="line-numbers" data-line-number="6"></td><td class="lines"><div class="line"> <dss:SupportingInfo></div></td></tr><tr><td class="line-numbers" data-line-number="7"></td><td class="lines"><div class="line"> <SignResponseConsumerURL xmlns="urn:oasis:names:tc:dssx:1.0:profiles:gemalto:demo">http://apia.statum.biz/ApiaDocumentum/dss.response</SignResponseConsumerURL></div></td></tr><tr><td class="line-numbers" data-line-number="8"></td><td class="lines"><div class="line"> </dss:SupportingInfo></div></td></tr><tr><td class="line-numbers" data-line-number="9"></td><td class="lines"><div class="line"> </dss:ClaimedIdentity></div></td></tr><tr><td class="line-numbers" data-line-number="10"></td><td class="lines"><div class="line"> <dss:SignatureType>urn:etsi:ts:102:778</dss:SignatureType></div></td></tr><tr><td class="line-numbers" data-line-number="11"></td><td class="lines"><div class="line"> <demo:SignatureMethods xmlns:demo="urn:oasis:names:tc:dssx:1.0:profiles:gemalto:demo"></div></td></tr><tr><td class="line-numbers" data-line-number="12"></td><td class="lines"><div class="line"> <demo:SignatureMethod>SmartCard</demo:SignatureMethod></div></td></tr><tr><td class="line-numbers" data-line-number="13"></td><td class="lines"><div class="line"> </demo:SignatureMethods></div></td></tr><tr><td class="line-numbers" data-line-number="14"></td><td class="lines"><div class="line"> <ades:SignatureForm xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#">urn:oasis:names:tc:dss:1.0:profiles:AdES:forms:BES</ades:SignatureForm></div></td></tr><tr><td class="line-numbers" data-line-number="15"></td><td class="lines"><div class="line"> <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"></div></td></tr><tr><td class="line-numbers" data-line-number="16"></td><td class="lines"><div class="line"> <SignedInfo></div></td></tr><tr><td class="line-numbers" data-line-number="17"></td><td class="lines"><div class="line"> <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments" /></div></td></tr><tr><td class="line-numbers" data-line-number="18"></td><td class="lines"><div class="line"> <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /></div></td></tr><tr><td class="line-numbers" data-line-number="19"></td><td class="lines"><div class="line"> <Reference URI=""></div></td></tr><tr><td class="line-numbers" data-line-number="20"></td><td class="lines"><div class="line"> <Transforms></div></td></tr><tr><td class="line-numbers" data-line-number="21"></td><td class="lines"><div class="line"> <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></div></td></tr><tr><td class="line-numbers" data-line-number="22"></td><td class="lines"><div class="line"> </Transforms></div></td></tr><tr><td class="line-numbers" data-line-number="23"></td><td class="lines"><div class="line"> <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /></div></td></tr><tr><td class="line-numbers" data-line-number="24"></td><td class="lines"><div class="line"> <DigestValue>ZAwkMzgmPDF6JJZnXtZbnuFobguXLxZPfdbFN2w4f/0=</DigestValue></div></td></tr><tr><td class="line-numbers" data-line-number="25"></td><td class="lines"><div class="line"> </Reference></div></td></tr><tr><td class="line-numbers" data-line-number="26"></td><td class="lines"><div class="line"> </SignedInfo></div></td></tr><tr><td class="line-numbers" data-line-number="27"></td><td class="lines"><div class="line"> <SignatureValue>mQAe6xo7+70xisxfk68nOrJFnr3gmBqynUORUwodKnFZu24gVbARpnbMkd4jFpA2vp9dUqzLOiXS</div></td></tr><tr><td class="line-numbers" data-line-number="28"></td><td class="lines"><div class="line">lAY3OqtKD9VHdP8uGCK38PSifBZAIWa6Y0wvqmC0H+VDYmDKqPc3Gp/FzjuAzn062RCe/bO/n76Q</div></td></tr><tr><td class="line-numbers" data-line-number="29"></td><td class="lines"><div class="line">LDU4Oq5icZgv607p6+vnzb/aErJ9bV9AR4UswvEDMV8JjWrpFRAiaVPuUsNQ02yMIVgz/QRUHMUP</div></td></tr><tr><td class="line-numbers" data-line-number="30"></td><td class="lines"><div class="line">E6JjjLBPiM2zMWebqTjtd77okDaxqSDUNlhjODk6DBw0snrTR2TUX1iNhGK9n5JJw0OR1ZwstNbE</div></td></tr><tr><td class="line-numbers" data-line-number="31"></td><td class="lines"><div class="line">J+lt3nh58vP8M3Iy5rM6350s2RNOZkY9K+nq8Q==</SignatureValue></div></td></tr><tr><td class="line-numbers" data-line-number="32"></td><td class="lines"><div class="line"> <KeyInfo></div></td></tr><tr><td class="line-numbers" data-line-number="33"></td><td class="lines"><div class="line"> <X509Data></div></td></tr><tr><td class="line-numbers" data-line-number="34"></td><td class="lines"><div class="line"> <X509Certificate>MIIDvDCCAqQCCQDRts/WEBQeSzANBgkqhkiG9w0BAQsFADCBnzELMAkGA1UEBhMCVVkxEzARBgNV</div></td></tr><tr><td class="line-numbers" data-line-number="35"></td><td class="lines"><div class="line">BAgMCk1PTlRFVklERU8xEzARBgNVBAcMCk1PTlRFVklERU8xFzAVBgNVBAoMDlNUIENPTlNVTFRP</div></td></tr><tr><td class="line-numbers" data-line-number="36"></td><td class="lines"><div class="line">UkVTMRMwEQYDVQQLDApERVNBUlJPTExPMRMwEQYDVQQDDApERVNBUlJPTExPMSMwIQYJKoZIhvcN</div></td></tr><tr><td class="line-numbers" data-line-number="37"></td><td class="lines"><div class="line">AQkBFhRlcm9kcmlndWV6QHN0LmNvbS51eTAeFw0xNzA1MDQxNDM4MTNaFw0yMTA1MDQxNDM4MTNa</div></td></tr><tr><td class="line-numbers" data-line-number="38"></td><td class="lines"><div class="line">MIGfMQswCQYDVQQGEwJVWTETMBEGA1UECAwKTU9OVEVWSURFTzETMBEGA1UEBwwKTU9OVEVWSURF</div></td></tr><tr><td class="line-numbers" data-line-number="39"></td><td class="lines"><div class="line">TzEXMBUGA1UECgwOU1QgQ09OU1VMVE9SRVMxEzARBgNVBAsMCkRFU0FSUk9MTE8xEzARBgNVBAMM</div></td></tr><tr><td class="line-numbers" data-line-number="40"></td><td class="lines"><div class="line">CkRFU0FSUk9MTE8xIzAhBgkqhkiG9w0BCQEWFGVyb2RyaWd1ZXpAc3QuY29tLnV5MIIBIjANBgkq</div></td></tr><tr><td class="line-numbers" data-line-number="41"></td><td class="lines"><div class="line">hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp/jaLJFKI1bhnNQ3AuoOB2gbxViwvq80oT/p8BrlhX63</div></td></tr><tr><td class="line-numbers" data-line-number="42"></td><td class="lines"><div class="line">PUFvjj/ZyZsQcyFpn+591+Sx2j69tQk1dNI2tvd7mONSoAtZsak6Klnp/I8IPireTlZCADxsJMzy</div></td></tr><tr><td class="line-numbers" data-line-number="43"></td><td class="lines"><div class="line">BD3FFztpo+ohRHMcxEvr4JERfLKBxqV6GskuewuhEyicJZXsFs6YyHxtpuwOPNoyQ/FQJbwOopgU</div></td></tr><tr><td class="line-numbers" data-line-number="44"></td><td class="lines"><div class="line">m1beyPJUt0Rx1ab1VW/8idv1NDhzJCVJVvUSylFvEO5JeIA3md+FKiwHIrLDNPcIh6mzGtZjYMdL</div></td></tr><tr><td class="line-numbers" data-line-number="45"></td><td class="lines"><div class="line">P2HbZb2Z3Vowk3nf4chBNq5VciQ1eyORabcbU+Dd64n2RTmbvYepuXc618BKBpWmu+4UsQIDAQAB</div></td></tr><tr><td class="line-numbers" data-line-number="46"></td><td class="lines"><div class="line">MA0GCSqGSIb3DQEBCwUAA4IBAQA0F6sZMTchrPfLc8sbGujyjE8f/UNCn/cgzmugZxQJBkLAFrR0</div></td></tr><tr><td class="line-numbers" data-line-number="47"></td><td class="lines"><div class="line">L0DBbhpJmTMCscQqZv57XVku5Mjpcg2EWa5gJhIxp8JJ/GQHkTlZnjorZVNYVOmhQpO8qt7fXTtk</div></td></tr><tr><td class="line-numbers" data-line-number="48"></td><td class="lines"><div class="line">SGrz1h0QzUhWbBw5CfhwguLLeQ+iR7AFJy+gXkAFqiKFiJ/tM5UaURZ6OzXdUXZbjt5vbiGvjEsj</div></td></tr><tr><td class="line-numbers" data-line-number="49"></td><td class="lines"><div class="line">dbY9Z6kDaoPwGcKB5VlE6fVzc8c/iluDgzLrwsuOvVt8j2rasT9kvz8Bd36GDU7YcRdaSk2Nq6+p</div></td></tr><tr><td class="line-numbers" data-line-number="50"></td><td class="lines"><div class="line">JkFOvQlJhCklLwiKFW3ROen2uaxKANOnsvzjaiaX/KaYpzJxrEymS6EMaFPO2ise</X509Certificate></div></td></tr><tr><td class="line-numbers" data-line-number="51"></td><td class="lines"><div class="line"> </X509Data></div></td></tr><tr><td class="line-numbers" data-line-number="52"></td><td class="lines"><div class="line"> </KeyInfo></div></td></tr><tr><td class="line-numbers" data-line-number="53"></td><td class="lines"><div class="line"> </Signature></div></td></tr><tr><td class="line-numbers" data-line-number="54"></td><td class="lines"><div class="line"> </dss:OptionalInputs></div></td></tr><tr><td class="line-numbers" data-line-number="55"></td><td class="lines"><div class="line"> <dss:InputDocuments></div></td></tr><tr><td class="line-numbers" data-line-number="56"></td><td class="lines"><div class="line"> <dss:Document></div></td></tr><tr><td class="line-numbers" data-line-number="57"></td><td class="lines"><div class="line"> <dss:Base64Data MimeType="application/pdf">L2hvbWUvbG9jYWwvRE9NU1QvZG1lbmVuZGV6L0Rlc2t0b3AvUmVwb3NpdG9yaW8gRGllZ28vUHJlZ3VudGFzQ2FwaXR1bG82LnBkZg==</dss:Base64Data></div></td></tr><tr><td class="line-numbers" data-line-number="58"></td><td class="lines"><div class="line"> </dss:Document></div></td></tr><tr><td class="line-numbers" data-line-number="59"></td><td class="lines"><div class="line"> </dss:InputDocuments></div></td></tr><tr><td class="line-numbers" data-line-number="60"></td><td class="lines"><div class="line"></dss:SignRequest></div></td></tr></tbody></table></div></div></div>Alexis Rosano2018-08-17T20:09:00ZRE: Problema al integrarse contra el servicio de firma de coesysNicolas Piquerezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=1028632017-06-29T20:16:08Z2017-06-29T20:16:08ZComo andas Diego? Disculpa la demora.<br /><br />Primero queria comentarte que con el metodo "String newRequestData = StringEscapeUtils.escapeHtml4(Base64.encodeBase64String(requestData.getBytes("UTF-8")));" estas codificando en base64 todo el xml del SignRequest y si luego escape-andolo para que pueda ser incrustrado en un HTML.<br /><br />Lo que podes probar es guardar "requestData.getBytes("UTF-8")" como xml y ahi si sacar el pdf del mismo y aplicarle un decoding de base64. Para asegurarte que este funcionando, pero hasta ahora hemos probado el metodo y no hemos tenido problemas.<br /><br />No sabria decirte lo de la libreria como hace la codificación del base64, es una libreria bastante conocida porque el problema debe venir por un mal uso. Por ejemplo al hacer write le pasas como parametro "bytes", no debería ser el array "pdf"?<br /><br />SaludosNicolas Piquerez2017-06-29T20:16:08ZRE: Problema al integrarse contra el servicio de firma de coesysDiego Menendezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=1022372017-06-28T19:48:08Z2017-06-28T19:48:08ZPor lo que estuve investigando el metodo :<br /><br />requestData = requestBuilder.buildPAdESBasicSignRequest(requestId, documento, signedAttributes, signatureForm, vSignature);<br /><br />Usa la librería dss-1-1.0.0.jar, en la misma se codifica el documento pdf que envía en bytes a Base64 utililizando la clase "org.bouncycastle.util.encoders.Base64", que también corresponde a la librería dss-1-1.0.0.jar.<br /><br />Hice la siguiente prueba por fuera:<br /><br />String path= "/home/local/DOMST/dmenendez/Desktop/prueba.pdf";<br />String path_firmado= "/home/local/DOMST/dmenendez/Desktop/prueba_firmado.pdf";<br /><br />String base64 = new String(org.bouncycastle.util.encoders.Base64.encode(path));<br />byte[] pdf = org.bouncycastle.util.encoders.Base64.decode(base64);<br /><br />FileOutputStream fileOuputStream = new FileOutputStream(path_firmado); <br />fileOuputStream.write(bytes);<br />fileOuputStream.close();<br /><br /><br />Al ver el pdf generado, el mismo queda corrupto.<br />Convirtiendo a través de un sitio online dicho documento a Base64 el mismo queda totalmente diferente al generado con el metodo org.bouncycastle.util.encoders.Base64.encode() de la librería dss-1-1.0.0.jar.<br /><br />Será el Base64 que genera la librería que está mal? Les suena?<br /><br />Quedo a la espera.<br />Gracias<br />Saludos.Diego Menendez2017-06-28T19:48:08ZRE: Problema al integrarse contra el servicio de firma de coesysDiego Menendezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=1012832017-06-27T16:24:47Z2017-06-27T16:24:47ZNicolas,<br /><br />Al firmarlo desde el sitio que me enviaron y darle enviar me vuelve al sitio donde subí el documento pdf, con el documento firmado correctamente.<br /><br />Esto es lo que hago yo en mi código el signRequest:<br /><br /> String file = "/home/local/DOMST/dmenendez/Desktop/prueba.pdf";<br /> byte[] documento = file.getBytes();<br /><br /> Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());<br /> InputStream ks = new FileInputStream(Labels.keyStoreRoute);<br /> JCAKeyStoreSignatureKeyService jcaKeyStoreSignatureKeyService = new JCAKeyStoreSignatureKeyService("BC","PKCS12", ks, Labels.keyStoreKey, Labels.keyStoreAlias);<br /><br /> XmlDSigRequestSigner xmlDSigRS = new XmlDSigRequestSigner();<br /> xmlDSigRS.setDigestMethod("http://www.w3.org/2001/04/xmlenc#sha256");<br /> xmlDSigRS.setSignatureMethod("http://www.w3.org/2001/04/xmldsig-more#rsa-sha256");<br /><br /> RequestBuilderImpl requestBuilder = new RequestBuilderImpl(jcaKeyStoreSignatureKeyService, xmlDSigRS,Labels.dssServiceName, Labels.dssResponseURL);<br /> requestBuilder.setSignatureMethods(Collections.singletonList("SmartCard"));<br /><br /> String requestData = "";<br /> String requestId = "";<br /> <br /> /* Generación de numero aleatorio para el request */<br /> SecureRandom secureRandom = new SecureRandom();<br /> double random = secureRandom.nextDouble();<br /> requestId = "" + random;<br /><br /> Map<String, byte[]> signedAttributes = new HashMap<String, byte[]>(); // Atributos<br /><br /> String signatureForm = "urn:oasis:names:tc:dss:1.0:profiles:AdES:forms:BES";<br /><br /> VisibleSignature vSignature = new VisibleSignature();<br /> requestData = requestBuilder.buildPAdESBasicSignRequest(requestId, documento, signedAttributes, signatureForm, vSignature);<br /><br /> String newRequestData = StringEscapeUtils.escapeHtml4(Base64.encodeBase64String(requestData.getBytes("UTF-8")));<br /><br /><br /><br />Luego al recibir el Response me llega el XML con el siguiente mensaje:<br /><br /><table><tr><td> <ns5:Result></td></tr><tr><td></td><td> <ns5:ResultMajor>urn:oasis:names:tc:dss:1.0:resultmajor:RequesterError</ns5:ResultMajor></td></tr><tr><td></td><td> <ns5:ResultMinor>urn:oasis:names:tc:dss:1.0:resultminor:MessageValidationError</ns5:ResultMinor></td></tr><tr><td></td><td> <ns5:ResultMessage xml:lang="eng">VAL100: PdfFormatValidator</ns5:ResultMessage></td></tr><tr><td></td><td> </ns5:Result><br /><br />Adjunto el pdf.<br /><br /><br />Qué será?<br /><br /><br />Saludos.<br /></td></tr></table>Diego Menendez2017-06-27T16:24:47ZRE: Problema al integrarse contra el servicio de firma de coesysNicolas Piquerezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=975642017-06-15T18:02:56Z2017-06-15T18:02:56ZY luego de firmarlo al dar enviar que te aparece?<br /><br />SaludosNicolas Piquerez2017-06-15T18:02:56ZRE: Problema al integrarse contra el servicio de firma de coesysDiego Menendezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=971492017-06-15T15:38:49Z2017-06-15T15:38:49ZAparenemente no tuve problemas. Llegue correctamente al servicio de firma, veo el pdf y puedo firmarlo.<br /><br /><br />Què podrà ser?<br />Diego Menendez2017-06-15T15:38:49ZRE: Problema al integrarse contra el servicio de firma de coesysNicolas Piquerezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=970422017-06-14T20:59:56Z2017-06-14T20:59:56ZEs extraño, parece un error en el formato de PDF, si podes proba firmando a través de la siguiente aplicación el mismo archivo:<br /><br />https://test-eid.portal.gub.uy/v1.1/sp-dss/client/signPAdES (Seleccionar archivo para subir el PDF y Submit)<br /><br />y contame que te devuelve el sistema.<br /><br />SaludosNicolas Piquerez2017-06-14T20:59:56ZRE: Problema al integrarse contra el servicio de firma de coesysDiego Menendezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=970302017-06-14T20:19:07Z2017-06-14T20:19:07ZNicolas, aparentemente funcionó.<br /><br />Estoy teniendo el siguiente problema, este es el SignResponse:<br /><br />Qué será?<br /><br /><br /><div class="lfr-code"><table><tbody><tr><td class="line-numbers" data-line-number="1"></td><td class="lines"><div class="line"><?xml version="1.0" encoding="UTF-8"?></div></td></tr><tr><td class="line-numbers" data-line-number="2"></td><td class="lines"><div class="line"><ns5:SignResponse xmlns:ns5="urn:oasis:names:tc:dss:1.0:core:schema" xmlns="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#" xmlns:ns2="http://uri.etsi.org/01903/v1.3.2#" xmlns:ns3="http://www.w3.org/2000/09/xmldsig#" xmlns:ns4="urn:gemalto:names:tc:dss:pades:1.0:schema" xmlns:ns6="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:ns7="urn:oasis:names:tc:dssx:1.0:profiles:gemalto:demo" Profile="urn:gemalto:dss:profiles:cades" RequestID="0.35061016047610594"></div></td></tr><tr><td class="line-numbers" data-line-number="3"></td><td class="lines"><div class="line"> <ns5:Result></div></td></tr><tr><td class="line-numbers" data-line-number="4"></td><td class="lines"><div class="line"> <ns5:ResultMajor>urn:oasis:names:tc:dss:1.0:resultmajor:RequesterError</ns5:ResultMajor></div></td></tr><tr><td class="line-numbers" data-line-number="5"></td><td class="lines"><div class="line"> <ns5:ResultMinor>urn:oasis:names:tc:dss:1.0:resultminor:MessageValidationError</ns5:ResultMinor></div></td></tr><tr><td class="line-numbers" data-line-number="6"></td><td class="lines"><div class="line"> <ns5:ResultMessage xml:lang="eng">VAL100: PdfFormatValidator</ns5:ResultMessage></div></td></tr><tr><td class="line-numbers" data-line-number="7"></td><td class="lines"><div class="line"> </ns5:Result></div></td></tr><tr><td class="line-numbers" data-line-number="8"></td><td class="lines"><div class="line"> <OptionalOutputs xmlns="urn:oasis:names:tc:dss:1.0:core:schema"></div></td></tr><tr><td class="line-numbers" data-line-number="9"></td><td class="lines"><div class="line"> <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"></div></td></tr><tr><td class="line-numbers" data-line-number="10"></td><td class="lines"><div class="line"> <ds:SignedInfo></div></td></tr><tr><td class="line-numbers" data-line-number="11"></td><td class="lines"><div class="line"> <ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /></div></td></tr><tr><td class="line-numbers" data-line-number="12"></td><td class="lines"><div class="line"> <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /></div></td></tr><tr><td class="line-numbers" data-line-number="13"></td><td class="lines"><div class="line"> <ds:Reference URI=""></div></td></tr><tr><td class="line-numbers" data-line-number="14"></td><td class="lines"><div class="line"> <ds:Transforms></div></td></tr><tr><td class="line-numbers" data-line-number="15"></td><td class="lines"><div class="line"> <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></div></td></tr><tr><td class="line-numbers" data-line-number="16"></td><td class="lines"><div class="line"> <ds:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments" /></div></td></tr><tr><td class="line-numbers" data-line-number="17"></td><td class="lines"><div class="line"> </ds:Transforms></div></td></tr><tr><td class="line-numbers" data-line-number="18"></td><td class="lines"><div class="line"> <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /></div></td></tr><tr><td class="line-numbers" data-line-number="19"></td><td class="lines"><div class="line"> <ds:DigestValue>qgWxsJnlxZnygUMVTKmUOlinK/rUETFJz9QcNSAgSc4=</ds:DigestValue></div></td></tr><tr><td class="line-numbers" data-line-number="20"></td><td class="lines"><div class="line"> </ds:Reference></div></td></tr><tr><td class="line-numbers" data-line-number="21"></td><td class="lines"><div class="line"> </ds:SignedInfo></div></td></tr><tr><td class="line-numbers" data-line-number="22"></td><td class="lines"><div class="line"> <ds:SignatureValue>GfA5RIg8yesmQiVXZcgbg+uyFc9vut3ANKP21ucB1d3dM/XgWi+l08YUAEfTBJrFMYEr46hGSYCR</div></td></tr><tr><td class="line-numbers" data-line-number="23"></td><td class="lines"><div class="line">iHldwIHpYmFnQ4X1KvJefP5rIntp9mBI6PodNrOf81/ttGblhkNRhb3b1kMrnwca7QogG8j8mBvD</div></td></tr><tr><td class="line-numbers" data-line-number="24"></td><td class="lines"><div class="line">BNIT9t4kVCB4h9iFpTIo6TzVi/z2w/M08BHGcc6fGBpQApesQxBYQMHK4O5f5pDTnxBDeeGEOldt</div></td></tr><tr><td class="line-numbers" data-line-number="25"></td><td class="lines"><div class="line">21MC+IaWzkWJXeb1IJ1Yj88tsG8PAUZEbMhqimo4ztSjJuJd+A1qQhb2xlvu3WCCMjljy+gt0VK/</div></td></tr><tr><td class="line-numbers" data-line-number="26"></td><td class="lines"><div class="line">5/MsJ9+KTQcPsD3W9pfOdI8QuJFOO4efKNzhMg==</ds:SignatureValue></div></td></tr><tr><td class="line-numbers" data-line-number="27"></td><td class="lines"><div class="line"> <ds:KeyInfo></div></td></tr><tr><td class="line-numbers" data-line-number="28"></td><td class="lines"><div class="line"> <ds:X509Data></div></td></tr><tr><td class="line-numbers" data-line-number="29"></td><td class="lines"><div class="line"> <ds:X509Certificate>MIIGnDCCBISgAwIBAgIUAUPFuYlN4BENUkKY0c9sTXuAEU4wDQYJKoZIhvcNAQELBQAwWjEdMBsG</div></td></tr><tr><td class="line-numbers" data-line-number="30"></td><td class="lines"><div class="line">A1UEAxMUQ29ycmVvIFVydWd1YXlvIC0gQ0ExLDAqBgNVBAoMI0FkbWluaXN0cmFjacOzbiBOYWNp</div></td></tr><tr><td class="line-numbers" data-line-number="31"></td><td class="lines"><div class="line">b25hbCBkZSBDb3JyZW9zMQswCQYDVQQGEwJVWTAeFw0xNzA0MDYxODQ5MDJaFw0xOTA0MDYxODQ5</div></td></tr><tr><td class="line-numbers" data-line-number="32"></td><td class="lines"><div class="line">MDJaMIHHMRgwFgYDVQQFEw9SVUMyMTU5OTYwNjAwMTUxCzAJBgNVBAYTAlVZMXoweAYDVQQKE3FB</div></td></tr><tr><td class="line-numbers" data-line-number="33"></td><td class="lines"><div class="line">R0VOQ0lBIFBBUkEgRUwgREVTQVJST0xMTyBERUwgR09CSUVSTk8gREUgR0VTVElPTiBFTEVDVFJP</div></td></tr><tr><td class="line-numbers" data-line-number="34"></td><td class="lines"><div class="line">TklDQSBZIExBIFNPQ0lFREFEIERFIExBIElORk9STUFDSU9OIFkgREVMIENPTk9DSU1JRU5UTzEi</div></td></tr><tr><td class="line-numbers" data-line-number="35"></td><td class="lines"><div class="line">MCAGA1UEAxMZQUdFU0lDLUNPRVNZUy1EU1MtVEVTVElORzCCASIwDQYJKoZIhvcNAQEBBQADggEP</div></td></tr><tr><td class="line-numbers" data-line-number="36"></td><td class="lines"><div class="line">ADCCAQoCggEBAItRiulQW83nuJ9yuASrPKAzIzTzmXrWPNf4zFfYkLAmDbntdOcXqfuUglWKCm1e</div></td></tr><tr><td class="line-numbers" data-line-number="37"></td><td class="lines"><div class="line">nnsRNLeVf0qDc2jh6wpV8dDtFokJ1If+urfAUqyCvXMRxlxpaQYdKGgINZduZ98LdudE64Zi7O2N</div></td></tr><tr><td class="line-numbers" data-line-number="38"></td><td class="lines"><div class="line">jXM5DAqJE7tBddf9Nc8KF8q/oVqDP+LcJADrN3ndFHvzbfIfkxqbwe/RlrTAhLjd0pQepxFErBv2</div></td></tr><tr><td class="line-numbers" data-line-number="39"></td><td class="lines"><div class="line">G5sNxWjffXx8/S0QBS3T9Oi1LMXQmB4s3S484Guw5WYX3V8t21avF0gcoBJIZtbYs/CmEMflBSqY</div></td></tr><tr><td class="line-numbers" data-line-number="40"></td><td class="lines"><div class="line">XI8o33mGvMqWgEA4TNxLWMkmtiUtlFYTslLPwnxPlk/ptd243i0CAwEAAaOCAeowggHmMHkGCCsG</div></td></tr><tr><td class="line-numbers" data-line-number="41"></td><td class="lines"><div class="line">AQUFBwEBBG0wazA2BggrBgEFBQcwAoYqaHR0cDovL2FuY2NhLmNvcnJlby5jb20udXkvYW5jY2Ev</div></td></tr><tr><td class="line-numbers" data-line-number="42"></td><td class="lines"><div class="line">YW5jY2EuY2VyMDEGCCsGAQUFBzABhiVodHRwOi8vYW5jY2EuY29ycmVvLmNvbS51eS9hbmNjYS9P</div></td></tr><tr><td class="line-numbers" data-line-number="43"></td><td class="lines"><div class="line">Q1NQMA4GA1UdDwEB/wQEAwIE8DAMBgNVHRMBAf8EAjAAMDsGA1UdHwQ0MDIwMKAuoCyGKmh0dHA6</div></td></tr><tr><td class="line-numbers" data-line-number="44"></td><td class="lines"><div class="line">Ly9hbmNjYS5jb3JyZW8uY29tLnV5L2FuY2NhL2FuY2NhLmNybDCBuAYDVR0gBIGwMIGtMGQGC2CG</div></td></tr><tr><td class="line-numbers" data-line-number="45"></td><td class="lines"><div class="line">WoTirh2EiAUEMFUwUwYIKwYBBQUHAgEWR2h0dHA6Ly91Y2UuZ3ViLnV5L2luZm9ybWFjaW9uLXRl</div></td></tr><tr><td class="line-numbers" data-line-number="46"></td><td class="lines"><div class="line">Y25pY2EvcG9saXRpY2FzL2NwX3BlcnNvbmFfanVyaWRpY2EucGRmMEUGC2CGWoTirh2EiAUGMDYw</div></td></tr><tr><td class="line-numbers" data-line-number="47"></td><td class="lines"><div class="line">NAYIKwYBBQUHAgEWKGh0dHA6Ly9hbmNjYS5jb3JyZW8uY29tLnV5L2FuY2NhL2Nwcy5wZGYwEwYD</div></td></tr><tr><td class="line-numbers" data-line-number="48"></td><td class="lines"><div class="line">VR0lBAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFBaHhT4vJ/KjNruUEtfKby3mtGzmMB8GA1UdIwQY</div></td></tr><tr><td class="line-numbers" data-line-number="49"></td><td class="lines"><div class="line">MBaAFGzisCaNW9YmCB+YXWngDn9V7K52MA0GCSqGSIb3DQEBCwUAA4ICAQDA6jIsjUiG4WN3hFLP</div></td></tr><tr><td class="line-numbers" data-line-number="50"></td><td class="lines"><div class="line">ZZtH7dWAeXRPpv06Pa0bKYydwNV7KKfsm8w5Jfes+GjVuo+ch0yaNAd2H94VR79zLxCfLUD48WXl</div></td></tr><tr><td class="line-numbers" data-line-number="51"></td><td class="lines"><div class="line">pm9x5b0bG45GVHpPDZmhbeBEIxUBoG8MW8VhfoT8DzXsdjoWl0mw5f9OPMxzbIP2on3HEbD799io</div></td></tr><tr><td class="line-numbers" data-line-number="52"></td><td class="lines"><div class="line">9I5vlssqsv2L06Z+MxKeTiyaiX7IiHPXi3u/SJD4nJln4CQOfX0MBcs+tPBeh6E+zk0DelCRGkB3</div></td></tr><tr><td class="line-numbers" data-line-number="53"></td><td class="lines"><div class="line">J9qLnSiELJb/6Bdag5Zs6ifYANpd71t+p6czJd/u/BGx2uYBR/AM4Vspo5sP6LS4cVaDKi+RoKzS</div></td></tr><tr><td class="line-numbers" data-line-number="54"></td><td class="lines"><div class="line">tUbrVVu44IgMYorAY2A5U6cEYL6Np7d9oCioAJUsqNEjTU0l7DM0HfcJDfmX+nzXHkpjlq4ICPx9</div></td></tr><tr><td class="line-numbers" data-line-number="55"></td><td class="lines"><div class="line">V+fKMMYa6zlohsTU69oKH1MhQBUJ7R1dO5apovVpxwJ7WnFPvnW7kCk5wwLBS2etqwC4Alncoyga</div></td></tr><tr><td class="line-numbers" data-line-number="56"></td><td class="lines"><div class="line">wAfQiLOtZcKPZqRJBcyuHn22eGVTipZcYWAQXnb59+nnqdlIQG/VlKIziItDIYBt/VvdTmoXD1Q5</div></td></tr><tr><td class="line-numbers" data-line-number="57"></td><td class="lines"><div class="line">E9RTZKvBRJFmFDQEzt1WVcNOUH0bIYpxBQHcN9HBAbpudEcjt4KW20i0PZAiKletmn/edC3fn+Iv</div></td></tr><tr><td class="line-numbers" data-line-number="58"></td><td class="lines"><div class="line">RPK59/vR5AhiV6PgagKn5LKzrzzzTT4ro69T/+6tuXmLxSHpfDuVZ9TAqw==</ds:X509Certificate></div></td></tr><tr><td class="line-numbers" data-line-number="59"></td><td class="lines"><div class="line"> </ds:X509Data></div></td></tr><tr><td class="line-numbers" data-line-number="60"></td><td class="lines"><div class="line"> </ds:KeyInfo></div></td></tr><tr><td class="line-numbers" data-line-number="61"></td><td class="lines"><div class="line"> </ds:Signature></div></td></tr><tr><td class="line-numbers" data-line-number="62"></td><td class="lines"><div class="line"> </OptionalOutputs></div></td></tr><tr><td class="line-numbers" data-line-number="63"></td><td class="lines"><div class="line"></ns5:SignResponse></div></td></tr></tbody></table></div>Diego Menendez2017-06-14T20:19:07ZRE: Problema al integrarse contra el servicio de firma de coesysNicolas Piquerezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=969942017-06-14T18:37:56Z2017-06-14T18:37:56ZDiego, estan dados de alta con el ID "apia.statum" , deberías poner eso en el ClaimedIdentity<br /><br /><br />SaludosNicolas Piquerez2017-06-14T18:37:56ZRE: Problema al integrarse contra el servicio de firma de coesysDiego Menendezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=968752017-06-14T17:24:46Z2017-06-14T17:24:46ZHola! Pude pasar dicho problema.<br /><br />Ahora tengo otro. Al intentar integrarme me está dando el siguiente mensaje:<br /><br />"Operation failedThe identity of the requester is unknown.N/A"<br /><br />Supuestamente ya estoy dado de alta en Coesys. <br /><br />Hay manera de chequear en los logs del servicio que está pasando?<br /><br />Este es el SignRequest que armo:<br /><br /><div class="lfr-code"><table><tbody><tr><td class="line-numbers" data-line-number="1"></td><td class="lines"><div class="line"><?xml version="1.0" encoding="UTF-8"?></div></td></tr><tr><td class="line-numbers" data-line-number="2"></td><td class="lines"><div class="line"><dss:SignRequest xmlns:dss="urn:oasis:names:tc:dss:1.0:core:schema" Profile="urn:gemalto:dss:profiles:cades" RequestID="0.9271639871877586"></div></td></tr><tr><td class="line-numbers" data-line-number="3"></td><td class="lines"><div class="line"> <dss:OptionalInputs></div></td></tr><tr><td class="line-numbers" data-line-number="4"></td><td class="lines"><div class="line"> <dss:ClaimedIdentity></div></td></tr><tr><td class="line-numbers" data-line-number="5"></td><td class="lines"><div class="line"> <dss:Name Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">http://apia.statum.biz/ApiaDocumentum</dss:Name></div></td></tr><tr><td class="line-numbers" data-line-number="6"></td><td class="lines"><div class="line"> <dss:SupportingInfo></div></td></tr><tr><td class="line-numbers" data-line-number="7"></td><td class="lines"><div class="line"> <SignResponseConsumerURL xmlns="urn:oasis:names:tc:dssx:1.0:profiles:gemalto:demo">http://apia.statum.biz/ApiaDocumentum/dss.response</SignResponseConsumerURL></div></td></tr><tr><td class="line-numbers" data-line-number="8"></td><td class="lines"><div class="line"> </dss:SupportingInfo></div></td></tr><tr><td class="line-numbers" data-line-number="9"></td><td class="lines"><div class="line"> </dss:ClaimedIdentity></div></td></tr><tr><td class="line-numbers" data-line-number="10"></td><td class="lines"><div class="line"> <dss:SignatureType>urn:etsi:ts:102:778</dss:SignatureType></div></td></tr><tr><td class="line-numbers" data-line-number="11"></td><td class="lines"><div class="line"> <demo:SignatureMethods xmlns:demo="urn:oasis:names:tc:dssx:1.0:profiles:gemalto:demo"></div></td></tr><tr><td class="line-numbers" data-line-number="12"></td><td class="lines"><div class="line"> <demo:SignatureMethod>SmartCard</demo:SignatureMethod></div></td></tr><tr><td class="line-numbers" data-line-number="13"></td><td class="lines"><div class="line"> </demo:SignatureMethods></div></td></tr><tr><td class="line-numbers" data-line-number="14"></td><td class="lines"><div class="line"> <ades:SignatureForm xmlns:ades="urn:oasis:names:tc:dss:1.0:profiles:AdES:schema#">urn:oasis:names:tc:dss:1.0:profiles:AdES:forms:BES</ades:SignatureForm></div></td></tr><tr><td class="line-numbers" data-line-number="15"></td><td class="lines"><div class="line"> <Signature xmlns="http://www.w3.org/2000/09/xmldsig#"></div></td></tr><tr><td class="line-numbers" data-line-number="16"></td><td class="lines"><div class="line"> <SignedInfo></div></td></tr><tr><td class="line-numbers" data-line-number="17"></td><td class="lines"><div class="line"> <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments" /></div></td></tr><tr><td class="line-numbers" data-line-number="18"></td><td class="lines"><div class="line"> <SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /></div></td></tr><tr><td class="line-numbers" data-line-number="19"></td><td class="lines"><div class="line"> <Reference URI=""></div></td></tr><tr><td class="line-numbers" data-line-number="20"></td><td class="lines"><div class="line"> <Transforms></div></td></tr><tr><td class="line-numbers" data-line-number="21"></td><td class="lines"><div class="line"> <Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /></div></td></tr><tr><td class="line-numbers" data-line-number="22"></td><td class="lines"><div class="line"> </Transforms></div></td></tr><tr><td class="line-numbers" data-line-number="23"></td><td class="lines"><div class="line"> <DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /></div></td></tr><tr><td class="line-numbers" data-line-number="24"></td><td class="lines"><div class="line"> <DigestValue>ZAwkMzgmPDF6JJZnXtZbnuFobguXLxZPfdbFN2w4f/0=</DigestValue></div></td></tr><tr><td class="line-numbers" data-line-number="25"></td><td class="lines"><div class="line"> </Reference></div></td></tr><tr><td class="line-numbers" data-line-number="26"></td><td class="lines"><div class="line"> </SignedInfo></div></td></tr><tr><td class="line-numbers" data-line-number="27"></td><td class="lines"><div class="line"> <SignatureValue>mQAe6xo7+70xisxfk68nOrJFnr3gmBqynUORUwodKnFZu24gVbARpnbMkd4jFpA2vp9dUqzLOiXS</div></td></tr><tr><td class="line-numbers" data-line-number="28"></td><td class="lines"><div class="line">lAY3OqtKD9VHdP8uGCK38PSifBZAIWa6Y0wvqmC0H+VDYmDKqPc3Gp/FzjuAzn062RCe/bO/n76Q</div></td></tr><tr><td class="line-numbers" data-line-number="29"></td><td class="lines"><div class="line">LDU4Oq5icZgv607p6+vnzb/aErJ9bV9AR4UswvEDMV8JjWrpFRAiaVPuUsNQ02yMIVgz/QRUHMUP</div></td></tr><tr><td class="line-numbers" data-line-number="30"></td><td class="lines"><div class="line">E6JjjLBPiM2zMWebqTjtd77okDaxqSDUNlhjODk6DBw0snrTR2TUX1iNhGK9n5JJw0OR1ZwstNbE</div></td></tr><tr><td class="line-numbers" data-line-number="31"></td><td class="lines"><div class="line">J+lt3nh58vP8M3Iy5rM6350s2RNOZkY9K+nq8Q==</SignatureValue></div></td></tr><tr><td class="line-numbers" data-line-number="32"></td><td class="lines"><div class="line"> <KeyInfo></div></td></tr><tr><td class="line-numbers" data-line-number="33"></td><td class="lines"><div class="line"> <X509Data></div></td></tr><tr><td class="line-numbers" data-line-number="34"></td><td class="lines"><div class="line"> <X509Certificate>MIIDvDCCAqQCCQDRts/WEBQeSzANBgkqhkiG9w0BAQsFADCBnzELMAkGA1UEBhMCVVkxEzARBgNV</div></td></tr><tr><td class="line-numbers" data-line-number="35"></td><td class="lines"><div class="line">BAgMCk1PTlRFVklERU8xEzARBgNVBAcMCk1PTlRFVklERU8xFzAVBgNVBAoMDlNUIENPTlNVTFRP</div></td></tr><tr><td class="line-numbers" data-line-number="36"></td><td class="lines"><div class="line">UkVTMRMwEQYDVQQLDApERVNBUlJPTExPMRMwEQYDVQQDDApERVNBUlJPTExPMSMwIQYJKoZIhvcN</div></td></tr><tr><td class="line-numbers" data-line-number="37"></td><td class="lines"><div class="line">AQkBFhRlcm9kcmlndWV6QHN0LmNvbS51eTAeFw0xNzA1MDQxNDM4MTNaFw0yMTA1MDQxNDM4MTNa</div></td></tr><tr><td class="line-numbers" data-line-number="38"></td><td class="lines"><div class="line">MIGfMQswCQYDVQQGEwJVWTETMBEGA1UECAwKTU9OVEVWSURFTzETMBEGA1UEBwwKTU9OVEVWSURF</div></td></tr><tr><td class="line-numbers" data-line-number="39"></td><td class="lines"><div class="line">TzEXMBUGA1UECgwOU1QgQ09OU1VMVE9SRVMxEzARBgNVBAsMCkRFU0FSUk9MTE8xEzARBgNVBAMM</div></td></tr><tr><td class="line-numbers" data-line-number="40"></td><td class="lines"><div class="line">CkRFU0FSUk9MTE8xIzAhBgkqhkiG9w0BCQEWFGVyb2RyaWd1ZXpAc3QuY29tLnV5MIIBIjANBgkq</div></td></tr><tr><td class="line-numbers" data-line-number="41"></td><td class="lines"><div class="line">hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp/jaLJFKI1bhnNQ3AuoOB2gbxViwvq80oT/p8BrlhX63</div></td></tr><tr><td class="line-numbers" data-line-number="42"></td><td class="lines"><div class="line">PUFvjj/ZyZsQcyFpn+591+Sx2j69tQk1dNI2tvd7mONSoAtZsak6Klnp/I8IPireTlZCADxsJMzy</div></td></tr><tr><td class="line-numbers" data-line-number="43"></td><td class="lines"><div class="line">BD3FFztpo+ohRHMcxEvr4JERfLKBxqV6GskuewuhEyicJZXsFs6YyHxtpuwOPNoyQ/FQJbwOopgU</div></td></tr><tr><td class="line-numbers" data-line-number="44"></td><td class="lines"><div class="line">m1beyPJUt0Rx1ab1VW/8idv1NDhzJCVJVvUSylFvEO5JeIA3md+FKiwHIrLDNPcIh6mzGtZjYMdL</div></td></tr><tr><td class="line-numbers" data-line-number="45"></td><td class="lines"><div class="line">P2HbZb2Z3Vowk3nf4chBNq5VciQ1eyORabcbU+Dd64n2RTmbvYepuXc618BKBpWmu+4UsQIDAQAB</div></td></tr><tr><td class="line-numbers" data-line-number="46"></td><td class="lines"><div class="line">MA0GCSqGSIb3DQEBCwUAA4IBAQA0F6sZMTchrPfLc8sbGujyjE8f/UNCn/cgzmugZxQJBkLAFrR0</div></td></tr><tr><td class="line-numbers" data-line-number="47"></td><td class="lines"><div class="line">L0DBbhpJmTMCscQqZv57XVku5Mjpcg2EWa5gJhIxp8JJ/GQHkTlZnjorZVNYVOmhQpO8qt7fXTtk</div></td></tr><tr><td class="line-numbers" data-line-number="48"></td><td class="lines"><div class="line">SGrz1h0QzUhWbBw5CfhwguLLeQ+iR7AFJy+gXkAFqiKFiJ/tM5UaURZ6OzXdUXZbjt5vbiGvjEsj</div></td></tr><tr><td class="line-numbers" data-line-number="49"></td><td class="lines"><div class="line">dbY9Z6kDaoPwGcKB5VlE6fVzc8c/iluDgzLrwsuOvVt8j2rasT9kvz8Bd36GDU7YcRdaSk2Nq6+p</div></td></tr><tr><td class="line-numbers" data-line-number="50"></td><td class="lines"><div class="line">JkFOvQlJhCklLwiKFW3ROen2uaxKANOnsvzjaiaX/KaYpzJxrEymS6EMaFPO2ise</X509Certificate></div></td></tr><tr><td class="line-numbers" data-line-number="51"></td><td class="lines"><div class="line"> </X509Data></div></td></tr><tr><td class="line-numbers" data-line-number="52"></td><td class="lines"><div class="line"> </KeyInfo></div></td></tr><tr><td class="line-numbers" data-line-number="53"></td><td class="lines"><div class="line"> </Signature></div></td></tr><tr><td class="line-numbers" data-line-number="54"></td><td class="lines"><div class="line"> </dss:OptionalInputs></div></td></tr><tr><td class="line-numbers" data-line-number="55"></td><td class="lines"><div class="line"> <dss:InputDocuments></div></td></tr><tr><td class="line-numbers" data-line-number="56"></td><td class="lines"><div class="line"> <dss:Document></div></td></tr><tr><td class="line-numbers" data-line-number="57"></td><td class="lines"><div class="line"> <dss:Base64Data MimeType="application/pdf">L2hvbWUvbG9jYWwvRE9NU1QvZG1lbmVuZGV6L0Rlc2t0b3AvUmVwb3NpdG9yaW8gRGllZ28vUHJlZ3VudGFzQ2FwaXR1bG82LnBkZg==</dss:Base64Data></div></td></tr><tr><td class="line-numbers" data-line-number="58"></td><td class="lines"><div class="line"> </dss:Document></div></td></tr><tr><td class="line-numbers" data-line-number="59"></td><td class="lines"><div class="line"> </dss:InputDocuments></div></td></tr><tr><td class="line-numbers" data-line-number="60"></td><td class="lines"><div class="line"></dss:SignRequest></div></td></tr></tbody></table></div>Diego Menendez2017-06-14T17:24:46ZRE: Problema al integrarse contra el servicio de firma de coesysNicolas Piquerezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=968592017-06-14T15:10:31Z2017-06-14T15:10:31ZComo andas Diego? El Bouncy Castle es una libreria de criptografía que a veces se pone media "mimosa". Lo mejor es instalarla en al maquina virtual directamente, van los pasos:<br /><br />INSTALAR BOUNCY CASTLE EN JAVA<br /><br />Se debe de tener instalado el provider Bouncy Castle para la Java Cryptography Extension and the Java Cryptography Architecture. Esto tanto para la JDK como la jre (dependiendo el sistema pueden estar separadas)<br /><br />Ir al sitio de BouncyCastle y buscar la libreria adecuada para JDK, en este caso v1.56 (descargar aquí)/<br />Ir a directorio de JDK/jre<br />Buscar el archivo de propiedades de seguridad situado en $JAVA_HOME/jre/lib/security/java.security<br />Agregar linea al final con:<br />security.provider.N=org.bouncycastle.jce.provider.BouncyCastleProvider<br /><br />Donde N es uno mas que el último numero de la lista<br /><br />Agregar libreria a /lib/ext <br /><br /><br /><br />Creo que viene por ahi la mano, contame despues de esto como te fue.<br /><br />SaludosNicolas Piquerez2017-06-14T15:10:31ZRE: Problema al integrarse contra el servicio de firma de coesysDiego Menendezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=964832017-06-13T20:33:41Z2017-06-13T20:33:41ZHola Rodrigo.<br /><br />Generé mi Keystore y volví a ejecutar la aplicación.<br /><br />Ahora estoy teniendo el siguiente problema:<br /><br />com.gemalto.ics.rnd.egov.dss.sdk.exception.KeyStoreException: java.io.IOException: error constructing MAC: java.lang.SecurityException: JCE cannot authenticate the provider BC<br /> at com.gemalto.ics.rnd.egov.dss.sdk.create.key.JCAKeyStoreSignatureKeyService.init(JCAKeyStoreSignatureKeyService.java:51)<br /> at com.gemalto.ics.rnd.egov.dss.sdk.create.key.JCAKeyStoreSignatureKeyService.<init>(JCAKeyStoreSignatureKeyService.java:42)<br /> at uy.com.agesic.firma.RequestDSSController.handleFileUpload(RequestDSSController.java:111)<br /><br />Al ejecutar la siguiente línea:<br /><br />JCAKeyStoreSignatureKeyService jcaKeyStoreSignatureKeyService = new JCAKeyStoreSignatureKeyService("BC","PKCS12", ks, keyStoreKey, keyStoreAlias);<br /><br />Qué podrá ser? Puede que los jars de gemalto no estén autofirmados?<br />Gracias <br />Saludos.Diego Menendez2017-06-13T20:33:41ZRE: Problema al integrarse contra el servicio de firma de coesysRodrigo Bermudezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=962642017-06-12T20:14:09Z2017-06-12T20:14:09ZHola Diego,<br /><br />Pediste a soporte que te dieran de alta en el DSS de COESYS de TEST? Al igual que el IdP para autenticación te tienen que dar de alta como Service Provider y agregar tu certificado público.<br />Una vez hecho esto create un keystore con tu clave privada para firmar (puede ser autogenerada para TEST, lo importante es que en el paso previo le hayas pasado tu certificado público para que lo agreguen a COESYS y te valide la firma)<br /><br />Luego, yendo al error que colocas, estás usando un certificado y no un keystore para firmar, acá deberías generarte un keystore con tu clave privada y referenciarlo. Una buena herramienta para generarte un keystore es el keystore explorer. Si no lo podes hacer utilizando openssl desde la consola.<br /><br />Saludos!<br />RodrigoRodrigo Bermudez2017-06-12T20:14:09ZProblema al integrarse contra el servicio de firma de coesysDiego Menendezhttps://centroderecursos.agesic.gub.uy/c/message_boards/find_message?p_l_id=33353&messageId=962322017-06-12T20:01:25Z2017-06-12T20:01:25ZEstoy intentando realizar la integración con la implementanción de referencia, con el certificado enviado por AGESIC luego de enviado el formulario de solicitud, pero estoy teniendo el siguiente problema con el keystore que configure:<br /><br />com.gemalto.ics.rnd.egov.dss.sdk.exception.KeyStoreException: java.io.IOException: stream does not represent a PKCS12 key store<br />2017-06-12 15:56:07.706 INFO 2611 --- [nio-8080-exec-2] u.com.agesic.firma.RequestDSSController : BB387B29C66557B8D56A094A687555A4 NO PUDO SUBIR EL ARCHIVO<br /><br /><br />Qué keystore configuro? Lo tengo que generar ? <br /><br /><br />keystore.route=/home/local/DOMST/dmenendez/Desktop/esign-releases/certs/AGESIC-COESYS-DSS-TESTING.cerDiego Menendez2017-06-12T20:01:25Z