# encryptionAlgorithm=algorithm 属性

#### 機能

暗号化のアルゴリズムを指定する。

Javaの規約にのっとりアルゴリズムを指定します。例を記します。

    algorithmName/feedbackMode/padding

Derbyではpaddingの種類にNoPaddingのみ指定できます。

もし暗号化アルゴリズムが指定されなかった場合、既定はDES/CBC/NoPaddingとなります。

暗号化についての詳細は、Derby ディベロッパーズ ガイドの「ディスク上のデータベースの暗号化」を参照してください。

#### 他の属性との組み合わせ

encryptionAlgorithm属性は、bootPassword=key属性とdataEncryption=true 属性と組み合わせて利用する必要があります。 さらに、encryptionProvider=providerName属性を指定してアルゴリズムを実装する暗号化プロバイダを指定することもできます。

認証およびSQL認証が有効な既存のデータベースには、データベース所有者だけが暗号化や再暗号化を行えます。 より詳細な情報は、Derby ディベロッパーズ ガイドの「ユーザ認証を有効にする」および「SQL標準認証モードを設定する」を参照してください。

#### 例

     -- 暗号化された新規データベースを作成する。
        jdbc:derby:encryptedDB;create=true;dataEncryption=true;
        encryptionProvider=com.sun.crypto.provider.SunJCE;
        encryptionAlgorithm=DESede/CBC/NoPadding;
        bootPassword=cLo4u922sc23aPe
    -- 既存のデータベースの暗号化を設定する。
        jdbc:derby:salesdb;dataEncryption=true;
        encryptionProvider=com.sun.crypto.provider.SunJCE;
        encryptionAlgorithm=DESede/CBC/NoPadding;
        bootPassword=cLo4u922sc23aPe

注: 指定されたプロバイダにて、指定されたアルゴリズムが利用できない場合、Derbyは例外を返します。
親トピック: データベース接続URLに属性を指定する。