独立行政法人 情報通信研究機構
2015年1月19日
ポイント
- 暗号化したまま鍵長を伸ばすことができる準同型暗号方式を世界で初めて開発
- 100年以上の安全性確保が可能、暗号化線形回帰計算が従来比100倍程度に高速化
- プライバシーを保護したデータマイニングによる保険・医療等での統計処理への応用に期待
背景と課題
近年、データマイニング技術によるサービスが生まれています。この技術とデータを暗号化したまま様々な演算が行える準同型暗号を組み合わせることにより、プライバシーを保護した状態でのデータ処理が可能となります。応用の一例として、病歴や遺伝子情報などの統計処理を通じた、保険・医療等の分野でのデータ利活用が進むと期待されています。このようなシステムの運用においては、長期間にわたり暗号の安全性を保つ必要があり、定期的に鍵長の変更によるセキュリティレベルの更新を行わなければなりません。
鍵長の変更には2通りの実現方法がありますが、それぞれに問題がありました(図1参照)。暗号文を一度復号した後に、再びセキュリティレベルの高い暗号方式で暗号化する方法(既存技術1)では、復号した際のデータ漏えいの危険性があり、システム変更のコストを要していました。また、暗号文を復号せずに、セキュリティレベルのより高い暗号方式で暗号化する方法(既存技術2)では、データ形式を変換・分割しなければならないため、2度目の暗号化以降のデータ処理が不可能でした。
これらの問題により、既存技術では、暗号化されたデータを安全に利活用できる期間は、数年から数十年程度が限界となり、例えば、病歴や遺伝子情報など、その漏えいが起こった場合に、本人だけでなく親戚・子孫にまで影響のあるデータを長期的に扱うことは、現実的に難しいと考えられていました。
今回の成果
NICTは、暗号化されたデータのセキュリティレベルの更新処理と準同型演算処理を同時に実現する暗号方式を世界で初めて開発しました。これは、データを暗号化する際に暗号文をデータ領域と付加情報に分割し、付加情報を伸ばす技術を新たに開発したことによって実現しました(図2及び補足資料参照)。これにより、数十年程度が限界であった安全なデータ利活用の期間を100年以上に伸ばすことが可能になります。加えて、大幅なシステム変更を伴わずに、より強固な暗号システムへの移行が可能となるので、ITコストの節減にもつながります。
今後の展望
今後は、日本の人口を想定した一億件規模のデータを用い、保険やバイオインフォマティクスなどの分野で使われる計算を暗号化したまま行うことで、大規模なプライバシー保護データマイニングシステムが構築可能であることを実証し、実社会での応用を広げていきます。
本成果について、平成27年1月20日(火)~23日(金)に福岡県北九州市小倉で開催される「2015年暗号と情報セキュリティシンポジウム(SCIS2015)」で発表します。
補足資料
今回開発した暗号技術の概要
今回開発した暗号技術では、平文はベクトルとして表され、秘密鍵・公開鍵は行列として表現されています。暗号化処理では、公開鍵とノイズベクトルを使って付加情報を生成し、さらに、公開鍵とノイズベクトルで平文ベクトルのスクランブルを行います(図3左参照)。付加情報には平文ベクトルの情報が含まれていませんが、平文ベクトルのスクランブルを解除する際に必要な情報を含んでいます。暗号文は、この処理により得られた「付加情報」と「スクランブルされた平文ベクトル」の二つで構成されています。
その暗号文に対して復号処理を行うには、対応する秘密鍵で付加情報から復号に必要な情報を復元し、その情報とスクランブルされた平文ベクトルによって元の平文ベクトルを復元します(図3右参照)。
この暗号技術は、格子暗号という暗号技術をベースにしており、「格子の最短ベクトル問題」の計算が現実的に難しいことを安全性の根拠としています。この問題は、付加情報の長さ(次元)が長いほど難しくなります。つまり、付加情報の長さが長くなるように、公開鍵・秘密鍵のパラメータを選択することで、よりセキュリティレベルの高い暗号文を作ることができます。
セキュリティレベルの更新処理では、古い秘密鍵とセキュリティレベルの高い新しい秘密鍵から更新鍵を生成し、その更新鍵と新しい公開鍵を使って暗号文のセキュリティレベルを更新します。更新処理は、行列とベクトルの掛け算を利用して付加情報の長さを引き伸ばし、さらに、安全性を保つために、すべての成分が0の平文ベクトルに対応する暗号文を加えてランダム化することで実現しています(図4参照)。更新処理された暗号文は、元の暗号文よりも長い付加情報を持つため、セキュリティレベルが高いより安全な暗号文になります。
この更新処理は、暗号文に対応する秘密鍵の変更をサーバに安全に委託できる「代理再暗号化」という技術を応用しています。ただし、従来の代理再暗号化技術では、暗号文に対応する秘密鍵の更新はできますが、セキュリティレベルの更新は実現されていませんでした。
用語解説
暗号化されたデータに対して加算と乗算を行うことができる技術。加算・乗算を組み合わせることで様々な計算を暗号化したまま行えるため、プライバシーを保護したままのデータマイニングへの応用が期待されている。
正規の鍵を使わずに暗号文を解読する作業に必要な計算時間を計る目安。一般的に、暗号の鍵が長ければ長いほど解読に時間がかかるため、セキュリティレベルが高くなる。通常の暗号では、暗号化した後にセキュリティレベルを変更することはできない。
Web上のショッピングサイトでの閲覧・購入履歴、交通システムにおける乗降データ、遺伝子情報と疾患の関係など、人が処理できないほどの膨大なデータから、コンピュータを用いて有用な情報を引き出すこと。引き出すための技術は、統計学・人工知能・機械学習などコンピュータサイエンス分野の多岐にわたる。一方で、分析対象のデータが個人のプライバシーを含んでいたときに、それらをどう管理するかという問題があり、暗号技術は解決策の一つとして期待されている。データ分析のための基本的技術として、線形回帰計算がある。
現在社会で使われている暗号方式は、暗号解読技術の進化などにより、暗号化したデータが解読される危険性が年とともに増加する。その対策として、日本の電子政府推奨暗号プロジェクト(CRYPTREC)や米国の国立標準技術研究所(NIST)などが暗号方式を監視し、定期的な鍵の更新や、鍵長の変更によるセキュリティレベルの更新をユーザーに推奨している。それぞれの暗号方式に対して、世界中の研究者の研究結果をもとに、コンピュータ性能の進化、攻撃アルゴリズムの進化などの未来予測を行い、鍵長と耐用年数の関係を導出し、その時々で必要な鍵長の指針を示している。しかし、未来予測の難しさや暗号方式の切替えを前提としていることなどから、高々、数十年程度の使用を想定した鍵長しか公表されていない。これらの事情から、暗号化したデータを安全に活用できる期間は、最悪の場合、数十年程度となる可能性がある。
統計学における分析手法の一種である。分析対象のデータがあるパターンを持っていると予想されるときに、その関係を表す数式を計算する手法。計算した数式を用いて、様々な形の予測が可能になる。
暗号技術を応用して安全に線形回帰計算を実現した研究の中で、特に実行速度を重視したものに [“Privacy-Preserving Ridge Regression on Hundreds of Millions of Records”, IEEE Symposium on Security and Privacy 2013] がある。この研究では、準同型暗号の一種である「Paillier暗号」をベースに「秘匿回路」という技術を組み合わせて線形回帰計算を実現している。しかし、Paillier暗号は、少なくとも300桁程度の整数を扱う必要があり、また、秘匿回路の構成は非常に複雑であるため、計算時間がかかる。
一方、今回開発した暗号技術では、線形回帰計算は、長くても数十桁程度の整数の行列やベクトルの加算・乗算で実現できるため、従来よりも高速な計算が可能になる。さらに、並列計算も容易なことから、多数のコンピュータを利用することで、大幅に計算時間を短縮することができる。
本件に関する問い合わせ先
ネットワークセキュリティ研究所
セキュリティ基盤研究室
セキュリティ基盤研究室
レ チュウ フォン
Tel: 042-327-6217
E-mail:
広報
広報部 報道担当
廣田 幸子
Tel: 042-327-6923
Fax: 042-327-7587
E-mail: