JP2020086116A - 情報処理装置および情報処理方法 - Google Patents

情報処理装置および情報処理方法 Download PDF

Info

Publication number
JP2020086116A
JP2020086116A JP2018220038A JP2018220038A JP2020086116A JP 2020086116 A JP2020086116 A JP 2020086116A JP 2018220038 A JP2018220038 A JP 2018220038A JP 2018220038 A JP2018220038 A JP 2018220038A JP 2020086116 A JP2020086116 A JP 2020086116A
Authority
JP
Japan
Prior art keywords
information processing
unit
encrypted
encryption
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018220038A
Other languages
English (en)
Inventor
篤史 内田
Atsushi Uchida
篤史 内田
信也 丸山
Shinya Maruyama
信也 丸山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2018220038A priority Critical patent/JP2020086116A/ja
Priority to US17/290,117 priority patent/US20220311621A1/en
Priority to PCT/JP2019/045275 priority patent/WO2020110830A1/ja
Priority to DE112019005865.7T priority patent/DE112019005865T5/de
Publication of JP2020086116A publication Critical patent/JP2020086116A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3093Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving Lattices or polynomial equations, e.g. NTRU scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Algebra (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】処理負担を軽減すると共によりセキュアな検索可能暗号技術を実現する。【解決手段】第1の分散鍵を用いて算出された第1のハッシュ値を端末から受信する通信部と、前記第1のハッシュ値に対し前記第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定する分割部と、を備え、前記通信部は、前記分割部により決定された前記分割単位に係る暗号化情報を前記端末に送信する、情報処理装置が提供される。【選択図】図5

Description

本開示は、情報処理装置および情報処理方法に関する。
近年、クラウドサービス等の普及に伴い、個人や企業などのデータをサービス提供者が管理するサーバに保管する場面が増加している。上記のようなサーバでは、セキュリティ性を確保するために、データの暗号化などを行うのが一般的である。また、近年では、例えば、特許文献1に記載されるように、データを暗号化したまま情報検索を実現する検索可能暗号技術も開発されている。
特開2016−200938号公報
しかし、特許文献1に記載の検索システムでは、クライアント端末から送信される文書を、クラウドに設置されるサーバ側で暗号化し、またインデックスの作成を行っている。このため、特許文献1に記載の検索システムでは、例えば、クライアントからの文書の送信時にデータを傍受された場合には、平文のままのデータが流出することとなる。
本開示によれば、第1の分散鍵を用いて算出された第1のハッシュ値を端末から受信する通信部と、前記第1のハッシュ値に対し前記第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定する分割部と、を備え、前記通信部は、前記分割部により決定された前記分割単位に係る暗号化情報を前記端末に送信する、情報処理装置が提供される。
また、本開示によれば、検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出する暗号化部と、前記第1のハッシュ値を外部装置に送信する通信部と、を備え、前記通信部は、前記第1のハッシュ値に対する第2の分散鍵を用いた準同型ハッシュ演算により算出された第2のハッシュ値と暗号化辞書とのマッチングに基づいて決定された、文書検索用の単語の分割単位に係る暗号化情報を前記外部装置から受信する、情報処理装置が提供される。
また、本開示によれば、プロセッサが、第1の分散鍵を用いて算出された第1のハッシュ値を端末から受信することと、前記第1のハッシュ値に対し前記第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定することと、
前記分割単位に係る暗号化情報を前記端末に送信することと、を含む、情報処理方法が提供される。
また、本開示によれば、プロセッサが、検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出することと、前記第1のハッシュ値を外部装置に送信することと、前記第1のハッシュ値に対する第2の分散鍵を用いた準同型ハッシュ演算により算出された第2のハッシュ値と暗号化辞書とのマッチングに基づいて決定された、文書検索用の単語の分割単位に係る暗号化情報を前記外部装置から受信することと、を含む、情報処理方法が提供される。
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の一実施形態に係る情報処理システムの構成例を示す図である。 同実施形態に係る情報処理端末の機能構成例を示すブロック図である。 同実施形態に係る情報処理サーバの機能構成例を示すブロック図である。 同実施形態に係る初期セットアップの流れを示す図である。 同実施形態に係る暗号化インデックス生成の流れを示す図である。 同実施形態に係る分割部により作成されるラティス構造の一例である。 同実施形態に係るインデックス保管部が有する、暗号化インデックスと文書の紐付きを示すテーブルの一例である。 同実施形態に係るデータ保管部が有する文書本体および文書IDが保管されるテーブルの一例である。 同実施形態に係る暗号化文書の検索について説明するための図である。 同実施形態に係る音声データの検索において、音声認識を情報処理端末側で行う場合の流れを示す図である。 同実施形態に係る音声データの検索において、音声認識を情報処理サーバ側で行う場合の流れを示す図である。 同実施形態に係るマルチユーザによる検索の共有について説明するための図である。 同実施形態に係る共有元ユーザと共有先ユーザの対応付けを示すテーブルの一例である。 本開示の一実施形態に係る情報処理端末と情報処理サーバのハードウェア構成例を示す図である。
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
なお、説明は以下の順序で行うものとする。
1.実施形態
1.1.背景
1.2.システム構成例
1.3.情報処理端末10の機能構成例
1.4.情報処理サーバ20の機能構成例
1.5.機能の詳細
2.ハードウェア構成例
3.まとめ
<1.実施形態>
<<1.1.背景>>
まず、本開示の一実施形態に係る背景について述べる。上述したように、近年では、クラウドサービス等の普及に伴い、個人や企業などのデータを、サービス提供者が管理するサーバに保管する場面が増加している。また、一般的なサーバでは、データベースを暗号化するなどの手法によりユーザのデータを保護している。
しかし、例えば、特許文献1に記載されるように、データの暗号化やインデックスの作成をサーバ側で行う場合、クライアントからのデータの送信時に当該データが傍受された場合や、暗号化前にサーバからデータが不正に取得された場合、平文のままのデータが流出することとなる。
また、一般的なクラウドサービスでは、データを復号するための復号鍵もサーバで管理あれている場合もあり、権限を有するサービス管理者やサービスベンダーであれば、当該復号鍵を用いてユーザデータを復号することも可能である。このような事態を防ぐためには、サーバ上に保管されるユーザデータを、ユーザが利用するユーザ端末のみで復号できるように制御することが重要となる。
ここで、上記のような制御を実現する手法としては、例えば、クライアント側によるユーザデータの暗号化が挙げられる。ユーザは、クライアント端末が管理するユーザの固有鍵(以下、固有鍵、とも称する)を用いて暗号化した暗号化データをサーバに送信・保管し、復号の際には、サーバからダウンロードした上記暗号化データを固有鍵を用いて復号することができる。
上記のようなクライアント側による暗号化技術によれば、通信時およびサーバでの処理・保管時に平文が露出することが一切ないため、よりセキュアな検索システムを実現することが可能である。また、当該暗号化技術によれば、復号鍵がサーバ上で管理されないため、上述したようなサービス管理者などによる不正なデータ取得を防止することが可能となる。
しかし、上記のように、クライアント側で検索用のインデックス作成を行う場合、インデックス作成に用いる辞書が肥大化し、クライアント側の処理を圧迫することも想定される。また、例えば、新語などへの対応のためには、上記の辞書を頻繁に更新することが求められ、更新のための通信コスト等も増大することとなる。
本開示に係る技術思想は、上記の点に着目して発想されたものであり、インデックス作成に必要な単語の分割をクライアントとサーバとで分散して実行し、処理負担を軽減すると共によりセキュアな検索可能暗号技術を実現するものである。
このために、本開示の一実施形態に係る情報処理端末10は、検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出する暗号化部130と、第1のハッシュ値を情報処理サーバ20に送信する通信部170を備える
また、本開示の一実施形態に係る情報処理サーバ20は、情報処理端末10から第1のハッシュ値を受信する端末通信部240と、受信されたハッシュ値に対し第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書236とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定する分割部210を備える。
以下、本開示の一実施形態に係る情報処理端末10および情報処理サーバ20が有する機能と、当該機能が奏する効果について詳細に説明する。
<<1.2.システム構成例>>
まず、本開示の一実施形態に係る情報処理システムの構成例について述べる。図1は、本実施形態に係る情報処理システムの構成例を示す図である。図1を参照すると、本実施形態に係る情報処理システムは、情報処理端末10および情報処理サーバ20を備える。また、情報処理端末10と情報処理サーバ20とは、互いに通信が行えるように、ネットワーク30を介して接続される。
(情報処理端末10)
本実施形態に係る情報処理端末10は、文書の検索等を行うユーザが使用する情報処理装置である。情報処理端末10は、例えば、PC(Personal Computer)、スマートフォン、タブレットなどであってもよい。
本実施形態に係る情報処理端末10は、検索対象となる文書や当該文書の検索に用いられるインデックスをユーザの固有鍵で暗号化したうえで情報処理サーバ20に送信・登録する。また、暗号化文書および暗号化インデックスの登録後においては、ユーザが入力する検索キーワードを暗号化して情報処理サーバ20に送信し、当該検索キーワードに応じた検索結果を取得する。
(情報処理サーバ20)
本実施形態に係る情報処理サーバ20は、情報処理端末10から受信した暗号化文書および暗号化インデックスを保管する情報処理装置である。また、本実施形態に係る情報処理サーバ20は、情報処理端末10から受信した暗号化キーワードと暗号化インデックスとに基づく文書検索を行い、検索結果を情報処理端末10に送信する。
(ネットワーク30)
ネットワーク30は、情報処理端末10と情報処理サーバ20とを接続する機能を有する。ネットワーク30は、インターネット、電話回線網、衛星通信網などの公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)などを含んでもよい。また、ネットワーク30は、IP−VPN(Internet Protocol−Virtual Private Network)などの専用回線網を含んでもよい。また、ネットワーク30は、Wi−Fi(登録商標)、Bluetooth(登録商標)など無線通信網を含んでもよい。
以上、本開示の一実施形態に係る情報処理システムの構成例について述べた。なお、図1を用いて説明した上記の構成はあくまで一例であり、本実施形態に係る情報処理システムの構成は係る例に限定されない。本実施形態に係る情報処理システムの構成は、仕様や運用に応じて柔軟に変形可能である。
<<1.3.情報処理端末10の機能構成例>>
次に、本開示の一実施形態に係る情報処理端末10の機能構成例について詳細に説明する。図2は、本実施形態に係る情報処理端末10の機能構成例を示すブロック図である。図2を参照すると、本実施形態に係る情報処理端末10は、鍵管理部110、入力部120、暗号化部130、秘密分散処理部140、復号部150、表示部160、および通信部170を備える。
(鍵管理部110)
本実施形態に係る鍵管理部110は、ユーザの固有鍵や、情報処理サーバ20から受信した共通鍵、また秘密分散処理部140が生成した秘密分散片(分散鍵、とも称する)などを保管する。
(入力部120)
本実施形態に係る入力部120は、ユーザによる各種の入力操作を検出する。本実施形態に係る入力部120は、例えば、ユーザによる検索キーワードの入力や、文書の登録操作などを検出する。このために、本実施形態に係る入力部120は、キーボードやマウス、各種のボタンなどを有する。
(暗号化部130)
本実施形態に係る暗号化部130は、文書やインデックスの暗号化を行う。また、本実施形態に係る暗号化部130は、文書に含まれる単語の分割候補の作成や、当該分割候補に対する準同型ハッシュ演算などを行う。本実施形態に係る暗号化部130が有する機能の詳細については別途後述する。
(秘密分散処理部140)
本実施形態に係る秘密分散処理部140は、秘密分散処理による分散鍵の生成を行う。本実施形態に係る秘密分散処理部140は、例えば、情報処理サーバ20が備える暗号化辞書236に登録される単語の暗号化に用いられた共通鍵に対する秘密分散処理を行い、第1の分散鍵および第2の分散鍵を生成する。本実施形態に係る秘密分散処理部140が有する機能の詳細については別途後述する。
(復号部150)
本実施形態に係る復号部150は、暗号化されたデータの復号を行う。本実施形態に係る復号部150は、例えば、情報処理サーバ20から受信された検索結果の復号などを行う。
(表示部160)
本実施形態に係る表示部160は、画像やテキストなどの視覚情報を出力する。本実施形態に係る表示部160は、例えば、検索キーワードなどの入力データの入力、および検索結果の提示などの表示を行うためのユーザインタフェースを具備する。
(通信部170)
本実施形態に係る通信部170は、ネットワーク30を介して情報処理サーバ20との情報通信を行う。本実施形態に係る通信部170は、例えば、暗号化文書や暗号化インデックスを情報処理サーバ20に送信する。また、通信部170は、例えば、暗号化キーワードを情報処理サーバ20に送信し、当該暗号化キーワードに応じた検索結果を情報処理サーバ20から受信する。
以上、本開示の一実施形態に係る情報処理端末10の機能構成例について述べた。なお、図2を用いて説明した上記の構成はあくまで一例であり、本実施形態に係る情報処理端末10の機能構成は係る例に限定されない。本実施形態に係る情報処理端末10の機能構成は、仕様や運用に応じて柔軟に変形可能である。
<<1.4.情報処理サーバ20の機能構成例>>
次に、本開示の一実施形態に係る情報処理サーバ20の機能構成例について詳細に説明する。図3は、本実施形態に係る情報処理サーバ20の機能構成例を示すブロック図である。図3を参照すると、本実施形態に係る情報処理サーバ20は、分割部210、検索部220、記憶部230、および端末通信部240を備える。
(分割部210)
本実施形態に係る分割部210は、暗号化辞書236を用いた形態素解析により、文書検索に用いられる単語の分割単位を決定する。本実施形態に係る分割部210が有する機能の詳細については別途後述する。
(検索部220)
本実施形態に係る検索部220は、情報処理端末10から受信された暗号化キーワードとインデックス保管部238に保管される暗号化インデックスとに基づく文書検索を行う。
(記憶部230)
本実施形態に係る記憶部230は、文書検索に係る各種の情報を記憶する。本実施形態に係る記憶部230は、データ保管部232、分散鍵保管部234、暗号化辞書236、インデックス保管部238などを備える。
(データ保管部232)
本実施形態に係るデータ保管部232は、情報処理端末10から受信された暗号化文書など、暗号化された各種のデータを保管する。
(分散鍵保管部234)
本実施形態に係る分散鍵保管部234は、情報処理端末10から受信された分散鍵を保管する。また、本実施形態に係る分散鍵保管部234は、分散鍵と共に、分散鍵の生成元である情報処理端末10やユーザの情報を記憶する。
(暗号化辞書236)
本実施形態に係る暗号化辞書236は、分割部210が形態素解析に用いる辞書である。本実施形態に係る暗号化辞書236には、全ユーザに共通の共通鍵により暗号化された複数の単語が登録される。
(インデックス保管部238)
本実施形態に係るインデックス保管部238は、情報処理端末10から受信された暗号化インデックスを保管する。
(端末通信部240)
本実施形態に係る端末通信部240は、ネットワーク30を介して情報処理端末10との情報通信を行う。本実施形態に係る端末通信部240は、例えば、情報処理端末10から暗号化文書や暗号化インデックスを受信する。また、端末通信部240は、例えば、情報処理端末10から暗号化キーワードを受信し、検索部220が取得した検索結果を情報処理端末10に送信する。
以上、本開示の一実施形態に係る情報処理サーバ20の機能構成例について述べた。なお、図3を用いて説明した上記の構成はあくまで一例であり、本実施形態に係る情報処理サーバ20の機能構成は係る例に限定されない。例えば、本実施形態に係る検索部220が有する機能は、別途の検索装置により実現されてもよい。本実施形態に係る情報処理サーバ20の機能構成は、仕様や運用に応じて柔軟に変形可能である。
<<1.5.機能の詳細>>
次に、本実施形態に係る情報処理端末10および情報処理サーバ20が有する機能について詳細に説明する。上述したように、本実施形態に係る情報処理方法は、インデックス作成に必要な単語の分割をクライアントとサーバとで分散して実行し、処理負担を軽減すると共によりセキュアな検索可能暗号技術を実現するものである。
より具体的には、本実施形態に係る情報処理方法では、まず、情報処理端末10の暗号化部130により検索対象となる文書に含まれる単語の分割候補を作成し、当該分割候補を暗号化したうえで情報処理サーバに送信する。
次に、情報処理サーバ20の分割部210は、暗号化された分割候補と暗号化辞書236とのマッチングを行い、形態素解析に必要なラティス構造を作成する。
続いて、分割部210は、ラティス構造上の重み情報に基づいて、文書検索に最適な単語の分割単位を決定する。
次に、情報処理サーバ20の暗号化部130は、上記の分割単位に基づいて文書の全文検索用インデックスの作成を行い、暗号化したうえで情報処理サーバ20に登録する。
上記の処理によれば、以降、登録された暗号化インデックスを用いて暗号化文書の全文検索をセキュアに実行することが可能となる。また、本実施形態に係る情報処理方法によれば、情報処理サーバ20上では検索可能暗号技術を用いることで平文が一切露出しない状況を作ることができ、また、復号鍵が情報処理サーバ20上で管理されないため、サービス管理者などによる不正なデータ取得を防止することが可能となる。
以下、本実施形態に係る情報処理方法が含む各処理について、より詳細に説明する。まず、本実施形態に係る分散鍵の生成と保管について述べる。
図4は、本実施形態に係る初期セットアップの流れを示す図である。本実施形態に係る初期セットアップでは、まず、情報処理端末10におけるユーザの固有鍵Ukの生成と、情報処理サーバ20における共通鍵Ckの生成が行われる。
ここで、本実施形態に係る共通鍵Ckは、暗号化辞書236に登録される単語を暗号化するための鍵であり、全ユーザに共通して用いられる。
次に、情報処理端末10の秘密分散処理部140は、通信部170を介して情報処理サーバ20から共通鍵Ukをダウンロードし、共通鍵Ukに対する秘密分散処理を行い、2つの秘密分散片である、第1の分散鍵s1および第2の分散鍵s2を生成する。なお、この際、生成される第1の分散鍵s1および第2の分散鍵s2は、情報処理端末10ごとに異なる。
ここで、生成された第1の分散鍵s1は鍵管理部110により保管され、第2の分散鍵s2は通信部170により情報処理サーバ20(検索装置)に送信され、分散鍵保管部234に保管される。
次に、本実施形態に係る暗号化インデックスの生成について述べる。図5は、本実施形態に係る暗号化インデックス生成の流れを示す図である。ここでは、まず、検索対象となる文書がユーザによる入力などにより生成される。暗号化部130は、生成された文書Dを固有鍵Ukを用いて暗号化し、続いて、通信部170が暗号化された文書Dを情報処理サーバ20に送信する。また、情報処理サーバ20のデータ保管部232は、端末通信部240が受信した暗号化された文書Dを保管する。図8は、本実施形態に係るデータ保管部232が有する文書本体および文書IDが保管されるテーブルの一例である。
次に、本実施形態に係る暗号化部130は、文書Dに含まれる単語の分割候補を複数生成する。ここで、暗号化部130による分割精度は、後述する情報処理サーバ20の分割部210による単語の分割精度よりも低いものであってよい。具体的には、暗号化部130は、情報処理サーバ20が備える暗号化辞書236よりも登録単語数が少ない簡易辞書を用いた形態素解析や、N−Gramにより分割候補の生成を行う。
形態素解析を行うためには、辞書が必要となるが、この際、新語や専門用語などに対応するためには辞書が肥大化し、情報処理端末10の処理を圧迫する可能性がある。このため、本実施形態に係る暗号化部130は、暗号化辞書236よりも登録単語数の少ない簡易辞書を用いた形態素解析を行うことで、処理負担を軽減してもよい。
また、一般的に、N−Gramでは、本来の想定とは異なる単語に分割されることがあるが(例えば、「国会議事堂」が、「国会」「会議」、「議事」、「議事堂」などに分解されるなど)、本実施形態では、最終的な分割単位は情報処理サーバ20の分割部210による暗号化辞書236を用いた形態素解析により決定されるため、暗号化部130による分割候補の生成においては、精度を求めずに処理効率を優先してよい。
続いて、暗号化部130は、生成した分割候補のすべてに対し、第1の分散鍵s1を用いて準同型ハッシュ演算(べき乗算)を行い第1のハッシュ値を算出する。また、通信部170は、算出された第1のハッシュ値を情報処理サーバ20(外部装置、とも称する)に送信する。
次に、情報処理サーバ20の分割部210は、端末通信部240が情報処理端末10(端末、とも称する)から受信した第1のハッシュ値に対し、対応する第2の分散鍵s2を用いて準同型ハッシュ演算(乗算)を行い、第2のハッシュ値を算出する。
続いて、分割部210は、算出した第2のハッシュ値と暗号化辞書236とのマッチングに基づいて、文書検索に用いられる単語の分割単位を決定する。より詳細には、分割部210は、第2のハッシュ値(単語)と暗号化辞書236とのマッチングを行い、当該マッチングの結果に基づいてラティス構造を作成する。次に、分割部210は、作成したラティス構造の重みに基づく形態素解析を行い、分割単位を決定することができる。
通常、形態素解析に用いられる辞書は、単語の候補が複数ある場合に、出現頻度や単語間のつながりに係る数値を基に担当の区切りを確定させるため、単語や品詞、また出現頻度や単語間のつながりやすさなどに関する情報を有している。
この際、本実施形態のように、検索可能暗号向けに暗号化を行う場合、辞書が含むすべての単語を検索可能暗号で暗号文に予め変換しておくことが求められる。しかし、ここで、共通鍵で暗号化を行う場合、鍵を共有することにより、どの単語を検索しているかを把握できてしまう可能性がある。このために、本実施形態では、暗号化辞書236の暗号化に用いた共通鍵を情報処理端末10側で秘密分散処理により分散し、一方の分散片である第2の分散鍵s2を情報処理サーバ20での辞書検索に用いることで、他のユーザに検索する単語が流出することを防止することができる。
図6は、本実施形態に係る分割部210により作成されるラティス構造の一例である。図6では、文章「国会議事堂に行く」に対するラティス構造の一例が示されている。本実施形態に係る分割部210は、情報処理端末10の暗号化部130が暗号化した、例えば、「国会」などの単語を暗号化辞書236とマッチングさせることにより図示するようなラティス構造を作成し、生起コストや連接コストなどの重みに基づいて、品詞などを決定することが可能である。
なお、図6では、日本語に対するラティス構造の一例を示したが、本実施形態に係る分割部210は、例えば、英語などの他の言語に対する形態素解析を行うことも可能である。例えば、“I live in New York City”という文章の場合、“New York City”は固有名詞であるため、連結した状態で取得することが望まれる。この場合、暗号化辞書236に、固有名詞“New York City”を予め登録しておくことで、“I”、“live”、“in”、“New York City”を文書検索に最適な単位で分割することが可能となる。
なお、“New York City”が固有名詞であることが暗号化辞書236に登録されている場合、分割部210は、略称である“NY”や“NYC”などを関連語として分割単位の含めることもできる。
再び図5を参照して暗号化インデックス生成の流れについて説明を続ける。分割部210により分割単位が決定されると、端末通信部240は、決定された分割単位に係る暗号化情報を情報処理端末10に送信する。ここで、上記の分割単位に係る暗号化情報とは、分割されたすべての単語を暗号化したデータであってよい。
次に、情報処理端末10の復号部150は、通信部170が受信した暗号化情報を復号化し、文書Dに対するインデックスが確定する。
次に、暗号化部130は、確定したインデックスを、固有鍵Ukを用いて暗号化し暗号化インデックスを生成する。続いて、通信部170は、生成された暗号化インデックスを情報処理サーバ20に送信する。また、情報処理サーバ20のインデックス保管部238は、端末通信部240が受信した暗号化された文書Dを保管する。図7は、本実施形態に係るインデックス保管部238が有する、暗号化インデックスと文書の紐付きを示すテーブルの一例である。図7に示す一例の場合、例えば、単語Wは文書Aおよび文書Bに含まれており、単語W11は文書A、文書B、および文書Cに含まれていることがわかる。
以上、本実施形態に係る暗号化インデックス生成の流れについて説明した。次に、上記のように生成した暗号化インデックスを用いた暗号化文書の検索について説明する。図9は、本実施形態に係る暗号化文書の検索について説明するための図である。
まず、情報処理端末10の暗号化部130は、ユーザにより入力された検索キーワードを固有鍵Ukを用いて暗号化し、暗号化キーワードEKWを生成する。本実施形態に係る暗号化部130は、検索キーワードを準同型ハッシュ演算によりハッシュ値化し、当該ハッシュ値を、例えば、ブルームフィルタやカウンティングフィルタのようなAMQ(Appriximate Membership Query)形式にエンコード(マッピング)することで、暗号化キーワードを生成してもよい。
この際、暗号化部130は、入力された検索キーワードが単一である場合や、複数の検索キーワードを用いたAND検索の場合には、例えば、単一のブルームフィルタにマッピングを行う。一方、複数の検索キーワードを用いたOR検索の場合、暗号化部130は、例えば、ORの単位でブルームフィルタへのマッピングを行ってよい。
通信部170は、暗号化部130が生成した暗号化キーワードEKWを情報処理サーバ20に送信する。
次に、情報処理サーバ20の検索部220は、情報処理端末10から受信された暗号化キーワードEKWと、インデックス保管部238が保管する複数の暗号化インデックスEIとに基づいて文書検索を実行する。具体的には、検索部220は、暗号化キーワードEKWと暗号化インデックスEIとの間でビット単位の一致判定を行うことで検索を行うことができる。なお、本実施形態に係る暗号化インデックスEIは、暗号化キーワードEKWと同じくブルームフィルタなどにマッピングされたものあってよい。
ここで、暗号化インデックスEKWが含まれる暗号化インデックスEIが存在する場合、検索部220は、図7に示したようなテーブルに基づいて、対応する暗号化文書を特定することが可能である。例えば、暗号化キーワードEKWが単語W11であった場合、検索部220は、文書A、文書B、文書Cが該当する旨を検索結果として、端末通信部240を介して情報処理端末10に返してもよい。また、一方で、検索部220は、文書A、文書B、文書Cそのものを検索結果として返してもよい。図9に示す一例では、検索部220は、該当する暗号化文書EDそのものを検索結果として情報処理端末10に返している。
この場合、情報処理端末10の復号部150は、通信部170が受信した、検索結果である暗号化文書EDを復号し、平文の文書Dを取得することができる。
以上、本実施形態に係る情報処理端末10および情報処理サーバ20による処理の流れについて説明した。上述したように、本実施形態に係る情報処理方法によれば、情報処理サーバ20上では検索可能暗号技術を用いることで平文が一切露出しない状況を作ることができ、また、復号鍵が情報処理サーバ20上で管理されないため、サービス管理者などによる不正なデータ取得を防止することが可能となる。
なお、上記では、主に文書の検索を行う場合を例に述べたが、本実施形態に係る情報処理方法は、文書以外のデータに対しても適用することが可能である。本実施形態に係る情報処理方法は、例えば、音声メモの検索に用いられてもよい。本実施形態に係る情報処理方法によれば、録音された音声データに対する音声認識を行い、当該音声認識の結果に基づいて検索用のインデックスを作成することで、よりセキュアに音声データの検索を行うことが可能となる。
この際、上記を実現するための構成としては、音声認識を情報処理端末10側で行う場合と、情報処理サーバ20側で行う場合とが想定される。
図10は、本実施形態に係る音声データの検索において、音声認識を情報処理端末10側で行う場合の流れを示す図である。この場合、まず、ユーザの発話UOに対して情報処理端末10に備えられる音声認識部が音声認識を行い、音声認識結果RRと音声データVRを生成する。次に、暗号化部130が固有鍵Ukを用いて音声データVRを暗号化し、通信部170が暗号化された音声データVRを情報処理サーバ20に送信する。情報処理サーバ20のデータ保管部232は、端末通信部240が受信した、暗号化された音声データVRを保管する。
また、本実施形態に係る情報処理端末10および情報処理サーバ20は、上記の処理と並行して、音声認識結果RRに基づく暗号化インデックスの生成処理を行う。情報処理端末10および情報処理サーバ20は、音声認識結果RRから生成された分割候補に対し、図5のステップS1101に示す後続処理を行うことで、暗号化インデックスを生成することが可能である。
一方、図11は、本実施形態に係る音声データの検索において、音声認識を情報処理サーバ20側で行う場合の流れを示す図である。この場合、まず、情報処理端末10の暗号化部130がユーザの発話UOを録音した音声データVRを固有鍵を用いて暗号化し、通信部170が暗号化された音声データVRを情報処理サーバ20に送信する。情報処理サーバ20のデータ保管部232は、端末通信部240が受信した、暗号化された音声データVRを保管する。
また、この場合も同様に、情報処理端末10および情報処理サーバ20は、暗号化インデックスの生成処理を並行して行う。まず、情報処理サーバ20に備えられる音声認識部がユーザの発話UOに対する音声認識処理を実行し音声認識結果RRを取得する。次に、情報処理サーバ20の分割部210が音声認識結果RRから分割候補を作成する。続いて、分割部210は、分割候補に対し、情報処理端末10から一時的に取得した第1の分割鍵s1を用いた準同型ハッシュ演算、および分散鍵保管部234に保管される第2の分割鍵s2を用いた準同型ハッシュ演算を行う。上記の処理の後、情報処理サーバ20および情報処理端末10は、図5のステップS1102に示す後続処理を行うことで、暗号化インデックスを生成することが可能である。
このように、本実施形態に係る情報処理方法によれば、テキストデータのみではなく、音声データの検索もよりセキュアに実現することが可能である。
また、本実施形態に係る情報処理方法は、例えば、Webサービスのパスワード管理などに適用することも可能である。近年では、多種多様なWebサービスが展開されているが、複数のWebサービスを利用するユーザにとっては、パスワードを覚えきれないなどの弊害が発生し得る。
このために、本実施形態に係る情報処理方法では、Webサービスに使用するパスワードやユーザID、URLやサイト名などを検索対象とすることで、セキュアなパスワード管理を実現することができる。
具体的には、図5に示した処理の流れにおいて、ユーザは文書Dに代えて、パスワード、ユーザID、URL、サイト名などを暗号化して情報処理サーバ20に登録する。次に、図5に示す情報処理サーバ20および情報処理端末10は、上記の情報に基づく暗号化インデックスの生成処理を実行し、情報処理サーバ20が当該暗号化インデックスを保管する。
上記の処理によれば、固有鍵Ukを有するユーザのみが、ユーザIDやURL、サイト名などを用いてパスワードを検索することができ、セキュアなパスワード管理を実現することが可能となる。
また、例えば、暗号化辞書236にパスワードとして不適当なパターン(例えば、abc123など)を登録することにより、脆弱なパスワードが登録されることを防ぐことなども可能であり、セキュリティ性をより向上させることができる。
以上、本実施形態に係る情報処理方法の文書検索以外への適用例について説明した。このように、本実施形態に係る情報処理方法は、種々の検索サービスに柔軟に適用可能である。
また、本実施形態に係る情報処理方法は、マルチユーザによる検索にも対応可能である。例えば、自身が登録した文書に対する検索行為を特定の他のユーザにのみ許諾したい状況なども想定される。しかし、データの暗号化に用いた固有鍵を他のユーザと共有する場合、なりすましなどが可能となることから、セキュリティ性が低下することとなる。このため、本実施形態に係る情報処理方法では、文書などのデータの暗号化に用いた固有鍵を秘密分散処理により分散し、一方の分散片を他のユーザに、他方の分散片を情報処理サーバ20に保管することで、マルチユーザによる検索の共有をセキュアに実現することができる。
図12は、本実施形態に係るマルチユーザによる検索の共有について説明するための図である。図12では、情報処理端末10aを所有するユーザが、図4および図5に示した暗号化文書と暗号化インデックスの登録を行った後、登録した暗号化文書の検索を情報処理端末10bを所有するユーザに許諾する場合の一例が示されている。
この際、共有元となる情報処理端末10aの秘密分散処理部140は、暗号化文書および暗号化インデックスの生成に用いた固有鍵Ukに対する秘密分散処理を行い、第3の分散鍵s3および第4の分散鍵s4を生成する。次に、通信部170は、生成された第3の分散鍵s3を共有先となる情報処理端末10b(検索許諾装置)に送信し、第4の分散鍵s4を情報処理端末10を情報処理サーバ20(検索装置)に送信する。
この後、共有先の情報処理端末10bで検索を行う場合、情報処理端末10bの暗号化部130bは、情報処理端末10aから受信した第3の分散鍵s3と準同型ハッシュパラメータgを用いて準同型ハッシュ演算(べき乗算)を行い、算出した第3のハッシュ値を情報処理サーバ20に送信する。
次に、情報処理サーバ20の検索部220は、端末通信部240が受信した第3のハッシュ値に対し、情報処理端末10aから受信され分散鍵保管部234に保管される第4の分散鍵s4を用いて準同型ハッシュ演算(乗算)を行う。続いて、検索部220は、算出した第4のハッシュ値と、インデックス保管部238に保管される暗号化インデックスとの間でビット単位の一致判定を行うことで検索を実行する。
この際、検索部220は、文書の所有者(共有元ユーザ)と検索が許諾されたユーザ(共有先ユーザ)との対応付けを示すテーブルに基づいて、検索を実行してもよい。図13は、本実施形態に係る共有元ユーザと共有先ユーザの対応付けを示すテーブルの一例である。
例えば、図7に示した暗号化インデックスに対し単語W11を検索する場合、文書A、文書B、文書Cが該当する文書となるが、ここで、図13を参照すると、文書Aには検索が許諾されたユーザがなく、文書Bにはユーザβおよびユーザγ、文章Cにはユーザβおよびユーザσが検索を許諾されている。このため、検索部220は、ユーザβによる単語W11の検索に関しては、検索結果から文書Aの存在を排除し、文書Bおよび文書Cのみに係る検索結果を返してよい。同様に、ユーザγが単語W11を検索した場合、検索部220は、検索結果から文書Aおよび文書Cの存在を排除し、文書Bのみに係る検索結果を返してよい。
このように、本実施形態に係るマルチユーザによる検索の共有によれば、共有が許諾された文書のみに係る検索結果を返すことで、共有が許諾されていない文書の存在を秘匿することができ、よりセキュアな検索の共有を実現することができる。
<2.ハードウェア構成例>
次に、本開示の一実施形態に係る情報処理端末10と情報処理サーバ20に共通するハードウェア構成例について説明する。図14は、本開示の一実施形態に係る情報処理端末10と情報処理サーバ20のハードウェア構成例を示すブロック図である。図14を参照すると、情報処理端末10と情報処理サーバ20は、例えば、プロセッサ871と、ROM872と、RAM873と、ホストバス874と、ブリッジ875と、外部バス876と、インターフェース877と、入力装置878と、出力装置879と、ストレージ880と、ドライブ881と、接続ポート882と、通信装置883と、を有する。なお、ここで示すハードウェア構成は一例であり、構成要素の一部が省略されてもよい。また、ここで示される構成要素以外の構成要素をさらに含んでもよい。
(プロセッサ871)
プロセッサ871は、例えば、演算処理装置又は制御装置として機能し、ROM872、RAM873、ストレージ880、又はリムーバブル記録媒体901に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。
(ROM872、RAM873)
ROM872は、プロセッサ871に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。RAM873には、例えば、プロセッサ871に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。
(ホストバス874、ブリッジ875、外部バス876、インターフェース877)
プロセッサ871、ROM872、RAM873は、例えば、高速なデータ伝送が可能なホストバス874を介して相互に接続される。一方、ホストバス874は、例えば、ブリッジ875を介して比較的データ伝送速度が低速な外部バス876に接続される。また、外部バス876は、インターフェース877を介して種々の構成要素と接続される。
(入力装置878)
入力装置878には、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、及びレバー等が用いられる。さらに、入力装置878としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラ(以下、リモコン)が用いられることもある。また、入力装置878には、マイクロフォンなどの音声入力装置が含まれる。
(出力装置879)
出力装置879は、例えば、CRT(Cathode Ray Tube)、LCD、又は有機EL等のディスプレイ装置、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置である。また、本開示に係る出力装置879は、触覚刺激を出力することが可能な種々の振動デバイスを含む。
(ストレージ880)
ストレージ880は、各種のデータを格納するための装置である。ストレージ880としては、例えば、ハードディスクドライブ(HDD)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等が用いられる。
(ドライブ881)
ドライブ881は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体901に記録された情報を読み出し、又はリムーバブル記録媒体901に情報を書き込む装置である。
(リムーバブル記録媒体901)
リムーバブル記録媒体901は、例えば、DVDメディア、Blu−ray(登録商標)メディア、HD DVDメディア、各種の半導体記憶メディア等である。もちろん、リムーバブル記録媒体901は、例えば、非接触型ICチップを搭載したICカード、又は電子機器等であってもよい。
(接続ポート882)
接続ポート882は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)、RS−232Cポート、又は光オーディオ端子等のような外部接続機器902を接続するためのポートである。
(外部接続機器902)
外部接続機器902は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はICレコーダ等である。
(通信装置883)
通信装置883は、ネットワークに接続するための通信デバイスであり、例えば、有線又は無線LAN、Bluetooth(登録商標)、又はWUSB(Wireless USB)用の通信カード、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ、又は各種通信用のモデム等である。
<3.まとめ>
以上説明したように、本開示の一実施形態に係る情報処理サーバ20は、第1の分散鍵を用いて算出された第1のハッシュ値を情報処理端末10から受信する端末通信部240と、第1のハッシュ値に対し第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定する分割部210と、を備える。また、上記の端末通信部240は、分割部210により決定された分割単位に係る暗号化情報を情報処理端末10に送信する。
また、本開示の一実施形態に係る情報処理端末10は、検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出する暗号化部130と、第1のハッシュ値を情報処理サーバ20に送信する通信部170と、を備える。また、上記の通信部170は、第1のハッシュ値に対する第2の分散鍵を用いた準同型ハッシュ演算により算出された第2のハッシュ値と暗号化辞書とのマッチングに基づいて決定された、文書検索用の単語の分割単位に係る暗号化情報を情報処理サーバ20から受信する。
上記の構成によれば、処理負担を軽減すると共によりセキュアな検索可能暗号技術を実現することが可能となる。
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
また、コンピュータに内蔵されるCPU、ROMおよびRAMなどのハードウェアに、情報処理サーバ20が有する構成と同等の機能を発揮させるためのプログラムも作成可能であり、当該プログラムを記録した、コンピュータに読み取り可能な非一過性の記録媒体も提供され得る。
また、本明細書の情報処理サーバ20の処理に係る各ステップは、必ずしも図示された順序に沿って時系列に処理される必要はない。例えば、情報処理サーバ20の処理に係る各ステップは、図示された順序と異なる順序で処理されても、並列的に処理されてもよい。
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
第1の分散鍵を用いて算出された第1のハッシュ値を端末から受信する通信部と、
前記第1のハッシュ値に対し前記第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定する分割部と、
を備え、
前記通信部は、前記分割部により決定された前記分割単位に係る暗号化情報を前記端末に送信する、
情報処理装置。
(2)
前記第1のハッシュ値は、検索対象となる文書に含まれる単語の分割候補を前記第1の分散鍵を用いた準同型ハッシュ演算によりハッシュ化した値である、
前記(1)に記載の情報処理装置。
(3)
前記第1のハッシュ値に係る単語の分割精度は、前記分割部による単語の分割精度よりも低い、
前記(2)に記載の情報処理装置。
(4)
前記分割部は、形態素解析により前記分割単位を決定する、
前記(1)に記載の情報処理装置。
(5)
前記分割部は、前記第2のハッシュ値と前記暗号化辞書とのマッチングに基づいてラティス構造を作成し、前記ラティス構造上の重みに基づいて前記分割単位を決定する、
前記(4)に記載の情報処理装置。
(6)
前記第1の分散鍵および第2の分散鍵は、前記暗号化辞書に登録される単語の暗号化に用いられた共通鍵を秘密分散処理することで生成され、
前記通信部は、前記端末から前記第2の分散鍵を受信する、
前記(1)〜(5)のいずれかに記載の情報処理装置。
(7)
前記通信部は、前記分割単位に係る暗号化情報に基づいて生成された暗号化インデックスを前記端末から受信する、
前記(1)〜(6)のいずれかに記載の情報処理装置。
(8)
前記通信部が前記端末から受信した暗号化キーワードと前記暗号化インデックスとに基づいて文書検索を行う検索部、
をさらに備える、
前記(7)に記載の情報処理装置。
(9)
前記暗号化キーワードおよび暗号化インデックスは、ブルームフィルタにマッピングされる、
前記(8)に記載の情報処理装置。
(10)
検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出する暗号化部と、
前記第1のハッシュ値を外部装置に送信する通信部と、
を備え、
前記通信部は、前記第1のハッシュ値に対する第2の分散鍵を用いた準同型ハッシュ演算により算出された第2のハッシュ値と暗号化辞書とのマッチングに基づいて決定された、文書検索用の単語の分割単位に係る暗号化情報を前記外部装置から受信する、
情報処理装置。
(11)
前記暗号化辞書に登録される単語の暗号化に用いられた共通鍵に対する秘密分散処理を行い、前記第1の分散鍵および前記第2の分散鍵を生成する秘密分散処理部、
をさらに備え、
前記通信部は、前記第2の分散鍵を前記外部装置に送信する、
前記(10)に記載の情報処理装置。
(12)
前記暗号化部は、前記検索対象となる文書を固有鍵により暗号化した暗号化文書と、前記分割単位を前記固有鍵により暗号化した暗号化インデックスとを生成し、
前記通信部は、前記暗号化文書および前記暗号化インデックスを検索装置に送信する、
前記(11)に記載の情報処理装置。
(13)
前記暗号化部は、入力された検索キーワードを前記固有鍵により暗号化した暗号化キーワードを生成し、
前記通信部は、前記暗号化キーワードを前記検索装置に送信し、検索結果を受信する、
前記(12)に記載の情報処理装置。
(14)
前記分割単位は、前記暗号化辞書を用いた形態素解析により決定される、
前記(10)〜(13)のいずれかに記載の情報処理装置。
(15)
前記暗号化部は、形態素解析により前記分割候補を決定し、
前記暗号化部による形態素解析に用いられる辞書に登録される単語の数は、前記暗号化辞書に登録される単語の数よりも少ない、
前記(14)のいずれかに記載の情報処理装置。
(16)
前記暗号化部は、N−Gramを用いて前記分割候補を決定する、
前記(14)のいずれかに記載の情報処理装置。
(17)
前記秘密分散処理部は、前記暗号化文書および前記暗号化インデックスの生成に用いられた前記固有鍵に対する秘密分散処理を行い、第3の分散鍵および第4の分散鍵を生成し、
前記通信部は、前記第3の分散鍵を検索許諾端末に送信し、前記第4の分散鍵を前記検索装置に送信する、
前記(12)に記載の情報処理装置。
(18)
前記検索結果を復号する複合部、
をさらに備える、
前記(13)に記載の情報処理装置。
(19)
プロセッサが、
第1の分散鍵を用いて算出された第1のハッシュ値を端末から受信することと、
前記第1のハッシュ値に対し前記第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定することと、
前記分割単位に係る暗号化情報を前記端末に送信することと、
を含む、
情報処理方法。
(20)
プロセッサが、
検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出することと、
前記第1のハッシュ値を外部装置に送信することと、
前記第1のハッシュ値に対する第2の分散鍵を用いた準同型ハッシュ演算により算出された第2のハッシュ値と暗号化辞書とのマッチングに基づいて決定された、文書検索用の単語の分割単位に係る暗号化情報を前記外部装置から受信することと、
を含む、
情報処理方法。
10 情報処理端末
110 鍵管理部
130 暗号化部
140 秘密分散処理部
150 復号部
170 通信部
20 情報処理サーバ
210 分割部
220 検索部
232 データ保管部
234 分散鍵保管部
236 暗号化辞書
238 インデックス保管部
240 端末通信部

Claims (20)

  1. 第1の分散鍵を用いて算出された第1のハッシュ値を端末から受信する通信部と、
    前記第1のハッシュ値に対し前記第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定する分割部と、
    を備え、
    前記通信部は、前記分割部により決定された前記分割単位に係る暗号化情報を前記端末に送信する、
    情報処理装置。
  2. 前記第1のハッシュ値は、検索対象となる文書に含まれる単語の分割候補を前記第1の分散鍵を用いた準同型ハッシュ演算によりハッシュ化した値である、
    請求項1に記載の情報処理装置。
  3. 前記第1のハッシュ値に係る単語の分割精度は、前記分割部による単語の分割精度よりも低い、
    請求項2に記載の情報処理装置。
  4. 前記分割部は、形態素解析により前記分割単位を決定する、
    請求項1に記載の情報処理装置。
  5. 前記分割部は、前記第2のハッシュ値と前記暗号化辞書とのマッチングに基づいてラティス構造を作成し、前記ラティス構造上の重みに基づいて前記分割単位を決定する、
    請求項4に記載の情報処理装置。
  6. 前記第1の分散鍵および第2の分散鍵は、前記暗号化辞書に登録される単語の暗号化に用いられた共通鍵を秘密分散処理することで生成され、
    前記通信部は、前記端末から前記第2の分散鍵を受信する、
    請求項1に記載の情報処理装置。
  7. 前記通信部は、前記分割単位に係る暗号化情報に基づいて生成された暗号化インデックスを前記端末から受信する、
    請求項1に記載の情報処理装置。
  8. 前記通信部が前記端末から受信した暗号化キーワードと前記暗号化インデックスとに基づいて文書検索を行う検索部、
    をさらに備える、
    請求項7に記載の情報処理装置。
  9. 前記暗号化キーワードおよび暗号化インデックスは、ブルームフィルタにマッピングされる、
    請求項8に記載の情報処理装置。
  10. 検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出する暗号化部と、
    前記第1のハッシュ値を外部装置に送信する通信部と、
    を備え、
    前記通信部は、前記第1のハッシュ値に対する第2の分散鍵を用いた準同型ハッシュ演算により算出された第2のハッシュ値と暗号化辞書とのマッチングに基づいて決定された、文書検索用の単語の分割単位に係る暗号化情報を前記外部装置から受信する、
    情報処理装置。
  11. 前記暗号化辞書に登録される単語の暗号化に用いられた共通鍵に対する秘密分散処理を行い、前記第1の分散鍵および前記第2の分散鍵を生成する秘密分散処理部、
    をさらに備え、
    前記通信部は、前記第2の分散鍵を前記外部装置に送信する、
    請求項10に記載の情報処理装置。
  12. 前記暗号化部は、前記検索対象となる文書を固有鍵により暗号化した暗号化文書と、前記分割単位を前記固有鍵により暗号化した暗号化インデックスとを生成し、
    前記通信部は、前記暗号化文書および前記暗号化インデックスを検索装置に送信する、
    請求項11に記載の情報処理装置。
  13. 前記暗号化部は、入力された検索キーワードを前記固有鍵により暗号化した暗号化キーワードを生成し、
    前記通信部は、前記暗号化キーワードを前記検索装置に送信し、検索結果を受信する、
    請求項12に記載の情報処理装置。
  14. 前記分割単位は、前記暗号化辞書を用いた形態素解析により決定される、
    請求項10に記載の情報処理装置。
  15. 前記暗号化部は、形態素解析により前記分割候補を決定し、
    前記暗号化部による形態素解析に用いられる辞書に登録される単語の数は、前記暗号化辞書に登録される単語の数よりも少ない、
    請求項14に記載の情報処理装置。
  16. 前記暗号化部は、N−Gramを用いて前記分割候補を決定する、
    請求項14に記載の情報処理装置。
  17. 前記秘密分散処理部は、前記暗号化文書および前記暗号化インデックスの生成に用いられた前記固有鍵に対する秘密分散処理を行い、第3の分散鍵および第4の分散鍵を生成し、
    前記通信部は、前記第3の分散鍵を検索許諾端末に送信し、前記第4の分散鍵を前記検索装置に送信する、
    請求項12に記載の情報処理装置。
  18. 前記検索結果を復号する複合部、
    をさらに備える、
    請求項13に記載の情報処理装置。
  19. プロセッサが、
    第1の分散鍵を用いて算出された第1のハッシュ値を端末から受信することと、
    前記第1のハッシュ値に対し前記第1の分散鍵に対応する第2の分散鍵を用いて準同型ハッシュ演算を行い、算出した第2のハッシュ値と暗号化辞書とのマッチングに基づいて文書検索に用いられる単語の分割単位を決定することと、
    前記分割単位に係る暗号化情報を前記端末に送信することと、
    を含む、
    情報処理方法。
  20. プロセッサが、
    検索対象となる文書に含まれる単語の分割候補に対し第1の分散鍵を用いた準同型ハッシュ演算を行い、第1のハッシュ値を算出することと、
    前記第1のハッシュ値を外部装置に送信することと、
    前記第1のハッシュ値に対する第2の分散鍵を用いた準同型ハッシュ演算により算出された第2のハッシュ値と暗号化辞書とのマッチングに基づいて決定された、文書検索用の単語の分割単位に係る暗号化情報を前記外部装置から受信することと、
    を含む、
    情報処理方法。
JP2018220038A 2018-11-26 2018-11-26 情報処理装置および情報処理方法 Pending JP2020086116A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018220038A JP2020086116A (ja) 2018-11-26 2018-11-26 情報処理装置および情報処理方法
US17/290,117 US20220311621A1 (en) 2018-11-26 2019-11-19 Information processing device and information processing method
PCT/JP2019/045275 WO2020110830A1 (ja) 2018-11-26 2019-11-19 情報処理装置および情報処理方法
DE112019005865.7T DE112019005865T5 (de) 2018-11-26 2019-11-19 Datenverarbeitungsvorrichtung und datenverarbeitungsverfahren

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018220038A JP2020086116A (ja) 2018-11-26 2018-11-26 情報処理装置および情報処理方法

Publications (1)

Publication Number Publication Date
JP2020086116A true JP2020086116A (ja) 2020-06-04

Family

ID=70852077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018220038A Pending JP2020086116A (ja) 2018-11-26 2018-11-26 情報処理装置および情報処理方法

Country Status (4)

Country Link
US (1) US20220311621A1 (ja)
JP (1) JP2020086116A (ja)
DE (1) DE112019005865T5 (ja)
WO (1) WO2020110830A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7217836B1 (ja) * 2021-12-27 2023-02-03 三菱電機株式会社 データ管理装置、秘匿検索システム、秘匿検索方法、および、秘匿検索プログラム

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11321382B2 (en) * 2020-02-11 2022-05-03 International Business Machines Corporation Secure matching and identification of patterns
US20230118450A1 (en) * 2021-10-15 2023-04-20 Lognovations Holdings, Llc Encoding / Decoding System and Method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05307570A (ja) * 1992-04-30 1993-11-19 Ricoh Co Ltd 文書管理装置
US8429421B2 (en) * 2010-12-17 2013-04-23 Microsoft Corporation Server-side encrypted pattern matching
US9288039B1 (en) * 2014-12-01 2016-03-15 Xerox Corporation Privacy-preserving text language identification using homomorphic encryption
JP6419633B2 (ja) 2015-04-09 2018-11-07 株式会社日立ソリューションズ 検索システム
WO2017168798A1 (ja) * 2016-03-30 2017-10-05 株式会社日立ソリューションズ 暗号化検索インデックスマージサーバ、暗号化検索インデックスマージシステム、及び暗号化検索インデックスマージ方法
JP2018029268A (ja) * 2016-08-18 2018-02-22 三菱電機株式会社 暗号システム、暗号装置、暗号プログラム及び暗号方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7217836B1 (ja) * 2021-12-27 2023-02-03 三菱電機株式会社 データ管理装置、秘匿検索システム、秘匿検索方法、および、秘匿検索プログラム
WO2023127038A1 (ja) * 2021-12-27 2023-07-06 三菱電機株式会社 登録要求装置、検索要求装置、データ管理装置、秘匿検索システム、秘匿検索方法、および、秘匿検索プログラム

Also Published As

Publication number Publication date
WO2020110830A1 (ja) 2020-06-04
US20220311621A1 (en) 2022-09-29
DE112019005865T5 (de) 2021-09-09

Similar Documents

Publication Publication Date Title
JP6180177B2 (ja) プライバシーを保護することができる暗号化データの問い合わせ方法及びシステム
WO2017181911A1 (zh) 基于公钥可搜索加密的文件存储、搜索方法及存储系统
JP7302600B2 (ja) 情報処理システムおよび情報処理方法
WO2020110830A1 (ja) 情報処理装置および情報処理方法
JP2010061103A (ja) 高速検索可能な暗号化のための方法、装置およびシステム
JP6599066B1 (ja) 登録装置、サーバ装置、秘匿検索システム、秘匿検索方法、登録プログラムおよびサーバプログラム
WO2019205366A1 (zh) 一种图片管理方法、装置、计算机设备及存储介质
WO2022202284A1 (ja) データ共有システム、データ共有方法、およびデータ共有プログラム
JP2012164031A (ja) データ処理装置及びデータ保管装置及びデータ処理方法及びデータ保管方法及びプログラム
CN111191289A (zh) 一种隐私数据的展示与存储的方法
JP2018526666A (ja) 秘匿性が強化されたパーソナル検索インデックス
WO2019120038A1 (zh) 数据加密存储
KR20220092811A (ko) 암호화 데이터를 저장하는 방법 및 장치
JP6557338B2 (ja) 類似性秘匿検索システム、類似性秘匿検索方法
JPWO2015052957A1 (ja) 暗号文比較システム
JP2004234344A (ja) データベースアクセスシステム
CN109255248A (zh) 一种基于加解密算法的全文检索方法
JP2004072151A (ja) ファイル暗号化機能を有する端末装置
CN108920968B (zh) 一种基于连接关键词的文件可搜索加密方法
KR20130040065A (ko) 전자 장치 및 그 암호화 방법
US11887508B2 (en) Information processing apparatus and information processing method
CN113065146A (zh) 一种用于区块链数据保护的同态加密方法
Kapse et al. Secure and Efficient Search Technique in Cloud Computing
Sharmila Secure retrieval of files using homomorphic encryption for cloud computing
Gupta Hybrid Searchable Encryption Scheme for Data Security in Cloud

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190208

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20190214

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190515

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20190522