[java-opensaml COMMIT] in /trunk: opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/DecryptionParametersResolver....

noreply at shibboleth.net noreply at shibboleth.net
Fri Mar 7 23:25:49 EST 2014


Author: putmanb
Date: Fri Mar  7 23:25:49 2014
New Revision: 3682

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3682&view=rev
Log:
Checkpoint some draft security configuration work:
Add named interfaces for 4 -Parameters resolvers.
Add 4 Static- resolver impls, for unit testing, etc
Significant changes to Encryption- and SignatureSigningConfiguration interfaces, reconcile with old SecurityConfiguration.
Started Basic- impls of the 4 -Configuration interfaces.

Added:
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/DecryptionParametersResolver.java   (with props)
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/EncryptionParametersResolver.java   (with props)
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/SignatureSigningParametersResolver.java   (with props)
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/SignatureValidationParametersResolver.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/BasicDecryptionConfiguration.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/BasicEncryptionConfiguration.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/BasicSignatureSigningConfiguration.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/BasicSignatureValidationConfiguration.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/StaticDecryptionParametersResolver.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/StaticEncryptionParametersResolver.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/StaticSignatureSigningParametersResolver.java   (with props)
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/impl/StaticSignatureValidationParametersResolver.java   (with props)
Modified:
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/EncryptionConfiguration.java
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/SecurityConfigurationSupport.java
    trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/SignatureSigningConfiguration.java
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/config/DefaultSecurityConfigurationBootstrap.java
    trunk/opensaml-xmlsec-impl/src/main/java/org/opensaml/xmlsec/config/GlobalSecurityConfigurationInitializer.java

Modified: trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/EncryptionConfiguration.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/EncryptionConfiguration.java?rev=3682&r1=3681&r2=3682&view=diff
==============================================================================
--- trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/EncryptionConfiguration.java (original)
+++ trunk/opensaml-xmlsec-api/src/main/java/org/opensaml/xmlsec/EncryptionConfiguration.java Fri Mar  7 23:25:49 2014
@@ -17,10 +17,11 @@
 
 package org.opensaml.xmlsec;
 
+import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 
 import org.opensaml.security.credential.Credential;
-import org.opensaml.xmlsec.keyinfo.KeyInfoGenerator;
+import org.opensaml.xmlsec.keyinfo.NamedKeyInfoGeneratorManager;
 
 
 /**
@@ -36,6 +37,29 @@
     @Nullable public Credential getDataEncryptionCredential();
     
     /**
+     * Get the encryption algorithm URI for the specified JCA key algorithm name and optional key
+     * length.
+     * 
+     * Passing <code>null</code> as the key length will return the default algorithm URI for the specified
+     * JCA algorithm, if a default is configured.  If no mapping for the specified key length is available,
+     * the default mapping will be returned.
+     * 
+     * @param jcaAlgorithmName a JCA key algorithm name
+     * @param keyLength  optional key length parameter
+     * @return an encryption algorithm URI, or null if no mapping is available
+     */
+    @Nullable public String getDataEncryptionAlgorithmURI(@Nonnull final String jcaAlgorithmName,
+            @Nullable final Integer keyLength);
+    
+    /**
+     * Get the encryption algorithm URI for the encryption key contained within the specified credential.
+     * 
+     * @param credential a credential containing an encryption key
+     * @return an encryption algorithm URI mapping, or null if no mapping is available
+     */
+    @Nullable public String getDataEncryptionAlgorithmURI(@Nonnull final Credential credential);
+    
+    /**
      * Get the encryption credential to use when encrypting the EncryptedKey.
      * 
      * @return the encryption credential
@@ -43,31 +67,54 @@
     @Nullable public Credential getKeyTransportEncryptionCredential();
     
     /**
-     * Get the encryption algorithm URI to use when encrypting the EncryptedData.

[... 199 lines stripped ...]


More information about the commits mailing list