db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Rick Hillegas (JIRA)" <j...@apache.org>
Subject [jira] Commented: (DERBY-3710) cannot access a database using AES encryption with encryptionKeyLength=192 after it's been shutdown
Date Thu, 30 Jul 2009 16:51:14 GMT

    [ https://issues.apache.org/jira/browse/DERBY-3710?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12737171#action_12737171
] 

Rick Hillegas commented on DERBY-3710:
--------------------------------------

I believe that the bug is caused by special logic in JCECipherFactory. For AES encryption,
we pad the encryption key to a 16 byte boundary. This means that for AES encryption, a 192
bit key is extended to 256 bits. An MD5 digest is appended to the encrypted key. At initial
boot time, this digest is computed on the unpadded value. But on subsequent boots, we check
the stored digest against a digest computed on the padded value. The reboot fails because
the unpadded digest does not equal the padded digest. I will submit a patch and test for this.

> cannot access a database using AES encryption with encryptionKeyLength=192 after it's
been shutdown
> ---------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-3710
>                 URL: https://issues.apache.org/jira/browse/DERBY-3710
>             Project: Derby
>          Issue Type: Bug
>          Components: Services
>    Affects Versions: 10.5.1.1
>         Environment: reproduced with ibm's jdk 1.5 and 1.6, and sun's jdk15. 
> AES encryption with encryptionKeyLength=192 requires unrestricted security policy jars
on your jvm
>            Reporter: Myrna van Lunteren
>            Assignee: Rick Hillegas
>         Attachments: repro-3710.sql, repro.sql
>
>
> Accessing a database created using encryptionAlgorithm: AES/CBC/NoPadding, and encryptionKeyLength=192
after it's been shutdown fails like so:
> -----------------------
> ERROR XJ040: Failed to start database 'encdbcbc_192', see the next exception for details.
> ERROR XBM06: Startup failed. An encrypted database cannot be accessed without the correct
boot password.
> ----------------------
> This does not occur when you use encryptionKeyLength=128 (does not require unrestricted
jars) nor encryptionKeyLength=256 (does require unrestricted policy jars).
> Note: our test (in derbyall): store/aes.sql does not test this, firstly it doesn't test
the larger sizes (because it would diff & fail unless you have been able to adjust your
jvm's policy jars), and secondly it doesn't shutdown before reconnecting.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message