[java-opensaml COMMIT] in /trunk: opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/encryption/Decrypter.java o...

noreply at shibboleth.net noreply at shibboleth.net
Wed Feb 26 20:10:54 EST 2014


Author: putmanb
Date: Wed Feb 26 20:10:53 2014
New Revision: 3653

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3653&view=rev
Log:
Work on OSJ-64: Add support to Decrypters for algorithm whitelist and blacklist eval.
Add constructor variants that take DecryptionParameters as well as collections of white-/blacklist algo strings.
Tighten up Decrypter interface exposure of setters and getters for constructor inputs.

Modified:
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/encryption/Decrypter.java
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/Decrypter.java
    trunk/opensaml-xmlsec-impl/src/test/java/org/opensaml/xmlsec/encryption/support/SimpleDecryptionTest.java

Modified: trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/encryption/Decrypter.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/encryption/Decrypter.java?rev=3653&r1=3652&r2=3653&view=diff
==============================================================================
--- trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/encryption/Decrypter.java (original)
+++ trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/encryption/Decrypter.java Wed Feb 26 20:10:53 2014
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.encryption;
 
+import java.util.Collection;
+
 import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
@@ -30,6 +32,7 @@
 import org.opensaml.saml.saml2.core.EncryptedID;
 import org.opensaml.saml.saml2.core.NewEncryptedID;
 import org.opensaml.saml.saml2.core.NewID;
+import org.opensaml.xmlsec.DecryptionParameters;
 import org.opensaml.xmlsec.encryption.support.DecryptionException;
 import org.opensaml.xmlsec.encryption.support.EncryptedKeyResolver;
 import org.opensaml.xmlsec.keyinfo.KeyInfoCredentialResolver;
@@ -52,14 +55,42 @@
     /**
      * Constructor.
      *
+     * @param params decryption parameters to use
+     */
+    public Decrypter(DecryptionParameters params) {
+        super(params);
+    }
+    
+    /**
+     * Constructor.
+     * 
      * @param newResolver resolver for data encryption keys.
      * @param newKEKResolver resolver for key encryption keys.
      * @param newEncKeyResolver resolver for EncryptedKey elements
      */
     public Decrypter(@Nullable final KeyInfoCredentialResolver newResolver,
+            @Nullable final KeyInfoCredentialResolver newKEKResolver,
+            @Nullable final EncryptedKeyResolver newEncKeyResolver) {
+        
+        super(newResolver, newKEKResolver, newEncKeyResolver, null, null);
+    }
+    
+    /**
+     * Constructor.
+     *
+     * @param newResolver resolver for data encryption keys.
+     * @param newKEKResolver resolver for key encryption keys.
+     * @param newEncKeyResolver resolver for EncryptedKey elements
+     * @param whitelistAlgos collection of whitelisted algorithm URIs
+     * @param blacklistAlgos collection of blacklisted algorithm URIs
+     */
+    public Decrypter(@Nullable final KeyInfoCredentialResolver newResolver,
             @Nullable final KeyInfoCredentialResolver newKEKResolver, 
-            @Nullable final EncryptedKeyResolver newEncKeyResolver) {
-        super(newResolver, newKEKResolver, newEncKeyResolver);
+            @Nullable final EncryptedKeyResolver newEncKeyResolver,
+            @Nullable final Collection<String> whitelistAlgos,
+            @Nullable final Collection<String> blacklistAlgos) {
+        
+        super(newResolver, newKEKResolver, newEncKeyResolver, whitelistAlgos, blacklistAlgos);
     }
     
     /**

Modified: trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/Decrypter.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/Decrypter.java?rev=3653&r1=3652&r2=3653&view=diff
==============================================================================
--- trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/Decrypter.java (original)
+++ trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/encryption/support/Decrypter.java Wed Feb 26 20:10:53 2014
@@ -20,6 +20,7 @@
 import java.io.ByteArrayInputStream;
 import java.io.InputStream;
 import java.security.Key;
+import java.util.Collection;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.LinkedList;
@@ -58,6 +59,7 @@
 import org.opensaml.security.criteria.KeyAlgorithmCriterion;
 import org.opensaml.security.criteria.KeyLengthCriterion;
 import org.opensaml.security.criteria.UsageCriterion;
+import org.opensaml.xmlsec.DecryptionParameters;
 import org.opensaml.xmlsec.crypto.AlgorithmSupport;
 import org.opensaml.xmlsec.encryption.EncryptedData;
 import org.opensaml.xmlsec.encryption.EncryptedKey;
@@ -204,6 +206,12 @@
 
     /** Resolver for EncryptedKey instances which contain the encrypted data encryption key. */
     private EncryptedKeyResolver encKeyResolver;
+    

[... 276 lines stripped ...]


More information about the commits mailing list