[jboss-cvs] Picketbox SVN: r384 - in branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src: test/java/org/jboss/test/security/vault and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Feb 15 10:08:02 EST 2013


Author: tfonteyn
Date: 2013-02-15 10:08:02 -0500 (Fri, 15 Feb 2013)
New Revision: 384

Added:
   branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/
   branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/readme.txt
   branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/vault.jks
Modified:
   branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/main/java/org/picketbox/plugins/vault/PicketBoxSecurityVault.java
   branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/java/org/jboss/test/security/vault/SecurityVaultUnitTestCase.java
Log:
[BZ-908845]

Modified: branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/main/java/org/picketbox/plugins/vault/PicketBoxSecurityVault.java
===================================================================
--- branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/main/java/org/picketbox/plugins/vault/PicketBoxSecurityVault.java	2013-02-11 14:47:50 UTC (rev 383)
+++ branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/main/java/org/picketbox/plugins/vault/PicketBoxSecurityVault.java	2013-02-15 15:08:02 UTC (rev 384)
@@ -249,7 +249,7 @@
       uuid.append("LINE_BREAK");
       uuid.append(publicCert);
       
-      return Base64.encodeBytes(uuid.toString().getBytes()).getBytes();
+      return Base64.encodeBytes(uuid.toString().getBytes(), Base64.DONT_BREAK_LINES).getBytes();
    }
    
    /*
@@ -492,4 +492,4 @@
       catch(Exception e)
       {}
    }
-}
\ No newline at end of file
+}

Modified: branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/java/org/jboss/test/security/vault/SecurityVaultUnitTestCase.java
===================================================================
--- branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/java/org/jboss/test/security/vault/SecurityVaultUnitTestCase.java	2013-02-11 14:47:50 UTC (rev 383)
+++ branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/java/org/jboss/test/security/vault/SecurityVaultUnitTestCase.java	2013-02-15 15:08:02 UTC (rev 384)
@@ -60,7 +60,12 @@
    @Before
    public void setup() throws Exception
    {
-      String dir = StringUtil.getSystemPropertyAsString(dataDir);
+      setupEncryptionFilesDir(dataDir);
+   }
+
+   private void setupEncryptionFilesDir(String directoryName) {
+
+      String dir = StringUtil.getSystemPropertyAsString(directoryName);
       File encDir = new File(dir);
       
       if(encDir.exists() == false)
@@ -125,6 +130,42 @@
       byte[] sharedKey = vault.handshake(handshakeOptions);
       assertNotNull(sharedKey);
    }
+
+   @Test
+   public void testHandshakeForLongAlias() throws Exception
+   {
+
+      SecurityVault vault = SecurityVaultFactory.get();
+      String maskedPassword = getMaskedPassword("password1234", "87654321", 23);
+      String encDir = "${java.io.tmpdir}/long_alias_keystore/";
+      setupEncryptionFilesDir(encDir);
+
+      Map<String,Object> options = new HashMap<String,Object>();
+      options.put(PicketBoxSecurityVault.KEYSTORE_URL, "src/test/resources/long_alias_keystore/vault.jks");
+      options.put(PicketBoxSecurityVault.KEYSTORE_PASSWORD, maskedPassword);
+      options.put(PicketBoxSecurityVault.KEYSTORE_ALIAS, "superverylongvaultname");
+      options.put(PicketBoxSecurityVault.SALT, "87654321");
+      options.put(PicketBoxSecurityVault.ITERATION_COUNT, String.valueOf(23));
+      options.put(PicketBoxSecurityVault.ENC_FILE_DIR, encDir);
+
+      vault.init(options);
+      assertTrue("Vault is supposed to be initialized", vault.isInitialized());
+
+      Map<String,Object> handshakeOptions = new HashMap<String,Object>();
+      handshakeOptions.put(PicketBoxSecurityVault.PUBLIC_CERT, "superverylongvaultname");
+
+      byte[] sharedKey = vault.handshake(handshakeOptions);
+      assertNotNull(sharedKey);
+
+      boolean containsLineBreaks = false;
+      for (byte b: sharedKey) {
+         if (b == '\n') {
+            containsLineBreaks = true;
+            break;
+         }
+      }
+      assertFalse("Shared key returned from hadshake cannot contain line break character", containsLineBreaks);
+   }
    
    @Test
    public void testStoreAndRetrieve() throws Exception
@@ -201,4 +242,4 @@
       
       return options;
    }
-}
\ No newline at end of file
+}

Added: branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/readme.txt
===================================================================
--- branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/readme.txt	                        (rev 0)
+++ branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/readme.txt	2013-02-15 15:08:02 UTC (rev 384)
@@ -0,0 +1,2 @@
+Keystore created using:
+keytool -genkey -alias superverylongvaultname -keyalg RSA -keysize 2048  -keystore vault.jks -storepass password1234 -keypass password1234 -dname "CN=vault,O=example.com"

Added: branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/vault.jks
===================================================================
(Binary files differ)


Property changes on: branches/4.0.14.Final_BZ_908845/security-jboss-sx/jbosssx/src/test/resources/long_alias_keystore/vault.jks
___________________________________________________________________
Added: svn:mime-type
   + application/x-java-keystore



More information about the jboss-cvs-commits mailing list