Thanks for the quick review, Dag. Attaching a second rev of the patch which makes the tuple inner class private as you suggested: derby-3710-01-ab-digestPaddedPassword.diff.
I'm not sure why the tests don't work in your environment. One thing I have noticed about this test class is that all sorts of unexpected errors are intercepted in EncryptionAESTest.createAndPopulateDB(). So, for instance, the 192 bit test cases don't run for me under Java 5 because I get an unsupported key length exception on that platform--the test class swallows that exception, skips the test case, and continues merrily along. Have you tried Myrna's repro with and without the patch? Don't bother with my repro: if your platform doesn't support 192 bit encryption, then my repro will fail because of DERBY-4329.
The full regression tests ran cleanly for me on Java 5 on my Mac-
however, as I noted, on that platform the 192 bit test cases are silently ignored. Those test cases do run correctly for me on the beta Java 6 which I'm running on my Mac and, on that platform, the old-style harness tests run cleanly for me too. However, the full JUnit suite hangs for me on that platform-with and without this patch.
It seems to me that this patch fixes the problem and does not introduce any regressions which I can detect.