アプリケーションレベルの暗号化:今日の課題

アプリケーションレベルで情報を暗号化すると、他のほぼすべての暗号化形式で可能な範囲よりもきめ細かな形で、慎重に扱うべきデータを保護し、アクセスを制御することができます。アプリケーションは、どのデータが慎重に扱うべきものであるかを正確に認識した上で選択的に保護を適用できるので、いろいろな意味でデータの暗号化と復号に恰好の場所です。また、アプリケーションはユーザ、役割、および権限付与についても認識していることが多く、それらに応じてアクセスを許可することが可能です。これに対し、ストレージシステム、ポータブルメディア、あるいはネットワークで使われている暗号化では、通常、データは「すべてかゼロか」を基準に暗号化されます。その理由は、これらのシステムではデータ区分や特定ユーザの権限についての認識がないので、選択的に暗号化を適用する能力が限られていることによります。アプリケーションレベルの暗号化はポリシベースとすることができ、PCI DSSなどの特定のデータ保護要求に合わせて構成することが出来ます。また、ターゲットを細かく絞って必要な場合のみ保護を行うことも可能です。この保護方法は厳密な制御と管理が行われることになりますが、デュアルコントロールやその他の層の手続き型保護も必要です。デュアルコントロールと手続き型保護は同時に使用され、コンプライアンス報告義務に関して直接支援します。

詳しくはこちら

アプリケーションレベルの暗号化を行えば、特定のアプリケーションとビジネスプロセスのニーズに合わせてデータ保護のタイプを調整し、慎重に取り扱うべきほとんどのデータについて、最大限の保証性を実現することができます。さらに、アプリケーションレベルでデータを保護した場合、データベースやファイルシステム、ストレージ環境などの下流側システムで見えるのは、暗号化された情報だけになります。下流側システムが、データを読み取り可能なフォーマットに変換する手段を持っておらず、変換を行うシステムから分離されている場合は、これらの下流側システムをコンプライアンスおよび監査目的の範囲から除外することができます。しかし、アプリケーションレベルの暗号化の実装を検討している組織は、いくつかの課題に直面します。

  • アプリケーションレベルの暗号化を追加または変更する場合は、通常、アプリケーションの変更が必要になりますが、これはあらゆる状況に適用できるわけではありません。たとえば、既成のソフトウェアやクラウドサービスでは、アプリケーションに変更を加えることはできません。アプリケーションが自社で独自に開発したものであったとしても、アプリケーションの変更に必要なスキルとリソースがもはや使用できなくなっている可能性もあります。
  • 数多くの異なるビジネスアプリケーションが関係している場合は、アプリケーションレベルの暗号化をすべてのアプリケーションに同じ方法で適用しようとすると、技術上の問題と組織上の問題が同時に発生する恐れがあります。
  • 暗号化はCPUに負担がかかるタスクとなりやすく、貴重なシステムリソースを消費する傾向があるので、アプリケーション層に暗号化を組み込む場合は、性能面での潜在的なボトルネックを特定するという課題に対応する必要があります。
  • アプリケーションレベルの暗号化を考える場合は、他のシステムとのデータ交換方法を考慮する必要があります。たとえば、複数のシステムが同じデータを共有しており、そのデータが特別なフォーマットになることが予想される場合は、一方のシステムに暗号化を追加することによって他のシステムを壊してしまうのを避けるための手順を講じる必要があります。この場合は、フォーマットを維持したまま暗号化するという選択肢が有効です。

暗号化されたデータをアプリケーション間で共有するということは、鍵を共有することを意味しますが、これは共有信頼性モデルに依存し、場合によっては鍵管理システムも共有することになります。

セクションを隠す

リスク

  • 攻撃者は、アプリケーションの監視やデバッギングなどのタスクに使うための開発ツールを使用して暗号鍵にアクセスしたり、暗号をオフにしてアプリケーション内の情報のロックを解除したりすることができます。
  • アプリケーションへの暗号化機能追加を行う開発者は、自分自身で複雑な暗号化アルゴリズムを実装しようとする傾向があります。このようなやり方は不要なセキュリティ上の欠陥を招く恐れがあるので、通常は、あらかじめ実証済みの暗号実装を使用するのが最良の方法です。
  • アプリケーションコードに暗号化を追加するという選択自体にも課題はありますが、鍵管理の問題に比べれば大した問題ではありません。不適切な鍵管理は情報の盗難を招いたり情報を使用できなくなったりする結果を招きかねないので、開発者は、ネイティブの鍵管理機能を組み込むか、外部的な鍵管理システムに依存するかを決定する必要があります。
  • 扱うデータ量が多く、の高速処理を要求されるアプリケーションでは、暗号化が性能を低下させ、キャパシティを頭打ちにして待ち時間を発生させる可能性があります。特に、暗号化を後からアプリケーションに追加した場合はその傾向が強くなります。

アプリケーションレベルの暗号化:Thales e-Securityソリューション

Thales e-Securityの製品とサービスは、最も慎重に扱うべきアプリケーションに対して、アプリケーションレベルのデータ保護を導入する助けとなります。完全に自動化された扱うデータの多いアプリケーションから、しっかり管理され扱うデータは少ないながら扱いに細心の注意が必要なアプリケーションに至るまで、非常に広範なアプリケーションを扱うことのできるフレキシビリティを備えたタレスのソリューションは、クリティカルアプリケーションが必要とするデータ保護と運用効率を実現します。

nShieldハードウェアセキュリティモジュール(HSM)は、暗号プロセスを安全に実行し、鍵情報を確実に保護・管理できる信頼性の高いプラットフォームを作成します。信頼性が確保された層は、アプリケーションが通常実行されるオープンシステムソフトウェア環境に内在するリスクを解消します。nShield HSMを使用すれば、開発者と組織は考え得る最善のソリューション、すなわち、すでに認定された実績ある暗号ライブラリを活用することができ、ネイティブの暗号化オフロード機能と処理加速機能を使用し、さまざまな鍵管理ツールを利用して、高度な制御とフレキシビリティを実現することができます。nShield HSMは、耐タンパハードウェアの使用を通じて暗号操作のための高レベルの保証性を提供するだけでなく、ユニークなCodeSafe機能を通じて、より高レベルのアプリケーションプロセスを物理的に保護する能力も提供します。

利点:

  • セキュリティが強化されたフレキシブルなデータ保護プラットフォームに、多様なセキュリティポリシとプロセスをマッピングすることによって、さまざまなアプリケーションのセキュリティを確保します。
  • 性能や管理性を損なうことなく、ハードウェアベースのセキュリティの利点を生かします。
  • 特に注意すべきコードをHSM内のセキュアな実行環境で実行します。
  • 信頼性に裏付けられた導入、実装プロジェクトの加速:最先端ベンダとタレスの協力関係により、広範なアプリケーションや開発プラットフォームとの互換性が事前に証明されたHSMが提供されます。
  • 暗号プロセスをHSMにオフロードすることによって、高いレベルのアプリケーション性能を維持します。
  • ポリシ定義の合理化と重要ビジネスプロセスの監査性の改善を通じて、コンプライアンス報告を単純化します。