[prev in list] [next in list] [prev in thread] [next in thread]
List: wss4j-dev
Subject: svn commit: r454102 - in
From: ruchithf () apache ! org
Date: 2006-10-08 8:47:20
Message-ID: 20061008084720.9355C1A981A () eris ! apache ! org
[Download RAW message or body]
Author: ruchithf
Date: Sun Oct 8 01:47:19 2006
New Revision: 454102
URL: http://svn.apache.org/viewvc?view=rev&rev=454102
Log:
- Allow extracting the SignatureConfirmation element from WSSecSignatureConfirmation \
after prepare.
- Handler derived key sizes properly - allow setting the sizes externally
Modified:
webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKEncrypt.java
webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKSign.java
webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDerivedKeyBase.java
webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecSignatureConfirmation.java
webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java
webservices/wss4j/trunk/src/org/apache/ws/security/util/WSSecurityUtil.java
Modified: webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKEncrypt.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKEncrypt.java?view=diff&rev=454102&r1=454101&r2=454102
==============================================================================
--- webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKEncrypt.java \
(original)
+++ webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKEncrypt.java \
Sun Oct 8 01:47:19 2006 @@ -237,7 +237,8 @@
* @see org.apache.ws.security.message.WSSecDerivedKeyBase#getDerivedKeyLength()
*/
protected int getDerivedKeyLength() throws WSSecurityException{
- return WSSecurityUtil.getKeyLength(this.symEncAlgo);
+ return (this.derivedKeyLength > 0) ? this.derivedKeyLength :
+ WSSecurityUtil.getKeyLength(this.symEncAlgo);
}
}
Modified: webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKSign.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKSign.java?view=diff&rev=454102&r1=454101&r2=454102
==============================================================================
--- webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKSign.java \
(original)
+++ webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDKSign.java Sun \
Oct 8 01:47:19 2006 @@ -80,6 +80,7 @@
private WSDocInfo wsDocInfo;
+
public Document build(Document doc, WSSecHeader secHeader)
throws WSSecurityException, ConversationException {
@@ -432,13 +433,12 @@
}
-
-
/**
* @see org.apache.ws.security.message.WSSecDerivedKeyBase#getDerivedKeyLength()
*/
protected int getDerivedKeyLength() throws WSSecurityException {
- return WSSecurityUtil.getKeyLength(this.sigAlgo);
+ return (this.derivedKeyLength > 0) ? this.derivedKeyLength :
+ WSSecurityUtil.getKeyLength(this.sigAlgo);
}
Modified: webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDerivedKeyBase.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDerivedKeyBase.java?view=diff&rev=454102&r1=454101&r2=454102
==============================================================================
--- webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDerivedKeyBase.java \
(original)
+++ webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecDerivedKeyBase.java \
Sun Oct 8 01:47:19 2006 @@ -100,6 +100,8 @@
private int wscVersion = ConversationConstants.DEFAULT_VERSION;
+ protected int derivedKeyLength = -1;
+
/**
* @param ephemeralKey The ephemeralKey to set.
*/
@@ -251,4 +253,7 @@
return this.dkt.getElement();
}
+ public void setDerivedKeyLength(int keyLength) {
+ this.derivedKeyLength = keyLength;
+ }
}
Modified: webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecSignatureConfirmation.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecSignatureConfirmation.java?view=diff&rev=454102&r1=454101&r2=454102
==============================================================================
--- webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecSignatureConfirmation.java \
(original)
+++ webservices/wss4j/trunk/src/org/apache/ws/security/message/WSSecSignatureConfirmation.java \
Sun Oct 8 01:47:19 2006 @@ -22,6 +22,7 @@
import org.apache.ws.security.message.token.SignatureConfirmation;
import org.apache.ws.security.util.WSSecurityUtil;
import org.w3c.dom.Document;
+import org.w3c.dom.Element;
/**
* Builds a WS SignatureConfirmation and inserts it into the SOAP Envelope.
@@ -128,5 +129,16 @@
return null;
}
return sc.getID();
+ }
+
+ /**
+ * Get the SignatureConfirmation element generated during
+ * <code>prepare()</code>.
+ *
+ * @return Return the SignatureConfirmation element or null if \
<code>prepare()</code> + * was not called before.
+ */
+ public Element getSignatureConfirmationElement() {
+ return (this.sc != null) ? this.sc.getElement() : null;
}
}
Modified: webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java?view=diff&rev=454102&r1=454101&r2=454102
==============================================================================
--- webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java \
(original)
+++ webservices/wss4j/trunk/src/org/apache/ws/security/processor/SignatureProcessor.java \
Sun Oct 8 01:47:19 2006 @@ -201,7 +201,9 @@
DerivedKeyTokenProcessor dktProcessor = \
(DerivedKeyTokenProcessor) wsDocInfo
.getProcessor(id);
String signatureMethodURI = \
sig.getSignedInfo().getSignatureMethodURI();
- int keyLength = WSSecurityUtil.getKeyLength(signatureMethodURI);
+ int keyLength = (dkt.getLength() > 0) ? dkt.getLength() :
+ WSSecurityUtil.getKeyLength(signatureMethodURI);
+
secretKey = dktProcessor.getKeyBytes(keyLength);
} else {
if (crypto == null) {
Modified: webservices/wss4j/trunk/src/org/apache/ws/security/util/WSSecurityUtil.java
URL: http://svn.apache.org/viewvc/webservices/wss4j/trunk/src/org/apache/ws/security/util/WSSecurityUtil.java?view=diff&rev=454102&r1=454101&r2=454102
==============================================================================
--- webservices/wss4j/trunk/src/org/apache/ws/security/util/WSSecurityUtil.java \
(original)
+++ webservices/wss4j/trunk/src/org/apache/ws/security/util/WSSecurityUtil.java Sun \
Oct 8 01:47:19 2006 @@ -18,10 +18,6 @@
package org.apache.ws.security.util;
-import java.util.Set;
-import org.apache.ws.security.handler.WSHandlerResult;
-import java.util.Iterator;
-import java.security.cert.X509Certificate;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.ws.security.SOAP11Constants;
@@ -31,11 +27,11 @@
import org.apache.ws.security.WSSecurityEngineResult;
import org.apache.ws.security.WSSecurityException;
import org.apache.ws.security.handler.WSHandlerConstants;
+import org.apache.ws.security.handler.WSHandlerResult;
import org.apache.ws.security.message.token.BinarySecurity;
import org.apache.ws.security.message.token.X509Security;
import org.apache.xml.security.algorithms.JCEMapper;
import org.apache.xml.security.signature.XMLSignature;
-import org.apache.ws.security.util.Base64;
import org.w3c.dom.Attr;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
@@ -49,9 +45,12 @@
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.namespace.QName;
+
import java.security.NoSuchAlgorithmException;
-import java.security.NoSuchProviderException;
import java.security.SecureRandom;
+import java.security.cert.X509Certificate;
+import java.util.Iterator;
+import java.util.Set;
import java.util.Vector;
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: wss4j-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wss4j-dev-help@ws.apache.org
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic