office-gobmx/libxmlsec
Vladimir Glazounov 399171104d INTEGRATION: CWS sb83 (1.21.16); FILE MERGED
2008/02/01 13:30:08 sb 1.21.16.2: RESYNC: (1.21-1.22); FILE MERGED
2008/01/25 16:14:19 sb 1.21.16.1: #i84200# tunnel macosx-dylib-link-list for (potentially) OOo-built libs this module links against into this module's external build machinery (change to configure not reflected in configure.in---would be a waste of time)
2008-03-18 13:06:34 +00:00
..
prj INTEGRATION: CWS rt08 (1.8.2); FILE MERGED 2005-05-03 13:27:38 +00:00
makefile.mk INTEGRATION: CWS obo19 (1.15.2); FILE MERGED 2008-01-04 13:57:39 +00:00
readme.txt INTEGRATION: CWS xmlsec13 (1.1.2); FILE ADDED 2005-11-11 08:04:23 +00:00
xmlsec1-1.2.6.patch INTEGRATION: CWS sb83 (1.21.16); FILE MERGED 2008-03-18 13:06:34 +00:00

The XML Security library has been modified, so that there is NO verification
of the certificate during sign or verification operation. On Windows this was 
done in the function xmlSecMSCryptoX509StoreVerify (file 
src/mscrypto/x509vfy.c) and on UNIX in xmlSecNssX509StoreVerify 
(file src/nss/x509vfy.c).

This change requires that the XML Signature contains in 
Signature/KeyInfo/X509Data only entries which represent the same 
certificate.
The implementation creates certificates from all of the X509Data children
(X509IssuerSerial, X509Certificate) and used to iterate over all certificates,
verify them and return the first "good" certificate. Now the first one is 
used.

The X509IssuerSerial information is used by XML Security Library to find the 
certificate in the certificate store on the machine. The X509Certificate entry
is used to create a certificate no matter if this is already contained in the
certificate store.

Do not forget: Suggest to XML Security Library to provide a way to carry out 
signature operations without verification of certificates. There is flag
XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS that can be set in a 
xmlSecKeyInfoCtx (see function xmlSecNssKeyDataX509XmlRead, in file src/nss/x509.c),
which indicates such a possibility but it does not work.