SQL Anywhere Studio セキュリティ・ガイド
データベース管理者として、データベースの暗号化を使用して第三者によるデータの解読を困難にできます。データベースを安全に管理するために、簡単な暗号化または高度な暗号化のいずれかを選択できます。
| 警告 暗号化されたデータベースを圧縮すると、データベースから暗号化が削除されます。 |
簡単な暗号化は、難読化と同じです。これにより第三者は、ディスク・ユーティリティを使用してファイルを表示し、データベースのデータを解読することが困難になります。簡単な暗号化では、データベースの暗号化のためのキーは不要です。簡単な暗号化方式は、旧バージョンの SQL Anywhere Studio でサポートされています。
簡単な暗号化を使用するには、次の手順に従います。
dbinit -e オプションを使用して、データベースを作成します。
次の例では、簡単な暗号化を使用して、データベース test.db を作成します。
dbinit -p 4096 -e test.db
詳細については、dbinit コマンド・ライン・ユーティリティを使用したデータベースの作成を参照してください。
高度なデータベース暗号化方式では、キー (パスワード) がないとデータベースの操作やアクセスを行うことができません。アルゴリズムは、データベースやトランザクション・ログ・ファイルに含まれる情報にスクランブルをかけて解読できないようにしています。
| 警告 キーは保護してください。キーのコピーは、安全な場所に保管してください。キーを紛失すると、データベースにまったくアクセスできなくなり、リカバリも不可能になります。 |
AES は、Adaptive Server Anywhere の高度な暗号化を実装するために使用されているアルゴリズムです。これは、米国商務省標準技術局 (NIST:National Institute of Standards and Technology) によってブロック暗号のための新しい次世代標準暗号化方式 (AES:Advanced Encryption Standard) として選択されたブロック暗号化アルゴリズムです。
サポートされている 32 ビット Windows プラットフォームでは、AES_FIPS タイプを使用して、別個の FIPS 認定 AES アルゴリズムを高度な暗号化として指定することもできます。-fips オプションを指定してデータベース・サーバを起動する場合、AES または AES_FIPS の高度な暗号化方式で暗号化されたデータベースを実行できますが、簡単な暗号化方式で暗号化されたデータベースは実行できません。-fips を指定する場合、暗号化されていないデータベースをサーバ上で起動することもできます。
詳細については、-fips サーバ・オプションを参照してください。
AES_FIPS で暗号化されたデータベースを実行するマシンには、SQL Anywhere Studio セキュリティ・オプションをインストールしてください。
別途ライセンスを取得できるオプションが必要AES_FIPS を使用する高度なデータベース暗号化では、別途ライセンスの SQL Anywhere Studio セキュリティ・オプションを入手する必要があります。このセキュリティ・オプションは、輸出規制対象品目です。このコンポーネントのご注文については、別途ライセンスが入手可能なコンポーネントを参照してください。 |
高度な暗号化を使用して新しいデータベースを作成するには、次の方法を使用できます。
データベース初期化ユーティリティ (dbinit) と、高度な暗号化を有効にするための各種オプションの組み合わせ。
dbinit ユーティリティと -ek オプションまたは -ep オプションを使用すると、高度な暗号化を使用するデータベースが作成され、プロンプト・ボックスまたはコマンド・ラインで暗号化キーを指定することができます。dbinit -ea オプションは、暗号化アルゴリズムを AES、または FIPS 認定アルゴリズムの場合は AES_FIPS に設定します。
詳細については、初期化ユーティリティのオプションおよび初期化ユーティリティを参照してください。
CREATE DATABASE 文の ENCRYPTION 句。KEY オプションは暗号化キーを設定し、ALGORITHM オプションは暗号化アルゴリズムを AES、または FIPS 認定アルゴリズムの場合は AES_FIPS に設定します。
また、Sybase Central の [データベース作成] ウィザードを使用して、高度に暗号化されたデータベースを作成することもできます。
詳細については、CREATE DATABASE 文を参照してください。
データベースのアンロード・ユーティリティ (dbunload) と、新規データベースを高度な暗号化で作成するためのオプション。-an オプションは、新規データベースを作成します。高度な暗号化と暗号化キーをプロンプト・ボックスまたはコマンド・ラインで指定するには、-ek オプションまたは -ep オプションを使用します。-ea オプションは、暗号化アルゴリズムを AES、または FIPS 認定アルゴリズムの場合は AES_FIPS に設定します。
また、Sybase Central の [データベースのアンロード] ウィザードを使用して、高度に暗号化されたデータベースを作成することもできます。
詳細については、アンロード・ユーティリティのオプションおよびアンロード・ユーティリティを参照してください。
高度に暗号化されたデータベースを作成するには、次の手順に従います (SQL の場合)。
Interactive SQL から既存のデータベースに接続します。
ENCRYPTION 句、KEY オプション、ALGORITHM オプションを含む CREATE DATABASE 文を実行します。
たとえば、次の文は、FIPS 認定 AES 暗号化を使用して、C:¥ ディレクトリにデータベース・ファイル myencrypteddb.db を作成します。
CREATE DATABASE 'c:¥¥myencrypteddb' TRANSACTION LOG ON ENCRYPTED ON KEY '0kZ2o52AK#' ALGORITHM 'AES_FIPS'
高度に暗号化されたデータベースを作成するには、次の手順に従います (コマンド・プロンプトの場合)。
コマンド・プロンプトで、dbinit ユーティリティを使用してデータベースを作成します。コマンド・プロンプトまたはダイアログ・ボックスで暗号化キーを指定するには、-ek または -ep をそれぞれ指定します。
次のコマンドは、高度に暗号化されたデータベースを作成し、暗号化キーとアルゴリズムを指定します。
dbinit -ek "0kZ2o56AK#" -ea AES_FIPS "myencrypteddb.db"
コマンド・プロンプトからデータベースを起動します。
dbeng9 myencrypteddb.db -ek "0kZ2o56AK#"
暗号化キーの詳細については、DatabaseKey 接続パラメータ [DBKEY] を参照してください。
ほとんどのパスワードと同様、最善の方法は、簡単には推測できないキー値を選択することです。キーには 8 〜 30 文字の値を選択し、大文字と小文字、数字、文字、特殊文字を組み合わせて使用することをおすすめします。
| 警告 キーのコピーは、安全な場所に保管してください。キーは、データベースを起動したり変更したりするたびに必要になります。キーを紛失すると、データベースにまったくアクセスできなくなり、リカバリも不可能になります。 |
SQL Anywhere Studio 9.0.2
Copyright © 1989–2005 Sybase, Inc. Portions copyright © 2001–2005 iAnywhere Solutions, Inc. All rights reserved.