You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@santuario.apache.org by co...@apache.org on 2014/07/16 16:46:43 UTC
svn commit: r1611032 - in
/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations:
IntegrityHmac.java SignatureBaseRSA.java SignatureDSA.java
SignatureECDSA.java
Author: coheigea
Date: Wed Jul 16 14:46:43 2014
New Revision: 1611032
URL: http://svn.apache.org/r1611032
Log:
Fixing some NPEs + consolidating some code
Modified:
santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/IntegrityHmac.java
santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureBaseRSA.java
santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureDSA.java
santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureECDSA.java
Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/IntegrityHmac.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/IntegrityHmac.java?rev=1611032&r1=1611031&r2=1611032&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/IntegrityHmac.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/IntegrityHmac.java Wed Jul 16 14:46:43 2014
@@ -134,7 +134,10 @@ public abstract class IntegrityHmac exte
*/
protected void engineInitVerify(Key secretKey) throws XMLSignatureException {
if (!(secretKey instanceof SecretKey)) {
- String supplied = secretKey.getClass().getName();
+ String supplied = null;
+ if (secretKey != null) {
+ supplied = secretKey.getClass().getName();
+ }
String needed = SecretKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -190,19 +193,7 @@ public abstract class IntegrityHmac exte
* @throws XMLSignatureException
*/
protected void engineInitSign(Key secretKey) throws XMLSignatureException {
- if (!(secretKey instanceof SecretKey)) {
- String supplied = secretKey.getClass().getName();
- String needed = SecretKey.class.getName();
- Object exArgs[] = { supplied, needed };
-
- throw new XMLSignatureException("algorithms.WrongKeyForThisOperation", exArgs);
- }
-
- try {
- this.macAlgorithm.init(secretKey);
- } catch (InvalidKeyException ex) {
- throw new XMLSignatureException("empty", ex);
- }
+ engineInitSign(secretKey, (AlgorithmParameterSpec)null);
}
/**
@@ -216,7 +207,10 @@ public abstract class IntegrityHmac exte
Key secretKey, AlgorithmParameterSpec algorithmParameterSpec
) throws XMLSignatureException {
if (!(secretKey instanceof SecretKey)) {
- String supplied = secretKey.getClass().getName();
+ String supplied = null;
+ if (secretKey != null) {
+ supplied = secretKey.getClass().getName();
+ }
String needed = SecretKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -224,7 +218,11 @@ public abstract class IntegrityHmac exte
}
try {
- this.macAlgorithm.init(secretKey, algorithmParameterSpec);
+ if (algorithmParameterSpec == null) {
+ this.macAlgorithm.init(secretKey);
+ } else {
+ this.macAlgorithm.init(secretKey, algorithmParameterSpec);
+ }
} catch (InvalidKeyException ex) {
throw new XMLSignatureException("empty", ex);
} catch (InvalidAlgorithmParameterException ex) {
Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureBaseRSA.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureBaseRSA.java?rev=1611032&r1=1611031&r2=1611032&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureBaseRSA.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureBaseRSA.java Wed Jul 16 14:46:43 2014
@@ -96,7 +96,10 @@ public abstract class SignatureBaseRSA e
/** @inheritDoc */
protected void engineInitVerify(Key publicKey) throws XMLSignatureException {
if (!(publicKey instanceof PublicKey)) {
- String supplied = publicKey.getClass().getName();
+ String supplied = null;
+ if (publicKey != null) {
+ supplied = publicKey.getClass().getName();
+ }
String needed = PublicKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -136,7 +139,10 @@ public abstract class SignatureBaseRSA e
protected void engineInitSign(Key privateKey, SecureRandom secureRandom)
throws XMLSignatureException {
if (!(privateKey instanceof PrivateKey)) {
- String supplied = privateKey.getClass().getName();
+ String supplied = null;
+ if (privateKey != null) {
+ supplied = privateKey.getClass().getName();
+ }
String needed = PrivateKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -144,7 +150,11 @@ public abstract class SignatureBaseRSA e
}
try {
- this.signatureAlgorithm.initSign((PrivateKey) privateKey, secureRandom);
+ if (secureRandom == null) {
+ this.signatureAlgorithm.initSign((PrivateKey) privateKey);
+ } else {
+ this.signatureAlgorithm.initSign((PrivateKey) privateKey, secureRandom);
+ }
} catch (InvalidKeyException ex) {
throw new XMLSignatureException("empty", ex);
}
@@ -152,19 +162,7 @@ public abstract class SignatureBaseRSA e
/** @inheritDoc */
protected void engineInitSign(Key privateKey) throws XMLSignatureException {
- if (!(privateKey instanceof PrivateKey)) {
- String supplied = privateKey.getClass().getName();
- String needed = PrivateKey.class.getName();
- Object exArgs[] = { supplied, needed };
-
- throw new XMLSignatureException("algorithms.WrongKeyForThisOperation", exArgs);
- }
-
- try {
- this.signatureAlgorithm.initSign((PrivateKey) privateKey);
- } catch (InvalidKeyException ex) {
- throw new XMLSignatureException("empty", ex);
- }
+ engineInitSign(privateKey, (SecureRandom)null);
}
/** @inheritDoc */
Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureDSA.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureDSA.java?rev=1611032&r1=1611031&r2=1611032&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureDSA.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureDSA.java Wed Jul 16 14:46:43 2014
@@ -123,7 +123,10 @@ public class SignatureDSA extends Signat
*/
protected void engineInitVerify(Key publicKey) throws XMLSignatureException {
if (!(publicKey instanceof PublicKey)) {
- String supplied = publicKey.getClass().getName();
+ String supplied = null;
+ if (publicKey != null) {
+ supplied = publicKey.getClass().getName();
+ }
String needed = PublicKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -172,7 +175,10 @@ public class SignatureDSA extends Signat
protected void engineInitSign(Key privateKey, SecureRandom secureRandom)
throws XMLSignatureException {
if (!(privateKey instanceof PrivateKey)) {
- String supplied = privateKey.getClass().getName();
+ String supplied = null;
+ if (privateKey != null) {
+ supplied = privateKey.getClass().getName();
+ }
String needed = PrivateKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -180,7 +186,11 @@ public class SignatureDSA extends Signat
}
try {
- this.signatureAlgorithm.initSign((PrivateKey) privateKey, secureRandom);
+ if (secureRandom == null) {
+ this.signatureAlgorithm.initSign((PrivateKey) privateKey);
+ } else {
+ this.signatureAlgorithm.initSign((PrivateKey) privateKey, secureRandom);
+ }
} catch (InvalidKeyException ex) {
throw new XMLSignatureException("empty", ex);
}
@@ -191,20 +201,7 @@ public class SignatureDSA extends Signat
* @inheritDoc
*/
protected void engineInitSign(Key privateKey) throws XMLSignatureException {
- if (!(privateKey instanceof PrivateKey)) {
- String supplied = privateKey.getClass().getName();
- String needed = PrivateKey.class.getName();
- Object exArgs[] = { supplied, needed };
-
- throw new XMLSignatureException("algorithms.WrongKeyForThisOperation", exArgs);
- }
-
- try {
- this.signatureAlgorithm.initSign((PrivateKey) privateKey);
- } catch (InvalidKeyException ex) {
- throw new XMLSignatureException("empty", ex);
- }
- size = ((DSAKey)privateKey).getParams().getQ().bitLength();
+ engineInitSign(privateKey, (SecureRandom)null);
}
/**
Modified: santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureECDSA.java
URL: http://svn.apache.org/viewvc/santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureECDSA.java?rev=1611032&r1=1611031&r2=1611032&view=diff
==============================================================================
--- santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureECDSA.java (original)
+++ santuario/xml-security-java/trunk/src/main/java/org/apache/xml/security/algorithms/implementations/SignatureECDSA.java Wed Jul 16 14:46:43 2014
@@ -236,7 +236,10 @@ public abstract class SignatureECDSA ext
protected void engineInitVerify(Key publicKey) throws XMLSignatureException {
if (!(publicKey instanceof PublicKey)) {
- String supplied = publicKey.getClass().getName();
+ String supplied = null;
+ if (publicKey != null) {
+ supplied = publicKey.getClass().getName();
+ }
String needed = PublicKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -280,7 +283,10 @@ public abstract class SignatureECDSA ext
protected void engineInitSign(Key privateKey, SecureRandom secureRandom)
throws XMLSignatureException {
if (!(privateKey instanceof PrivateKey)) {
- String supplied = privateKey.getClass().getName();
+ String supplied = null;
+ if (privateKey != null) {
+ supplied = privateKey.getClass().getName();
+ }
String needed = PrivateKey.class.getName();
Object exArgs[] = { supplied, needed };
@@ -288,7 +294,11 @@ public abstract class SignatureECDSA ext
}
try {
- this.signatureAlgorithm.initSign((PrivateKey) privateKey, secureRandom);
+ if (secureRandom == null) {
+ this.signatureAlgorithm.initSign((PrivateKey) privateKey);
+ } else {
+ this.signatureAlgorithm.initSign((PrivateKey) privateKey, secureRandom);
+ }
} catch (InvalidKeyException ex) {
throw new XMLSignatureException("empty", ex);
}
@@ -296,19 +306,7 @@ public abstract class SignatureECDSA ext
/** @inheritDoc */
protected void engineInitSign(Key privateKey) throws XMLSignatureException {
- if (!(privateKey instanceof PrivateKey)) {
- String supplied = privateKey.getClass().getName();
- String needed = PrivateKey.class.getName();
- Object exArgs[] = { supplied, needed };
-
- throw new XMLSignatureException("algorithms.WrongKeyForThisOperation", exArgs);
- }
-
- try {
- this.signatureAlgorithm.initSign((PrivateKey) privateKey);
- } catch (InvalidKeyException ex) {
- throw new XMLSignatureException("empty", ex);
- }
+ engineInitSign(privateKey, (SecureRandom)null);
}
/** @inheritDoc */