# encryptionAlgorithm=algorithm

#### Function

Specifies the algorithm for data encryption.

Use the Java conventions when you specify the algorithm, for example:

    algorithmName/feedbackMode/padding

The only padding type that is allowed with Derby is NoPadding.

If no encryption algorithm is specified, the default value is DES/CBC/NoPadding.

For information about data encryption, see "Encrypting Databases on Disk" in the Derby Developer's Guide.

#### Combining with other attributes

The encryptionAlgorithm attribute must be combined with the bootPassword=key attribute and the dataEncryption=true attribute. You have the option of also specifying the encryptionProvider=providerName attribute to specify the encryption provider of the algorithm.

#### Examples

     -- encrypt a new database
        jdbc:derby:encryptedDB;create=true;dataEncryption=true;
        encryptionProvider=com.sun.crypto.provider.SunJCE;
        encryptionAlgorithm=DESede/CBC/NoPadding;
        bootPassword=cLo4u922sc23aPe
    -- configure an existing database for encryption
        jdbc:derby:salesdb;dataEncryption=true;
        encryptionProvider=com.sun.crypto.provider.SunJCE;
        encryptionAlgorithm=DESede/CBC/NoPadding;
        bootPassword=cLo4u922sc23aPe

Note: If the specified provider does not support the specified algorithm, Derby returns an exception.
Parent topic: Setting attributes for the database connection URL
Related reference
bootPassword=key
create=true
createFrom=Path
databaseName=nameofDatabase
dataEncryption=true
encryptionKey=<key>
encryptionProvider=providerName
logDevice=logDirectoryPath
newEncryptionKey= <key>
newBootPassword = <new password>
password=userPassword
restoreFrom=Path
rollForwardRecoveryFrom=Path
shutdown=true
territory=ll_CC
user=userName
(no attributes)