<html><head><style type="text/css"><!-- DIV {margin:0px} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt"><DIV style="FONT-SIZE: 12pt; FONT-FAMILY: times new roman, new york, times, serif">
<DIV>Hi Jurgen,</DIV>
<DIV> </DIV>
<DIV>Do you have a dsig:KeyName specified ? Take out this element manually and re-verify. I have seen this also. However I do not get a crash. I believe that on a Verify if both X509Certificate is present and KeyName is present, xmlsec still tries to retrieve the certificate from the KeyMngr which will then go on to the Microsoft CryptoStore if not found in the KeysMngr. </DIV>
<DIV> </DIV>
<DIV>I would wager, but Alexsey is the expert, that it might be a good idea to ignore the KeyName if an X509Certificate is present when Verifying. After all the reason it got there in the first place is that it was used to select the cert/key when you originally signed it with xmlsec and is left over from the sign operation. It will verify fine if you manually remove the KeyName. Comments Alexsey ? </DIV>
<DIV> </DIV>
<DIV>Ed<BR><BR>----- Original Message ----<BR>From: Aleksey Sanin <aleksey@aleksey.com><BR>To: Jürgen Heiss <jheiss@Mesonic.com><BR>Cc: xmlsec@aleksey.com<BR>Sent: Wednesday, May 31, 2006 11:23:21 AM<BR>Subject: Re: [xmlsec] RE: Need urgent help for verify<BR><BR></DIV>
<DIV>No. Please, provide the stack trace for the crash.<BR><BR>Aleksey<BR><BR>Jürgen Heiss wrote:<BR>> Does really now one have any idea? <BR>> Hi,<BR>> <BR>> I use the following code to verify a signed file.<BR>> The problem is now, the xmlSecDSigCtxVerify crahses if the certificate <BR>> isn't installed on my machine!?!<BR>> How can I check this file? Can I excract the certificate and load it <BR>> into a xmlSecKeysMngrPtr?<BR>> <BR>> thanks for any help.<BR>> <BR>> <some code> <BR>> <BR>> <BR>> if(xmlSecDSigCtxInitialize(&dsigCtx, gKeysMngr) < 0)<BR>> return (V_INTERNAL);<BR>> <BR>> if(xmlSecAppPrepareDSigCtx(&dsigCtx) < 0)<BR>> {<BR>> xmlSecDSigCtxFinalize(&dsigCtx);<BR>> return
V_INTERNAL;<BR>> }<BR>> <BR>> /* parse template and select start node */<BR>> data = xmlSecAppXmlDataCreate(filename, xmlSecNodeSignature, xmlSecDSigNs);<BR>> if(data == NULL)<BR>> {<BR>> xmlSecDSigCtxFinalize(&dsigCtx);<BR>> if(data != NULL)<BR>> xmlSecAppXmlDataDestroy(data);<BR>> return V_INTERNAL;<BR>> }<BR>> <BR>> /* sign */<BR>> start_time = clock();<BR>> if(xmlSecDSigCtxVerify(&dsigCtx, data->startNode) < 0)<BR>> <BR>> <BR>> ------------------------------------------------------------------------<BR>> <BR>> _______________________________________________<BR>> xmlsec mailing list<BR>> xmlsec@aleksey.com<BR>> <A href="http://www.aleksey.com/mailman/listinfo/xmlsec"
target=_blank>http://www.aleksey.com/mailman/listinfo/xmlsec</A><BR>_______________________________________________<BR>xmlsec mailing list<BR>xmlsec@aleksey.com<BR><A href="http://www.aleksey.com/mailman/listinfo/xmlsec" target=_blank>http://www.aleksey.com/mailman/listinfo/xmlsec</A></DIV></DIV></div></body></html>