[WSS4J] wss4j/src/org/apache/ws/security/message WSSignEnvelope.java,1.30,1.31 WSEncryptBody.java,1.29,1.30

[email protected] Fri, 13 Feb 2004 08:11:07 -0800
Newsgroups gmane.text.xml.wss4j
Message-ID <[email protected]>
Update of /cvsroot/wss4j/wss4j/src/org/apache/ws/security/message
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10700/src/org/apache/ws/security/message

Modified Files:
	WSSignEnvelope.java WSEncryptBody.java 
Log Message:
Add some functions to support SKI KeyIdentifier. Not tested yet, but
doesn't break existing functions.

Index: WSSignEnvelope.java
===================================================================
RCS file: /cvsroot/wss4j/wss4j/src/org/apache/ws/security/message/WSSignEnvelope.java,v
retrieving revision 1.30
retrieving revision 1.31
diff -u -d -r1.30 -r1.31
--- WSSignEnvelope.java	10 Feb 2004 15:22:19 -0000	1.30
+++ WSSignEnvelope.java	13 Feb 2004 16:11:05 -0000	1.31
@@ -304,6 +304,19 @@
             secRef.setX509IssuerSerial(data);
         } else if (keyIdentifierType == WSConstants.X509_KEY_IDENTIFIER) {
 			secRef.setKeyIdentifier(certs[0]);
+		} else if (keyIdentifierType == WSConstants.SKI_KEY_IDENTIFIER_DIRECT) {
+			secRef.setKeyIdentifierSKI(certs[0]);
+			X509Security token = new X509Security(doc);
+			token.setX509Certificate(certs[0]);
+			token.setID(certUri);
+			WSSecurityUtil.prependChildElement(
+				doc,
+				securityHeader,
+				token.getElement(),
+				false);
+			wsDocInfo.setBst(token.getElement());
+		} else if (keyIdentifierType == WSConstants.SKI_KEY_IDENTIFIER) {
+			secRef.setKeyIdentifierSKI(certs[0]);
         } else {
 			throw new WSSecurityException(
 				WSSecurityException.FAILURE,

Index: WSEncryptBody.java
===================================================================
RCS file: /cvsroot/wss4j/wss4j/src/org/apache/ws/security/message/WSEncryptBody.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -d -r1.29 -r1.30
--- WSEncryptBody.java	5 Feb 2004 18:28:35 -0000	1.29
+++ WSEncryptBody.java	13 Feb 2004 16:11:05 -0000	1.30
@@ -342,12 +342,12 @@
 		 * Up to now we support RSA 1-5 as public key algorithm
 		 */
 		X509Certificate remoteCert = null;
-        X509Certificate[] certs = crypto.getCertificates(user);
-        if (certs == null || certs.length <= 0) {
-            throw new WSSecurityException(WSSecurityException.FAILURE,
-                    "invalidX509Data", new Object[]{"for Encryption"});
-        }
-        remoteCert = certs[0];
+		X509Certificate[] certs = crypto.getCertificates(user);
+		if (certs == null || certs.length <= 0) {
+			throw new WSSecurityException(WSSecurityException.FAILURE,
+				"invalidX509Data", new Object[]{"for Encryption"});
+		}
+		remoteCert = certs[0];
 		if (tlog.isDebugEnabled()) {
 			t2 = System.currentTimeMillis();
 		}
@@ -573,11 +573,11 @@
 		if (symEncAlgo.equalsIgnoreCase(WSConstants.TRIPLE_DES)) {
 			keyGen = KeyGenerator.getInstance("DESede");
 		} else if (symEncAlgo.equalsIgnoreCase(WSConstants.AES_128)) {
-			keyGen = KeyGenerator.getInstance("2.16.840.1.101.3.4.2");
+			keyGen = KeyGenerator.getInstance("2.16.840.1.101.3.4.1.2");
 		} else if (symEncAlgo.equalsIgnoreCase(WSConstants.AES_192)) {
-			keyGen = KeyGenerator.getInstance("2.16.840.1.101.3.4.22");
+			keyGen = KeyGenerator.getInstance("2.16.840.1.101.3.4.1.22");
 		} else if (symEncAlgo.equalsIgnoreCase(WSConstants.AES_256)) {
-			keyGen = KeyGenerator.getInstance("2.16.840.1.101.3.4.42");
+			keyGen = KeyGenerator.getInstance("2.16.840.1.101.3.4.1.42");
 		} else {
 			return null;
 		}



-------------------------------------------------------
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from IBM. Click Now!
http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click