大手電機メーカーで行われた「全社データベース暗号化」プロジェクト
では、前述の課題を踏まえ、どう暗号化を実践していけばよいか。ペンタセキュリティの暗号化ソリューション「D'Amo(ディアモ)」を活用した事例を通じて、その流れを見ていこう。D'Amoは2004年にリリースされ、今では主に3種類のソリューションをそろえている。
D'Amo BA(アプリケーション開発型)
業務アプリケーションの暗号化を実現する。アプリケーション開発者に向けて、暗号化ライブラリのパッケージを提供している。
D'Amo DP(商用データベース・プラグイン型)
データベースの暗号化を実現する。データベース基盤に、データ暗号化機能をプラグインとして提供する。「順序維持インデックス」と呼ばれる特許技術により、データベースのカラムを暗号化しても検索効率が低下しないのが特徴だ。
D'Amo KE(Windows OSカーネル型)
OSのファイル暗号化を実現する。実際は、WindowsサーバーOS内部のカーネル領域で暗号化するため、ユーザーアクセスに直接影響せず、「透過的暗号化」ともいえる。
D'Amoの大規模な事例として挙げられるのが、韓国の大手電機メーカーにおける“全社データベース暗号化”の取り組みだ。2010年から約2年半かけて行われ、一次プロジェクトから三次プロジェクトまでに分けて実施された。
暗号化の対象となるデータは、顧客および従業員の個人情報で、具体的には住民登録番号、運転免許番号、パスポート番号、電話番号を指す。国内全社だけでなく、海外の現地法人も対象となった。なお、この事例はEUのGDPR(一般データ保護規則)に対応する先進事例ともなった。
一次プロジェクトでは、国内の主要業務を担う個人情報統合データベース基盤と連携する、すべてのサーバーを対象とした。連携する業務アプリケーションの数は非常に多いため、すべてのアプリケーションの改修作業を行うことは現実的ではない。それゆえ、一元的にデータベース内の個人情報を暗号化するD'Amo DPのプラグイン方式を選択した。この方式を選択するメリットは、データカラムの暗号化後も既存のアプリケーションクエリーを維持できる作業工数の削減と、暗号化カラムの検索性を担保する順序維持インデックス機能などを活用することで、データベースの暗号化に伴う一般的な課題への対策を予め備えていることにある。
続く二次プロジェクトでは、部門レベルで完結する業務サーバーや外部のサードパーティ製のパッケージ製品が対象となる。これらの区分された業務システムでは、ダウンタイムの時間も比較的自由度があり、単独のアプリケーション開発となるため、D’Amo BAのAPI方式で業務アプリケーションに暗号化処理を実装する改修作業を実施した。この方式の最大のメリットは、データベースシステムに追加的な負荷や変更が要求されず、暗号化区間も長い点にある。処理効率を最適化するためには理想的だといえる。
ただし、他社が開発している外部のパッケージ製品に関しては、このようなアプリケーションの改修やデータベースの変更などが自由にできるわけではない。そこで採用したのが、D'Amo KEのOSカーネル方式による暗号化だ。ファイルシステムのデータファイルに限定された暗号化だが、同時にプロセス制御を付加することで、DBMSの内部プロセスに特化したアクセスに限定できる。これにより、ランサムウェアなどの悪性プログラムのアクセスをすべて排除することを可能にした。
最後の三次プロジェクトでは、海外の現地法人にあるシステムを暗号化した。海外法人の担当者にヒアリングを行い、個人情報があるサーバーを選別したうえで、現地法人の技術的な人的リソース問題と作業工数を最小化できる最善策として、アプリケーションの追加修正が不要なD'Amo DPデータベースのプラグイン方式を採用。本国の技術チームと共同でデータベースの暗号化を完了した。
すべての暗号化プロジェクトを終え、改めて暗号化前後の応答性能を評価したところ、プラグイン方式とAPI方式では、パフォーマンス差は3~5%台に収まっていたと美濃部氏。また、カーネル方式では、最大でもパフォーマンス差は0.04%にとどまっており、これらのシステムは現在に至るまで安定的に運用されているとのことだ。
当然だが、いずれの方式にもメリットとデメリットがあるため、自社にとって現実的に可能な暗号化方式を選択したうえで、最大限のセキュリティ強化策を図っていくことが重要だという。