You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by mu...@apache.org on 2007/07/19 20:48:02 UTC
svn commit: r557731 -
/xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java
Author: mullan
Date: Thu Jul 19 11:48:01 2007
New Revision: 557731
URL: http://svn.apache.org/viewvc?view=rev&rev=557731
Log:
In validate method, get validation Key from the KeySelector in the
StaxValidateContext.
Modified:
xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java
Modified: xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java
URL: http://svn.apache.org/viewvc/xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java?view=diff&rev=557731&r1=557730&r2=557731
==============================================================================
--- xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java (original)
+++ xml/security/branches/stax_jsr105/src/com/r_bg/stax/XMLSignatureWorker.java Thu Jul 19 11:48:01 2007
@@ -9,6 +9,8 @@
import java.util.List;
import javax.xml.crypto.Data;
+import javax.xml.crypto.KeySelector;
+import javax.xml.crypto.KeySelectorException;
import javax.xml.crypto.KeySelectorResult;
import javax.xml.crypto.MarshalException;
import javax.xml.crypto.dsig.CanonicalizationMethod;
@@ -275,7 +277,17 @@
return false;
}
SignatureAlgorithm sa=new SignatureAlgorithm(si.signatureMethod);
- sa.initVerify(ctx.key);
+ // get key from KeySelector
+ KeySelectorResult ksr = null;
+ try {
+ ksr = ctx.getKeySelector().select(getKeyInfo(),
+ KeySelector.Purpose.VERIFY,
+ getSignedInfo().getSignatureMethod(),
+ validateContext);
+ } catch (KeySelectorException kse) {
+ throw new XMLSignatureException(kse);
+ }
+ sa.initVerify(ksr.getKey());
sa.update(si.bos.toByteArray());
return sa.verify(signatureValue);
} catch (org.apache.xml.security.signature.XMLSignatureException e) {