しかし、ロジスティック回帰分析のような計算処理を完全準同型暗号を用いて暗号化されたデータで行おうとすると計算処理が極端に増加する。NICTの専門家によると「データ処理にどれだけの時間がかかるのか、全く想像もつかない」というほどだ。しかし、NICTではその処理をできるだけ軽減するために2つの突破口を見いだした。
その1つは、機能に制約のある準同型暗号を利用することだ。完全準同型暗号はコンピュータに計算できる処理であれば何でもできるが、計算が非常に遅いというデメリットがある。その代わりに機能に制約があるが高速に計算が可能な準同型暗号を利用することで大幅な高速化が期待できる。
もちろん、機能に制約があるため、そのままではロジスティック回帰分析に使う指数関数や対数関数を計算することができない。そこで、それらの関数を2次関数(多項式)で近似することで、高速な準同型暗号でも計算が可能な手法を開発した。
つまり、本来の計算式よりも大幅に計算を簡略化しながら、正確ではないが実用上問題ないレベルの近似値を、暗号化データで求める手法を導き出したのだ。これにより、暗号化データであっても高速なデータ処理が可能になった。
もう1つは、サーバへの負荷をできるだけ少なくする工夫だ。元データをそのまま暗号化してサーバに送る(図2上)のではなく、データ提供者の側であらかじめデータ加工処理(2次関数計算の一部)を行うようにして、その結果を暗号化して送るようにした(図2下)。
サーバでは暗号化データの加算を行うだけにして、その中間結果(暗号化されている)をデータ分析者に渡す。ロジスティック回帰分析に必要な2次関数を復号したデータ分析者が手元で計算して最終結果を得るという運用方法をとることにした。この結果、NICTが開発した準同型暗号「SPHERE(スフィア)」を用いたシミュレーションでは、1億件のデータを汎用の計算サーバ1台で30分以内で処理可能なことを確認したという。
Copyright © ITmedia, Inc. All Rights Reserved.
製品カタログや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます。