暗号化アルゴリズムの選択

更新 : 2008 年 11 月 17 日

暗号化は多層防御の 1 つであり、SQL Server のインスタンスに対するセキュリティ対策として利用することができます。

暗号化アルゴリズムは、非認証ユーザーでは容易に復元できないようなデータ変換が定義されます。SQL Server 2005 には、DES、Triple DES、RC2、RC4、128 ビット RC4、DESX、128 ビット AES、192 ビット AES、256 ビット AES など、複数のアルゴリズムがサポートされ、管理者および開発者が必要に応じて選択できるようになっています。

ms345262.note(ja-jp,SQL.90).gifメモ :
Windows XP または Windows Server 2000 では、AES 暗号化はサポートされません。

理想的なアルゴリズムは状況によって異なります。また、個々のアルゴリズムの利点についても、SQL Server Books Online では扱っていません。ただし、一般論としては、次のような原則があります。

  • 通常、強力な暗号化では、弱い暗号化よりも多くの CPU リソースを消費します。
  • 通常、短いキーより長いキーの方が、強力な暗号化を行えます。
  • 非対称暗号化は、同じキー長を使用した対称暗号化よりも強力ですが、処理速度は比較的遅くなります。
  • 長いキーを使用したブロック暗号は、ストリーム暗号よりも強力です。
  • 長い複雑なパスワードは、短いパスワードよりも強力です。
  • 大量のデータを暗号化する場合は、対称キーを使用してデータを暗号化し、非対称キーを使用して対称キーを暗号化します。
  • 暗号化されたデータは圧縮できませんが、圧縮されたデータは暗号化できます。圧縮を使用する場合、データを暗号化する前にデータを圧縮する必要があります。

暗号化アルゴリズムおよび暗号化テクノロジの詳細については、MSDN の『.NET Framework 開発者ガイド』で、「セキュリティの基本概念」を参照してください。

DES アルゴリズムに関する説明 :

  • DESX は不適切な名前でした。ALGORITHM = DESX を使用して作成された対称キーでは、実際には 192 ビット キーを使用した TRIPLE DES 暗号が使用されます。DESX アルゴリズムは提供されません。
  • ALGORITHM = TRIPLE_DES を使用して作成された対称キーでは、128 ビット キーを使用した TRIPLE DES が使用されます。

参照

その他の技術情報

暗号化階層
CREATE SYMMETRIC KEY (Transact-SQL)
CREATE ASYMMETRIC KEY (Transact-SQL)
CREATE CERTIFICATE (Transact-SQL)
暗号化の操作方法に関するトピック

ヘルプおよび情報

SQL Server 2005 の参考資料の入手

変更履歴

リリース 履歴

2006 年 4 月 14 日

追加内容 :
  • AES の利用に関する注記を追加。

2008 年 11 月 17 日

追加内容 :
  • DES アルゴリズムに関する説明を追加。