説明

端末装置、サーバ、データ処理システム、データ処理方法、及びプログラム

【課題】入力データの内容を知られずにサーバに処理をさせる端末装置を提供すること。
【解決手段】完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化部と、前記暗号化部により生成された暗号データをサーバに送信する暗号データ送信部と、前記サーバにて所定の処理が施された前記暗号データを受信する暗号データ受信部と、前記所定の処理が施された暗号データを復号する復号部と、を備える、端末装置が提供される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、端末装置、サーバ、データ処理システム、データ処理方法、及びプログラムに関する。
【背景技術】
【0002】
近年、防犯上の理由から監視カメラシステムの需要が高まっている。監視カメラシステムは、主に、監視対象を撮像する監視カメラと、監視カメラが撮像した映像データを解析する監視サーバにより構成される。監視者は、監視サーバに接続された表示装置を介して監視カメラが撮像した映像データをチェックする。また、監視サーバは、映像データを解析した結果、監視対象に異常がある場合に警告を発したり、映像データ中で異常がある部分を監視者に明示したりする。最近では映像データの解析技術が高度に発展しており、監視者は、高い確率で効率的に監視対象の異常を発見できるようになっている。
【0003】
一方で、監視対象に異常がない場合の映像データも監視者にチェックされるため、プライバシーの侵害が懸念されている。このような懸念を払拭するため、映像データの中で監視対象に異常がない部分を監視者に見られないようにする仕組みが検討されている。例えば、下記の特許文献1には、映像データの中で監視対象に異常がない部分をマスキングする技術が開示されている。この技術は、監視カメラに異常検出手段とマスキング手段を設け、異常が検出されていない部分をマスキングした映像データを監視カメラが生成して監視サーバに送るというものである。この技術を用いれば、異常が検出されていない部分を監視者に見られることがなくなり、プライバシーの侵害を回避することができる。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2005−269489号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
但し、上記の特許文献1に記載の技術は、監視カメラに異常検出手段を設けることが前提とされている。しかし、監視カメラに異常検出手段を設けると、監視カメラのリバースエンジニアリングが行われた場合に、異常検出手段の異常検出ロジックが露呈してしまう危険性がある。そのため、監視サーバに異常検出手段を設けることを前提に、異常が検出された映像データだけを監視サーバに送るような仕組みが求められている。つまり、監視サーバに映像データの内容を知られずに、映像データの異常検出を監視サーバに実行させる仕組みが求められている。
【0006】
また、監視カメラシステムとは異なるが、データをサーバにて処理させるサーバ・クライアントシステムにおいて、クライアント端末から入力されたデータをサーバに知られずに処理させたい場合にも同様の仕組みが求められる。例えば、検索システムにおいて、クライアント端末から入力された検索キーワードを検索サーバに知られずに、検索サーバに検索処理をさせたい場合が考えられる。また、クラウドシステムにおいて、クライアント端末から入力された入力データをクラウドサーバに知られずに、クラウドサーバに所定の処理をさせたい場合が考えられる。
【0007】
そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、処理すべき入力データの内容をサーバに漏らすことなく、入力データに対する処理をサーバに代行させることが可能な新規かつ改良されたデータ処理システム、当該データ処理システムに含まれる端末装置及びサーバ、当該データ処理システムで用いるデータ処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明のある観点によれば、完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化部と、前記暗号化部により生成された暗号データをサーバに送信する暗号データ送信部と、前記サーバにて所定の処理が施された前記暗号データを受信する暗号データ受信部と、前記所定の処理が施された暗号データを復号する復号部と、を備える、端末装置が提供される。
【0009】
また、上記の端末装置は、被写体を撮像して画像データを生成する撮像部をさらに備えていてもよい。この場合、前記暗号化部は、前記撮像部により生成された画像データを暗号化して暗号データを生成し、前記所定の処理は、前記画像データに基づいて被写体の異常を判定するための異常判定アルゴリズムに前記暗号データを入力し、当該異常判定アルゴリズムから出力された判定結果を前記所定の処理が施された暗号データとして出力する処理である。
【0010】
また、上記の端末装置は、前記復号部により前記所定の処理が施された暗号データが復号され、前記異常判定アルゴリズムから出力された判定結果が得られた後、当該判定結果が異常を示すものであるか否かを判定する異常判定部と、前記異常判定部により前記判定結果が異常を示すものである場合に、前記撮像部により生成された画像データを前記サーバに送信する画像データ送信部と、をさらに備えていてもよい。
【0011】
また、上記の端末装置は、前記完全準同型暗号方式に基づく公開鍵と秘密鍵とを保持する鍵保持部をさらに備えていてもよい。この場合、前記暗号化部は、前記鍵保持部により保持された公開鍵により入力データを暗号化し、前記復号部は、前記鍵保持部により保持された秘密鍵により前記所定の処理が施された暗号データを復号する。
【0012】
また、前記所定の処理は、前記公開鍵を利用して実行されてもよい。
【0013】
また、上記の端末装置は、検索データを入力するための入力部と、前記検索データに基づく検索結果を表示する表示部と、をさらに備えていてもよい。この場合、前記暗号化部は、前記入力部により入力された検索データを暗号化して暗号データを生成し、前記所定の処理は、前記検索データに基づいて情報を検索するための検索アルゴリズムに前記暗号データを入力し、当該検索アルゴリズムから出力された検索結果を前記所定の処理が施された暗号データとして出力する処理であり、前記表示部は、前記復号部により前記所定の処理が施された暗号データが復号され、前記検索アルゴリズムから出力された検索結果が得られた後、当該検索結果を表示する。
【0014】
また、上記課題を解決するために、本発明の別の観点によれば、完全準同型暗号方式により入力データを暗号化して得られた暗号データを端末装置から受信する暗号データ受信部と、前記暗号データに所定の処理を施す処理部と、前記所定の処理が施された暗号データを前記端末装置に送信する暗号データ送信部と、を備える、サーバが提供される。
【0015】
また、上記課題を解決するために、本発明の別の観点によれば、完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化部と、前記暗号化部により生成された暗号データをサーバに送信する第1の送信部と、前記サーバにて所定の処理が施された前記暗号データを受信する第1の受信部と、前記所定の処理が施された暗号データを復号する復号部と、を有する、端末装置と、前記第1の送信部により送信された暗号データを受信する第2の受信部と、前記暗号データに対して前記所定の処理を施す処理部と、前記所定の処理が施された前号データを前記端末装置に送信する第2の送信部と、を有する、前記サーバと、を含む、データ処理システムが提供される。
【0016】
また、上記課題を解決するために、本発明の別の観点によれば、端末装置が、完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化ステップと、前記暗号化ステップで生成された暗号データをサーバに送信する第1の送信ステップと、前記サーバが、前記第1の送信ステップで送信された暗号データを受信する第2の受信ステップと、前記暗号データに対して前記所定の処理を施す処理ステップと、前記所定の処理が施された前号データを前記端末装置に送信する第2の送信ステップと、前記端末装置が、前記サーバにて所定の処理が施された前記暗号データを受信する第2の受信ステップと、前記所定の処理が施された暗号データを復号する復号ステップと、を含む、データ処理方法が提供される。
【0017】
また、上記課題を解決するために、本発明の別の観点によれば、完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化機能と、前記暗号化機能により生成された暗号データをサーバに送信する暗号データ送信機能と、前記サーバにて所定の処理が施された前記暗号データを受信する暗号データ受信機能と、前記所定の処理が施された暗号データを復号する復号機能と、をコンピュータに実現させるためのプログラムが提供される。
【0018】
また、上記課題を解決するために、本発明の別の観点によれば、完全準同型暗号方式により入力データを暗号化して得られた暗号データを端末装置から受信する暗号データ受信機能と、前記暗号データに処理の処理を施す処理機能と、前記所定の処理が施された暗号データを前記端末装置に送信する暗号データ送信機能と、をコンピュータに実現させるプログラムが提供される。
【0019】
また、上記課題を解決するために、本発明の別の観点によれば、上記のプログラムが記録された、コンピュータにより読み取り可能な記録媒体が提供される。
【発明の効果】
【0020】
以上説明したように本発明によれば、処理すべき入力データの内容をサーバに漏らすことなく、入力データに対する処理をサーバに代行させることが可能になる。
【図面の簡単な説明】
【0021】
【図1】本発明の第1実施形態に係る監視カメラシステムのシステム構成について説明するための説明図である。
【図2】同実施形態に係る監視カメラの機能構成について説明するための説明図である。
【図3】同実施形態に係る監視サーバの機能構成について説明するための説明図である。
【図4】同実施形態に係る画像解析装置の機能構成について説明するための説明図である。
【図5】同実施形態に係る異常判定アルゴリズム生成装置の機能構成について説明するための説明図である。
【図6】完全準同型暗号の特性について説明するための説明図である。
【図7】同実施形態に係る監視カメラシステムにおける異常判定処理の流れについて説明するための説明図である。
【図8】本発明の第2実施形態に係るデータ処理システムのシステム構成について説明するための説明図である。
【図9】同実施形態に係るユーザ端末の機能構成について説明するための説明図である。
【図10】同実施形態に係るデータ処理サーバの機能構成について説明するための説明図である。
【図11】同実施形態に係るデータ処理システムにおけるデータ処理の流れについて説明するための説明図である。
【図12】本発明の第3実施形態に係る検索システムのシステム構成について説明するための説明図である。
【図13】同実施形態に係る検索サーバの機能構成について説明するための説明図である。
【図14】同実施形態に係る検索システムにおける検索処理の流れについて説明するための説明図である。
【図15】本発明の実施形態に係る監視カメラ、監視サーバ、ユーザ端末、データ処理サーバ、検索サーバの機能を実現するためのハードウェア構成について説明するための説明図である。
【発明を実施するための形態】
【0022】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0023】
[説明の流れについて]
ここで、以下に記載する本発明の実施形態に関する説明の流れについて簡単に述べる。まず、図1を参照しながら、本発明の第1実施形態に係る監視カメラシステムのシステム構成について説明する。次いで、図2を参照しながら、同実施形態に係る監視カメラ10の機能構成について説明する。次いで、図3を参照しながら、同実施形態に係る監視サーバ20の機能構成について説明する。
【0024】
次いで、図4を参照しながら、同実施形態に係る画像解析装置21の機能構成について説明する。次いで、図5を参照しながら、同実施形態に係る異常判定アルゴリズム生成装置22の機能構成について説明する。次いで、図7を参照しながら、同実施形態に係る監視カメラシステムにおける異常判定処理の流れについて説明する。また、上記説明の中で、図6を参照しながら、完全準同型暗号の特性について説明する。
【0025】
次に、図8を参照しながら、本発明の第2実施形態に係るデータ処理システムのシステム構成について説明する。次いで、図9を参照しながら、同実施形態に係るユーザ端末40の機能構成について説明する。次いで、図10を参照しながら、同実施形態に係るデータ処理サーバ60の機能構成について説明する。次いで、図11を参照しながら、同実施形態に係るデータ処理システムにおけるデータ処理の流れについて説明する。
【0026】
次に、図12を参照しながら、本発明の第3実施形態に係る検索システムのシステム構成について説明する。次いで、図13を参照しながら、同実施形態に係る検索サーバ70の機能構成について説明する。なお、同実施形態に係る検索システムに含まれるユーザ端末40の機能構成は第2実施形態に係るユーザ端末40の機能構成と実質的に同じであるため、ユーザ端末40の機能構成に関する詳細な説明は割愛する。次いで、図14を参照しながら、同実施形態に係る検索システムにおける検索処理の流れについて説明する。
【0027】
次に、図15を参照しながら、本発明の実施形態に係る監視カメラ10、監視サーバ20、ユーザ端末40、データ処理サーバ60、検索サーバ70の機能を実現するためのハードウェア構成例について説明する。最後に、本発明に係る実施形態の技術的思想について纏め、当該技術的思想から得られる作用効果について簡単に説明する。
【0028】
(説明項目)
1:第1実施形態
1−1:監視カメラシステムのシステム構成
1−2:監視カメラ10の機能構成
1−3:監視サーバ20の機能構成
1−3−1:画像解析装置21の機能構成
1−3−2:異常判定アルゴリズム生成装置22の機能構成
1−4:異常判定処理の流れ
2:第2実施形態
2−1:データ処理システムのシステム構成
2−2:ユーザ端末40の機能構成
2−3:データ処理サーバ60の機能構成
2−4:データ処理の流れ
3:第3実施形態
3−1:検索システムのシステム構成
3−2:検索サーバ70の機能構成
3−3:検索処理の流れ
4:ハードウェア構成
5:まとめ
【0029】
<1:第1実施形態>
本発明の第1実施形態について説明する。本実施形態は、むやみにプライバシーが侵害されないように工夫された監視カメラシステムに関する。
【0030】
[1−1:監視カメラシステムのシステム構成]
まず、図1を参照しながら、本実施形態に係る監視カメラシステムのシステム構成について説明する。図1は、本実施形態に係る監視カメラシステムのシステム構成について説明するための説明図である。
【0031】
図1に示すように、監視カメラシステムは、主に、監視カメラ10と、監視サーバ20と、表示装置30とにより構成される。なお、図1には2台の監視カメラ10(#1、#2)を含む監視カメラシステムの構成が例示されているが、監視カメラ10の台数は2台に限定されない。例えば、監視カメラ10が1台しか含まれない監視カメラシステムや、3台以上の監視カメラ10が含まれる監視カメラシステムに対しても、本実施形態の技術を適用することが可能である。
【0032】
監視カメラ10は、監視対象を撮像する撮像装置である。また、監視カメラ10は、監視サーバ20に接続されている。なお、監視カメラ10と監視サーバ20は、伝送ケーブルにより接続されていてもよいし、ネットワークを介して接続されていてもよいし、或いは、無線通信網を介して接続されていてもよい。但し、以下では、監視カメラ10と監視サーバ20が伝送ケーブルにより接続されているものと仮定して説明を進める。
【0033】
監視カメラ10は、監視対象を撮像すると、撮像して得られた画像データを暗号化する。そして、監視カメラ10は、画像データを暗号化して得られた暗号データを監視サーバ20に伝送する。画像データを暗号化せずに監視サーバ20に伝送すると、監視対象に異常がなくても、その監視対象を撮像した画像データを監視者に見られてしまう。つまり、むやみに監視対象のプライバシーが侵害されてしまうことになる。そこで、本実施形態においては、監視サーバ20に画像データを伝送する際に、画像データを暗号化する構成としているのである。もちろん、暗号データは、監視サーバ20により復号できないものとする。また、監視カメラ10は、後述する完全準同型暗号方式に基づいて画像データを暗号化する。
【0034】
上記のように、監視対象が撮像されると、監視カメラ10から監視サーバ20へと暗号データが伝送される。暗号データが伝送されると、監視サーバ20は、その暗号データを用いて監視対象に異常があるか否かを判定するための処理を実行する。具体的には、入力された画像データに異常があるか否かを判定するための異常判定アルゴリズムに対し、監視サーバ20が、監視カメラ10から伝送された暗号データを入力する。但し、この異常判定アルゴリズムは、監視サーバ20が予め保持しているものとする。そして、異常判定アルゴリズムから演算結果が出力されると、監視サーバ20は、異常判定アルゴリズムから出力された演算結果を監視カメラ10に伝送する。
【0035】
なお、画像データを暗号化する際に完全準同型暗号方式が用いられているため、異常判定アルゴリズムから出力された演算結果は、画像データを異常判定アルゴリズムに入力した場合に得られる演算結果を暗号化したものとなる。監視サーバ20から監視カメラ10に異常判定アルゴリズムから出力された演算結果が伝送されると、監視カメラ10は、その演算結果を復号し、画像データを異常判定アルゴリズムに入力した場合に得られる演算結果(以下、異常判定結果)を得る。異常判定結果が得られると、監視カメラ10は、その異常判定結果を参照し、監視対象に異常が含まれる場合には暗号化していない画像データを監視サーバ20に伝送する。
【0036】
暗号化していない画像データが監視サーバ20に伝送されると、監視サーバ20は、その画像データを表示装置30に表示させる。表示装置30に画像データが表示されると、監視者は、表示装置30に表示された画像データをチェックし、監視対象に異常があるか否かを目で見てチェックする。上記の通り、異常判定アルゴリズムは、監視サーバ20に保持されたままである。また、監視対象に異常がない場合、監視カメラ10により撮像された監視対象の画像データは、監視サーバ20に伝送されない。そのため、監視対象に異常がない場合には監視対象の画像データが監視者に見られないことになり、むやみにプライバシーが侵害されるのを回避することができる。
【0037】
(完全準同型暗号方式について)
ここで、完全準同型暗号方式について説明を補足する。完全準同型暗号は、図6に示すような特性を持っている。なお、以下では、入力データをp、完全準同型暗号方式の公開鍵をpk、秘密鍵をsk、所定の処理アルゴリズムを実現する処理関数をfと表記する。
【0038】
まず、図6のProcess #1と記載した処理に注目する。Process #1は、暗号化ステップ、処理Aステップ、復号ステップの3ステップにより構成されている。暗号化ステップでは、公開鍵pkを用いて入力データpが暗号化され、暗号データcが生成される(c←Enc(p,pk))。続く処理Aステップでは、処理関数f、公開鍵pkを用いて暗号データcに対して所定の処理が施され、処理結果rが得られる(r←Process(c,f,pk))。続く復号ステップでは、秘密鍵skを用いて処理結果rに復号処理が施され、復号結果R’が生成される(R’←Dec(r,sk))。
【0039】
次に、図6のProcess #2と記載した処理に注目する。Process #2は、処理Bステップにより構成されている。処理Bステップでは、処理関数fを用いて入力データpに所定の処理が施され、処理結果Rが得られる(R←Process(p,f))。上記の通り、Process #1は入力データpを暗号化した後で処理関数fを施す工程であり、Process #2は入力データpを暗号化せずにそのまま処理関数fを施す工程である。
【0040】
完全準同型暗号の特性は、これら2つの工程で得られた結果R、R’が一致する点にある。なお、完全準同型暗号方式の詳細については、例えば、Graig Gentryによる“Fully Homomorophic Encryption Using Ideal Lattices”や、Marten van Dijk, Craig Gentry, Shai Halevi, Vinod Vaikuntanathianによる“Fully Homomorphic Encryption over the Integers”などの文献を参照されたい。
【0041】
完全準同型暗号の特性を利用すると、Process #2に示した入力データpに対する処理関数fの処理を、Process #1のような3ステップの処理に置き換えることが可能になる。また、Process #1の場合には入力データpが暗号化された状態で処理Aステップの処理が実行されるため、処理Aステップを他人に実行させても、他人が入力データpの内容を知ることはできない。つまり、完全準同型暗号の特性を利用すると、入力データpの内容を知られずに、入力データpに対する処理(処理関数fの処理)を他人に実行させるといったことが可能になる。
【0042】
上記の監視カメラシステムとの対応関係について述べると、上記の暗号化ステップは、監視カメラ10における画像データの暗号化に対応する。また、上記の処理Aステップは、監視サーバ20における暗号データを入力とした異常判定アルゴリズムの実行処理に対応する。そして、上記の復号ステップは、監視カメラ10により異常判定結果を得る処理に対応する。つまり、完全準同型暗号の特性により、画像データを監視者に見られずに、画像データに対する異常判定処理を代行させることが可能になるのである。
【0043】
以上、本実施形態に係る監視カメラシステムのシステム構成について説明した。以下、当該監視カメラシステムに含まれる各構成要素の機能について、より詳細に説明する。
【0044】
[1−2:監視カメラ10の機能構成]
まず、図2を参照しながら、本実施形態に係る監視カメラ10の機能構成について説明する。図2は、本実施形態に係る監視カメラ10の機能構成について説明するための説明図である。
【0045】
図2に示すように、監視カメラ10は、主に、鍵生成部101と、撮像部102と、画像記憶部103と、暗号化部104と、通信部105と、復号部106と、画像送信部107とにより構成される。
【0046】
鍵生成部101は、完全準同型暗号方式の公開鍵pk及び秘密鍵skを生成する手段である。鍵生成部101により生成された公開鍵pkは、暗号化部104に入力される。一方、鍵生成部101により生成された秘密鍵skは、復号部106に入力される。暗号化部104に入力された公開鍵pkは、暗号化部104により保持される。また、復号部106に入力された秘密鍵skは、復号部106により保持される。なお、鍵生成部101により生成された公開鍵pkは、監視サーバ20にも提供される。また、監視サーバ20に提供された公開鍵pkは、監視サーバ20により保持される。
【0047】
撮像部102は、監視対象を撮像して画像データpを生成する手段である。撮像部102により生成された画像データpは、順次、画像記憶部103に格納される。そして、画像記憶部103に格納された画像データpは、暗号化部104により読み出される。画像データpを読み出した暗号化部104は、公開鍵pkを用いて画像データpを暗号化し、暗号データcを生成する(c←Enc(p,pk))。暗号化部104により生成された暗号データcは、通信部105に入力される。暗号データcが入力されると、通信部105は、入力された暗号データcを監視サーバ20に伝送する。
【0048】
監視サーバ20に暗号データcが伝送されると、監視サーバ20は、暗号データcに異常判定アルゴリズムに基づく処理fを施し(r←Process(c,f,pk))、その処理結果rを監視カメラ10に伝送する。監視サーバ20から伝送された処理結果rは、通信部105により受信され、復号部106に入力される。処理結果rが入力された復号部106は、秘密鍵skを用いて、入力された処理結果rに復号処理を施して異常判定結果Rを得る(R←Dec(r,sk))。復号部106による復号処理により得られた異常判定結果Rは、画像送信部107に入力される。
【0049】
異常判定結果Rが入力されると、画像送信部107は、異常判定結果Rが「異常あり」を示すものか否かを確認し、「異常あり」を示すものである場合、画像記憶部103から画像データpを読み出す。異常判定結果Rが「異常あり」を示すものであった場合、画像送信部107は、画像記憶部103から読み出した画像データpを通信部105に入力する。画像データpが入力されると、通信部105は、入力された画像データpを監視サーバ20に伝送する。なお、異常判定結果Rが「異常なし」であった場合、画像送信部107は、画像記憶部103から画像データpを読み出さない。そのため、監視対象に異常がない場合、監視サーバ20に画像データpが伝送されることはない。
【0050】
以上、監視カメラ10の機能構成について説明した。
【0051】
[1−3:監視サーバ20の機能構成]
次に、図3を参照しながら、本実施形態に係る監視サーバ20の機能構成について説明する。図3は、本実施形態に係る監視サーバ20の機能構成について説明するための説明図である。
【0052】
図3に示すように、監視サーバ20は、主に、画像解析装置21と、異常判定アルゴリズム生成装置22とにより構成される。
【0053】
画像解析装置21は、監視カメラ10から伝送された画像データを解析し、その画像データに含まれる監視対象の異常を検出する手段である。また、異常判定アルゴリズム生成装置22は、画像データに含まれる監視対象に異常があるか否かを判定するための異常判定アルゴリズムを生成する手段である。異常判定アルゴリズム生成装置22により生成された異常判定アルゴリズムは、画像解析装置21に入力される。そして、画像解析装置21は、異常判定アルゴリズム生成装置22により生成された異常判定アルゴリズムを用いて、監視カメラ10から入力された画像データの解析を実行する。
【0054】
但し、本実施形態の場合、監視対象に異常があることが判明するまで監視カメラ10から監視サーバ20へと画像データが伝送されることはない。その代わりに、監視対象に異常があるか否かの判定が行われる際には、画像解析装置21に画像データを暗号化した暗号データが入力される。そして、画像解析装置21は、暗号データを異常判定アルゴリズムに入力し、異常判定アルゴリズムから出力された判定結果を監視カメラ10に伝送する。なお、画像解析装置21による解析処理自体は、画像データに対する解析処理と実質的に同じである。異なるのは、異常判定アルゴリズムに入力されるデータの種類である。
【0055】
一方、監視対象に異常があることが判明した場合、監視カメラ10から画像データが監視サーバ20に伝送される。この場合、画像解析装置21は、監視カメラ10から伝送されてきた画像データを受信し、表示装置30に表示させる。表示装置30に画像データが表示されると、監視者は、表示装置30に表示された画像データを参照し、監視対象に異常があるか否かを目視によりチェックする。また、画像解析装置21は、監視カメラ10から伝送されてきた画像データを保持する。
【0056】
(1−3−1:画像解析装置21の機能構成)
ここで、図4を参照しながら、画像解析装置21の機能構成について、より詳細に説明する。図4は、本実施形態に係る画像解析装置21の機能構成について説明するための説明図である。
【0057】
図4に示すように、画像解析装置21は、通信部211と、異常判定アルゴリズム実行部212と、画像受信部213と、記憶部214とを有する。
【0058】
通信部211は、監視カメラ10から暗号データや画像データを受信したり、監視カメラ10に判定結果を送信したりする手段である。また、異常判定アルゴリズム実行部212は、異常判定アルゴリズム生成装置22により生成された異常判定アルゴリズムに暗号データを入力し、異常判定アルゴリズムに基づく処理を実行する手段である。異常判定アルゴリズムに基づく処理の結果は、通信部211を介して監視カメラ10に伝送される。画像受信部213は、監視対象に異常があると判定された場合に監視カメラ10から伝送される画像データを受信する手段である。画像データを受信した画像受信部213は、受信した画像データを記憶部214に格納すると共に、その画像データを表示装置30に表示させる。
【0059】
(1−3−2:異常判定アルゴリズム生成装置22の機能構成)
次に、図5を参照しながら、異常判定アルゴリズム生成装置22の機能構成について、より詳細に説明する。図5は、本実施形態に係る異常判定アルゴリズム生成装置22の機能構成について説明するための説明図である。
【0060】
図5に示すように、異常判定アルゴリズム生成装置22は、主に、学習データ収集部221と、記憶部222と、機械学習部223とを有する。
【0061】
学習データ収集部221は、異常判定アルゴリズムを生成する際に利用される学習データを収集する手段である。異常判定アルゴリズムの生成に利用される学習データは、例えば、画像データと、その画像データに含まれる監視対象が異常であるか否かを示す判定結果データとを含む。この学習データは、監視カメラ10から収集されたものであってもよいし、図示しない情報源から収集されたものであってもよいし、或いは、監視者により予め与えられたものであってもよい。学習データ収集部221により収集された学習データは、記憶部222に格納される。
【0062】
記憶部222に格納された学習データは、機械学習部223により読み出される。学習データを読み出した機械学習部223は、読み出した学習データを利用し、機械学習により異常判定アルゴリズムを生成する。機械学習部223により生成された異常判定アルゴリズムは、画像解析装置21に提供される。
【0063】
なお、機械学習部223により用いられる機械学習の方法は任意である。例えば、画像データを入力とし、正常であるか、異常であるかを出力(例えば、正常な場合に0、異常な場合に1を出力)する判定器を生成可能な機械学習の方法が考えられる。また、画像データを入力とし、0又は1を出力する複数の弱判定器を組み合わせ、全ての弱判定器から出力された結果に基づいて最終的に正常であるか、異常であるかを出力する判定器を生成可能な機械学習の方法が考えられる。例えば、1を出力する弱判定器の数が所定の割合を超えた場合に異常と判定するような判定器を生成する機械学習の方法が考えられる。
【0064】
以上説明したように、本実施形態に係る監視サーバ20は、画像データから監視対象の異常を判定することが可能な異常判定アルゴリズムに暗号データを入力し、その出力を監視カメラ10に伝送する機能を有する。また、監視サーバ20は、監視カメラ10から画像データが伝送されてきた場合に、その画像データを保持すると共に、その画像データを表示装置30に表示させる機能を有する。
【0065】
なお、図3の例では異常判定アルゴリズムを生成する監視サーバ20の構成を示したが、異常判定アルゴリズムは、監視サーバ20に予め外部から与えられていてもよい。また、機械学習とは異なる方法により生成された異常判定アルゴリズムが利用されてもよい。さらに、異常判定アルゴリズム生成装置22は、監視者による画像データのチェック結果を異常判定アルゴリズムの生成工程で利用するように構成されていてもよい。
【0066】
[1−4:異常判定処理の流れ]
次に、図7を参照しながら、本実施形態に係る異常判定処理の流れについて説明する。図7は、本実施形態に係る異常判定処理の流れについて説明するための説明図である。なお、図7に示す異常判定処理は、監視カメラ10及び監視サーバ20により実行される。また、監視カメラ10は、完全準同型暗号方式の公開鍵pk及び秘密鍵skを保持しているものとする。さらに、監視サーバ20は、完全準同型暗号方式の公開鍵pkを保持しているものとする。
【0067】
図7に示すように、まず、監視サーバ20は、異常判定アルゴリズムfを生成する(S101)。また、監視カメラ10は、監視対象を撮像し、画像データpを生成する(S102)。画像データpを生成した監視カメラ10は、公開鍵pkを利用して画像データpを暗号化し、暗号データcを生成する(S103)。つまり、監視カメラ10は、c←Enc(p,pk)を実行する。次いで、監視カメラ10は、暗号データcを監視サーバ20に送信する(S104)。
【0068】
暗号データcを受信した監視サーバ20は、受信した暗号データcを異常判定アルゴリズムfに入力し、公開鍵pkを用いて異常判定アルゴリズムfを実行する(S105)。つまり、監視サーバ20は、r←Process(c,f,pk)を実行し、異常判定アルゴリズムfの出力結果rを得る。次いで、監視サーバ20は、異常判定アルゴリズムfの出力結果rを監視カメラ10に送信する(S106)。
【0069】
異常判定アルゴリズムfの出力結果rを受信した監視カメラ10は、秘密鍵skを用いて異常判定アルゴリズムfの出力結果rに復号処理を施し、異常判定結果Rを得る(S107)。つまり、監視カメラ10は、R←Dec(r,sk)を実行する。異常判定結果Rを得た監視カメラ10は、異常判定結果Rが「異常あり」を示すものか否かを確認し、「異常あり」を示すものである場合には処理をステップS109に進める。一方、異常判定結果Rが「異常なし」を示すものである場合、監視カメラ10は、処理をステップS102に進める。
【0070】
処理をステップS109に進めた場合、監視カメラ10は、ステップS102で生成された画像データpを監視サーバ20に送信する(S109)。画像データpを受信した監視サーバ20は、受信した画像データpを表示装置30に表示させる(S110)。このとき、監視サーバ20は、監視カメラ10から受信した画像データpを保持する。表示装置30に画像データpが表示されると、監視者は、表示装置30に表示された画像データpを参照し、目で見て監視対象に異常があるか否かをチェックする。
【0071】
以上、本実施形態に係る異常判定処理の流れについて説明した。なお、上記のステップS109における画像データpの送信時に、通信用の暗号鍵を用いて画像データpを暗号化するように構成されていてもよい。通信用の暗号鍵は、公開鍵暗号方式の暗号鍵であってもよいし、共通鍵暗号方式の暗号鍵であってもよい。また、図7の例では、ステップS101において異常判定アルゴリズムfを生成する構成としたが、異常判定アルゴリズムfは、外部から監視サーバ20に予め与えられていてもよい。
【0072】
以上、本発明の第1実施形態について説明した。本実施形態に係る技術を適用することにより、異常判定アルゴリズムを監視カメラ10に搭載せずに済み、かつ、異常を含まない画像データを監視サーバ20に送信せずに済む。その結果、異常判定アルゴリズムの漏洩リスクを回避し、かつ、むやみにプライバシーが侵害されるのを防止することが可能になる。また、異常判定アルゴリズムを更新する場合にも、監視サーバ20において異常判定アルゴリズムを更新するだけで済み、アルゴリズムの更新コストを低く抑えることができる。さらに言えば、監視者が異常のない監視対象の画像データを目視確認する手間が省かれ、監視に要する人的コストを低く抑えることが可能になる。
【0073】
<2:第2実施形態>
次に、本発明の第2実施形態について説明する。本実施形態は、サーバにデータ処理を代行させるデータ処理システムに関する。例えば、本実施形態に係る技術は、クラウドシステムやシンクライアントシステムなどに適用することができる。
【0074】
[2−1:データ処理システムのシステム構成]
まず、図8を参照しながら、本実施形態に係るデータ処理システムのシステム構成について説明する。図8は、本実施形態に係るデータ処理システムのシステム構成について説明するための説明図である。
【0075】
図8に示すように、本実施形態に係るデータ処理システムは、主に、ユーザ端末40と、データ処理サーバ60とにより構成される。また、ユーザ端末40とデータ処理サーバ60とは、ネットワーク50を介して接続されているものとする。なお、図8には2台のデータ処理サーバ60(#1、#2)を含むデータ処理システムの構成が例示されているが、データ処理サーバ60の台数は2台に限定されない。例えば、データ処理サーバ60が1台しか含まれないデータ処理システムや、3台以上のデータ処理サーバ60が含まれるデータ処理システムに対しても、本実施形態の技術を適用することが可能である。
【0076】
ユーザ端末40は、ユーザがデータを入力したり、データを表示したりする手段である。例えば、ユーザ端末40は、Webブラウザ、ワードプロセッサ、表計算ソフトウェア、画像編集ソフトウェアなどのアプリケーションの実行画面を表示したり、そのアプリケーションに対するデータ入力を受け付けたりする。なお、アプリケーションの実行画面を表示するための表示データは、データ処理サーバ60からユーザ端末40に提供されるようにしてもよいし、ユーザ端末40により生成されるようにしてもよい。
【0077】
データ処理サーバ60は、ユーザ端末40から送信されてきたデータを処理する手段である。ユーザ端末40から処理すべきデータを受信した場合、データ処理サーバ60は、受信したデータに所定の処理を施し、処理後のデータをユーザ端末40に送信する。所定の処理としては、文字種の変換処理、キーワードの検索処理、様々な関数による演算処理、ネットワーク50に接続された情報源を対象とした情報検索処理、種々の画像処理、及び各種アプリケーションに関する処理などが考えられる。
【0078】
但し、本実施形態は、処理すべきデータがデータ処理サーバ60に知られないようにしながら、そのデータの処理をデータ処理サーバ60に実行させる仕組みの提供を主な目的としている。つまり、本実施形態は、ユーザ端末40に入力された処理すべきデータの内容がデータ処理サーバ60を漏らさないようにして、ユーザのプライバシーがむやみに侵害されないようにする仕組みの提供を目的とする。このような仕組みを実現するため、ユーザ端末40は、処理すべきデータをそのままデータ処理サーバ60に送信せずに、処理すべきデータを完全準同型暗号方式により暗号化し、暗号化されたデータ(以下、暗号データ)をデータ処理サーバ60に送信する。
【0079】
また、暗号データを受信したデータ処理サーバ60は、受信した暗号データに対して所定の処理を施し、処理後に得られたデータ(以下、処理後データ)をユーザ端末40に送信する。そして、処理後データを受信したユーザ端末40は、受信した処理後データを復号する。先に説明したように、完全準同型暗号の特性から、ユーザ端末40による復号処理で得られたデータは、処理すべき元のデータに所定の処理を施して得られるデータに一致する。つまり、ユーザ端末40は、処理すべきデータをデータ処理サーバ60に処理させたことになる。
【0080】
上記のように、処理すべきデータを完全準同型暗号方式により暗号化し、暗号データをデータ処理サーバ60に処理させることにより、処理すべきデータの内容をデータ処理サーバ60に知られずに済む。その結果、ユーザのプライバシーがむやみに侵害されるのを回避することが可能になる。例えば、電子メールアプリケーションやワードプロセッサでユーザが入力した文書の内容をデータ処理サーバ60に知られることがなくなり、ユーザのプライバシーが侵害されずに済むようになる。
【0081】
以上、本実施形態に係るデータ処理システムのシステム構成について説明した。以下、当該データ処理システムに含まれる各構成要素の機能について、より詳細に説明する。
【0082】
[2−2:ユーザ端末40の機能構成]
まず、図9を参照しながら、本実施形態に係るユーザ端末40の機能構成について説明する。図9は、本実施形態に係るユーザ端末40の機能構成について説明するための説明図である。
【0083】
図9に示すように、ユーザ端末40は、主に、鍵生成部401と、入力部402と、暗号化部403と、通信部404と、復号部405と、表示部406とにより構成される。
【0084】
鍵生成部401は、完全準同型暗号方式の公開鍵pk及び秘密鍵skを生成する手段である。鍵生成部401により生成された公開鍵pkは、暗号化部403に入力される。一方、鍵生成部401により生成された秘密鍵skは、復号部405に入力される。暗号化部403に入力された公開鍵pkは、暗号化部403により保持される。また、復号部405に入力された秘密鍵skは、復号部405により保持される。なお、鍵生成部401により生成された公開鍵pkは、データ処理サーバ60にも提供される。また、データ処理サーバ60に提供された公開鍵pkは、データ処理サーバ60により保持される。
【0085】
入力部402は、処理すべきデータ(以下、入力データq)を入力するための入力手段である。入力部402を用いて入力された入力データqは、順次、暗号化部403に入力される。入力データqが入力されると、暗号化部403は、公開鍵pkを用いて入力データqを暗号化し、暗号データcを生成する(c←Enc(q,pk))。暗号化部403により生成された暗号データcは、通信部404に入力される。暗号データcが入力されると、通信部404は、入力された暗号データcをデータ処理サーバ60に送信する。
【0086】
暗号データcを受信したデータ処理サーバ60は、暗号データcに所定の処理fを施し(r←Process(c,f,pk))、その処理結果rをユーザ端末40に送信する。データ処理サーバ60から送信された処理結果rは、通信部404により受信され、復号部405に入力される。処理結果rが入力された復号部405は、秘密鍵skを用いて、入力された処理結果rに復号処理を施し、入力データqに対する処理結果R(以下、復号後処理結果R)を得る(R←Dec(r,sk))。復号部405による復号処理で得られた復号後処理結果Rは、表示部406に入力される。復号後処理結果Rが入力された表示部406は、入力された復号後処理結果Rを表示する。
【0087】
以上、ユーザ端末40の機能構成について説明した。
【0088】
[2−3:データ処理サーバ60の機能構成]
次に、図10を参照しながら、本実施形態に係るデータ処理サーバ60の機能構成について説明する。図10は、本実施形態に係るデータ処理サーバ60の機能構成について説明するための説明図である。
【0089】
図10に示すように、データ処理サーバ60は、主に、通信部601と、データ処理部602と、記憶部603とにより構成される。
【0090】
通信部601は、ネットワーク50を介してユーザ端末40からデータを受信したり、データをユーザ端末40に送信したりする通信手段である。ユーザ端末40から暗号データが送信されると、通信部601は、その暗号データを受信する。通信部601により受信された暗号データは、データ処理部602に入力される。暗号データが入力されると、データ処理部602は、入力された暗号データに所定の処理を施す。データ処理部602により得られた処理後のデータは、通信部601に入力される。処理後のデータが入力されると、通信部601は、入力された処理後のデータをユーザ端末40に送信する。なお、データ処理部602は、入力された暗号データや処理後のデータを適宜、記憶部603に格納する。
【0091】
以上、本実施形態に係るデータ処理サーバ60の機能構成について説明した。
【0092】
上記の通り、本実施形態においては、処理すべきデータがそのままデータ処理サーバ60に送信されることはない。そのため、本実施形態に係るデータ処理システムの仕組みを適用することにより、ユーザ端末40に入力されたデータの内容がデータ処理サーバ60に知られずに済み、ユーザのプライバシーを保護することが可能になる。
【0093】
[2−4:データ処理の流れ]
次に、図11を参照しながら、本実施形態に係るデータ処理の流れについて説明する。図11は、本実施形態に係るデータ処理の流れについて説明するための説明図である。なお、図11に示すデータ処理は、ユーザ端末40及びデータ処理サーバ60により実行される。また、ユーザ端末40は、完全準同型暗号方式の公開鍵pk及び秘密鍵skを保持しているものとする。さらに、データ処理サーバ60は、完全準同型暗号方式の公開鍵pkを保持しているものとする。
【0094】
図11に示すように、まず、ユーザ端末40に対し、処理すべきデータ(以下、入力データq)が入力される(S201)。入力データqが入力されると、ユーザ端末40は、公開鍵pkを利用して入力データqを暗号化し、暗号データcを生成する(S202)。つまり、ユーザ端末40は、c←Enc(q,pk)を実行する。次いで、ユーザ端末40は、暗号データcをデータ処理サーバ60に送信する(S203)。
【0095】
暗号データcを受信したデータ処理サーバ60は、受信した暗号データcを所定の処理アルゴリズムfに入力し、公開鍵pkを用いて処理アルゴリズムfによる処理を実行する(S204)。つまり、データ処理サーバ60は、r←Process(c,f,pk)を実行し、処理アルゴリズムfによる処理結果rを得る。次いで、データ処理サーバ60は、処理結果rをユーザ端末40に送信する(S205)。
【0096】
処理結果rを受信したユーザ端末40は、秘密鍵skを用いて処理結果rに復号処理を施し、復号後処理結果Rを得る(S206)。つまり、ユーザ端末40は、R←Dec(r,sk)を実行する。復号後処理結果Rが得られると、ユーザ端末40は、復号後処理結果Rをユーザに対して表示する(S207)。
【0097】
以上、本実施形態に係るデータ処理の流れについて説明した。
【0098】
以上、本発明の第2実施形態について説明した。本実施形態に係る技術を適用することにより、処理すべきデータをデータ処理サーバ60に知られることなく、データ処理サーバ60に処理を代行させることが可能になる。その結果、ユーザが入力したデータの内容をデータ処理サーバ60に知られずに済み、ユーザのプライバシーが保護される。
【0099】
例えば、複数の店舗にそれぞれ設置された複数の端末から情報を収集し、まとめて処理するようなシステムにおいて、各店舗で情報を共有したいが、各店舗が持つ独自の情報は他の店舗に知られたくないという状況がある。こうした場合に、本実施形態の技術を適用すると、各店舗の情報は暗号化により保護され、一方で各情報に対する処理は暗号化しない場合と同様に実行することができるようになる。また、医療機関の間で情報を共有する場合にも本実施形態の技術を適用することができる。例えば、患者の情報を他の医療機関に知られることなく医療情報を共有するといったことが可能になる。つまり、患者のプライバシーを保護しつつ、複数の医療機関で情報を共有することができるようになる。
【0100】
<3:第3実施形態>
次に、本発明の第3実施形態について説明する。本実施形態は、ネットワーク50に接続された情報源にある情報を検索する検索システムに関する。なお、本実施形態に係る検索システムは、上記の第2実施形態に係るデータ処理システムの応用例である。そのため、上記の第2実施形態に係る構成要素と実質的に同じ機能を有する構成要素については重複説明を避け、同じ符号を付することにより詳細な説明を省略する。
【0101】
[3−1:検索システムのシステム構成]
まず、図12を参照しながら、本実施形態に係る検索システムのシステム構成について説明する。図12は、本実施形態に係る検索システムのシステム構成について説明するための説明図である。
【0102】
図12に示すように、本実施形態に係る検索システムは、主に、ユーザ端末40と、検索サーバ70とにより構成される。また、ユーザ端末40と検索サーバ70とは、ネットワーク50を介して接続されているものとする。なお、図12には1台の検索サーバ70を含む検索システムの構成が例示されているが、検索サーバ70の台数は1台に限定されない。例えば、負荷分散のために検索サーバ70が2台以上含まれるデータ処理システムに対しても、本実施形態の技術を適用することが可能である。
【0103】
ユーザ端末40は、上記の第2実施形態に係るユーザ端末40と実質的に同じ機能を有する。但し、ここでは検索処理に特化した説明を行うことにする。ユーザ端末40は、Webブラウザなどのアプリケーションを実行する機能を有する。また、ユーザ端末40は、こうしたアプリケーションを介して検索キーワードの入力を受け付ける機能を有する。ユーザ端末40に検索キーワードが入力されると、ユーザ端末40は、入力された検索キーワードを検索サーバ70に送信する。
【0104】
検索サーバ70は、ユーザ端末40から送信されてきた検索キーワードを含む情報をネットワーク50に接続された情報源から検出する手段である。ユーザ端末40から検索キーワードを受信した場合、検索サーバ70は、ネットワーク50に接続された情報源にアクセスし、受信した検索キーワードを含む情報を検索する。情報源としては、例えば、Web上に公開されたホームページ、ブログ、掲示板などが考えられる。もちろん、これら以外にも、情報を蓄積したデータベースなども情報源として考えることができる。また、ここではネットワーク50に接続された情報源を想定しているが、検索サーバ70に接続された記憶装置(非図示)に格納されているデータベースを情報源としてもよい。
【0105】
さて、本実施形態は、検索キーサードが検索サーバ70に知られないようにしつつ、その検索キーワードに基づく検索処理を実行できるようにすることを主な目的とする。そのため、本実施形態においては、ユーザ端末40が検索キーワードをそのまま検索サーバ70に送信せず、完全準同型暗号方式により検索キーワードを暗号化してから検索サーバ70に送信する。一方、暗号化された検索キーワードを受信した検索サーバ70は、その暗号化された検索キーワードを用いて検索処理を実行し、その検索結果をユーザ端末40に送信する。そして、検索結果を受信したユーザ端末40は、受信した検索結果を復号し、情報源から提供されているままの形を有する情報を得る。
【0106】
上記のように、検索キーワードを完全準同型暗号方式により暗号化し、暗号化された検索キーワードに基づいて検索サーバ70に検索処理を実行させることにより、検索キーワードを検索サーバ70に知られずに済む。その結果、ユーザのプライバシーがむやみに侵害されるのを回避することが可能になる。
【0107】
以上、本実施形態に係る検索システムのシステム構成について説明した。次に、当該検索システムに含まれる各構成要素の機能について、より詳細に説明する。但し、ユーザ端末40の機能構成については上記の第2実施形態に係るユーザ端末40と実質的に同じであるため、ここでは詳細な説明を省略する。
【0108】
[3−2:検索サーバ70の機能構成]
図13を参照しながら、本実施形態に係る検索サーバ70の機能構成について説明する。図13は、本実施形態に係る検索サーバ70の機能構成について説明するための説明図である。
【0109】
図13に示すように、検索サーバ70は、主に、通信部701と、検索アルゴリズム実行部702とにより構成される。
【0110】
通信部701は、ネットワーク50を介してユーザ端末40からデータを受信したり、データをユーザ端末40に送信したりする通信手段である。ユーザ端末40から暗号化された検索キーワードが送信されると、通信部701は、その暗号化された検索キーワード(以下、暗号データ)を受信する。通信部701により受信された暗号データは、検索アルゴリズム実行部702に入力される。
【0111】
暗号データが入力されると、検索アルゴリズム実行部702は、入力された暗号データを入力とする検索アルゴリズムを実行する。検索アルゴリズムから検索結果が出力されると、検索アルゴリズム実行部702は、検索アルゴリズムから出力された検索結果(以下、出力結果)を通信部701に入力する。出力結果が入力された通信部701は、入力された出力結果をユーザ端末40に送信する。
【0112】
以上、本実施形態に係る検索サーバ70の機能構成について説明した。
【0113】
上記の通り、本実施形態においては、検索キーワードがそのまま検索サーバ70に送信されることはない。そのため、本実施形態に係る検索システムの仕組みを適用することにより、ユーザ端末40に入力された検索キーワードの内容が検索サーバ70に知られずに済み、ユーザのプライバシーを保護することが可能になる。
【0114】
[3−3:検索処理の流れ]
次に、図14を参照しながら、本実施形態に係る検索処理の流れについて説明する。図14は、本実施形態に係る検索処理の流れについて説明するための説明図である。なお、図14に示す検索処理は、ユーザ端末40及び検索サーバ70により実行される。また、ユーザ端末40は、完全準同型暗号方式の公開鍵pk及び秘密鍵skを保持しているものとする。さらに、検索サーバ70は、完全準同型暗号方式の公開鍵pkを保持しているものとする。
【0115】
図14に示すように、まず、ユーザ端末40に対し、検索キーワードqが入力される(S301)。検索キーワードqが入力されると、ユーザ端末40は、公開鍵pkを利用して検索キーワードqを暗号化し、暗号データcを生成する(S302)。つまり、ユーザ端末40は、c←Enc(q,pk)を実行する。次いで、ユーザ端末40は、暗号データcを検索サーバ70に送信する(S303)。
【0116】
暗号データcを受信した検索サーバ70は、受信した暗号データcを検索アルゴリズムfに入力し、公開鍵pkを用いて検索アルゴリズムfによる処理を実行する(S304)。つまり、検索サーバ70は、r←Process(c,f,pk)を実行し、検索アルゴリズムfから出力される検索結果r(以下、出力結果r)を得る。次いで、検索サーバ70は、出力結果rをユーザ端末40に送信する(S305)。
【0117】
出力結果rを受信したユーザ端末40は、秘密鍵skを用いて出力結果rに復号処理を施し、出力結果R(検索キーワードqによる検索結果に対応)を得る(S306)。つまり、ユーザ端末40は、R←Dec(r,sk)を実行する。出力結果Rが得られると、ユーザ端末40は、出力結果Rをユーザに対して表示する(S307)。
【0118】
以上、本実施形態に係る検索処理の流れについて説明した。
【0119】
以上、本発明の第3実施形態について説明した。本実施形態に係る技術を適用することにより、検索キーワードを検索サーバ70に知られることなく検索処理を実行することが可能になる。その結果、ユーザが入力した検索キーワードの内容を検索サーバ70に知られずに済み、ユーザのプライバシーが保護される。
【0120】
<4:ハードウェア構成>
上記の監視カメラ10、監視サーバ20、ユーザ端末40、データ処理サーバ60、検索サーバ70が有する各構成要素の機能は、例えば、図15に示す情報処理装置のハードウェア構成を用いて実現することが可能である。つまり、当該各構成要素の機能は、コンピュータプログラムを用いて図15に示すハードウェアを制御することにより実現される。なお、このハードウェアの形態は任意であり、例えば、パーソナルコンピュータ、携帯電話、PHS、PDA等の携帯情報端末、ゲーム機、又は種々の情報家電がこれに含まれる。但し、上記のPHSは、Personal Handy−phone Systemの略である。また、上記のPDAは、Personal Digital Assistantの略である。
【0121】
図15に示すように、このハードウェアは、主に、CPU902と、ROM904と、RAM906と、ホストバス908と、ブリッジ910と、を有する。さらに、このハードウェアは、外部バス912と、インターフェース914と、入力部916と、出力部918と、記憶部920と、ドライブ922と、接続ポート924と、通信部926と、を有する。但し、上記のCPUは、Central Processing Unitの略である。また、上記のROMは、Read Only Memoryの略である。そして、上記のRAMは、Random Access Memoryの略である。
【0122】
CPU902は、例えば、演算処理装置又は制御装置として機能し、ROM904、RAM906、記憶部920、又はリムーバブル記録媒体928に記録された各種プログラムに基づいて各構成要素の動作全般又はその一部を制御する。ROM904は、CPU902に読み込まれるプログラムや演算に用いるデータ等を格納する手段である。RAM906には、例えば、CPU902に読み込まれるプログラムや、そのプログラムを実行する際に適宜変化する各種パラメータ等が一時的又は永続的に格納される。
【0123】
これらの構成要素は、例えば、高速なデータ伝送が可能なホストバス908を介して相互に接続される。一方、ホストバス908は、例えば、ブリッジ910を介して比較的データ伝送速度が低速な外部バス912に接続される。また、入力部916としては、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、及びレバー等が用いられる。さらに、入力部916としては、赤外線やその他の電波を利用して制御信号を送信することが可能なリモートコントローラ(以下、リモコン)が用いられることもある。
【0124】
出力部918としては、例えば、CRT、LCD、PDP、又はELD等のディスプレイ装置、スピーカ、ヘッドホン等のオーディオ出力装置、プリンタ、携帯電話、又はファクシミリ等、取得した情報を利用者に対して視覚的又は聴覚的に通知することが可能な装置である。但し、上記のCRTは、Cathode Ray Tubeの略である。また、上記のLCDは、Liquid Crystal Displayの略である。そして、上記のPDPは、Plasma DisplayPanelの略である。さらに、上記のELDは、Electro−Luminescence Displayの略である。
【0125】
記憶部920は、各種のデータを格納するための装置である。記憶部920としては、例えば、ハードディスクドライブ(HDD)等の磁気記憶デバイス、半導体記憶デバイス、光記憶デバイス、又は光磁気記憶デバイス等が用いられる。但し、上記のHDDは、Hard Disk Driveの略である。
【0126】
ドライブ922は、例えば、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブル記録媒体928に記録された情報を読み出し、又はリムーバブル記録媒体928に情報を書き込む装置である。リムーバブル記録媒体928は、例えば、DVDメディア、Blu−rayメディア、HD DVDメディア、各種の半導体記憶メディア等である。もちろん、リムーバブル記録媒体928は、例えば、非接触型ICチップを搭載したICカード、又は電子機器等であってもよい。但し、上記のICは、Integrated Circuitの略である。
【0127】
接続ポート924は、例えば、USBポート、IEEE1394ポート、SCSI、RS−232Cポート、又は光オーディオ端子等のような外部接続機器930を接続するためのポートである。外部接続機器930は、例えば、プリンタ、携帯音楽プレーヤ、デジタルカメラ、デジタルビデオカメラ、又はICレコーダ等である。但し、上記のUSBは、Universal Serial Busの略である。また、上記のSCSIは、Small Computer System Interfaceの略である。
【0128】
通信部926は、ネットワーク932に接続するための通信デバイスであり、例えば、有線又は無線LAN、Bluetooth(登録商標)、又はWUSB用の通信カード、光通信用のルータ、ADSL用のルータ、又は各種通信用のモデム等である。また、通信部926に接続されるネットワーク932は、有線又は無線により接続されたネットワークにより構成され、例えば、インターネット、家庭内LAN、赤外線通信、可視光通信、放送、又は衛星通信等である。但し、上記のLANは、Local Area Networkの略である。また、上記のWUSBは、Wireless USBの略である。そして、上記のADSLは、Asymmetric Digital Subscriber Lineの略である。
【0129】
<5:まとめ>
最後に、本発明の実施形態に係る技術内容について簡単に纏める。
【0130】
上記の実施形態に係る技術は、次のような端末装置と、サーバとを含むデータ処理システムに関する。上記の端末装置は、暗号化部と、暗号データ送信部と、暗号データ受信部と、復号部とを有する。上記の暗号化部は、完全準同型暗号方式により入力データを暗号化して暗号データを生成するものである。また、上記の暗号データ送信部は、前記暗号化部により生成された暗号データをサーバに送信するものである。そして、上記の暗号データ受信部は、前記サーバにて所定の処理が施された前記暗号データを受信するものである。さらに、上記の復号部は、前記所定の処理が施された暗号データを復号するものである。
【0131】
暗号化方式として完全準同型暗号方式を採用していることにより、暗号データに所定の処理を施して得られたデータの復号結果と、入力データに所定の処理を施して得られるデータとが一致する。そのため、サーバでは暗号データが処理されているが、端末装置は、実質的にサーバで入力データを処理した場合と同じ処理結果を得ることができる。さらに、サーバには入力データの内容が一切漏れないため、端末装置は、サーバに入力データの内容を知られることなく、入力データの処理をサーバに代行させることができる。
【0132】
(備考)
上記の監視カメラ10、ユーザ端末40は、端末装置の一例である。上記の通信部105、404は、暗号データ送信部、暗号データ受信部、第1の送信部、第1の受信部の一例である。上記の画像送信部107は、異常判定部、画像データ送信部の一例である。上記の暗号化部104、403、復号部106、405は、鍵保持部の一例である。上記の監視サーバ20、データ処理サーバ60、検索サーバ70は、サーバの一例である。上記の通信部211、601、701は、暗号データ受信部、暗号データ送信部、第2の受信部、第2の送信部の一例である。上記の異常判定アルゴリズム実行部212、データ処理部602、検索アルゴリズム実行部702は、処理部の一例である。上記の監視カメラシステム、検索システムは、データ処理システムの一例である。
【0133】
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
【符号の説明】
【0134】
10 監視カメラ
101 鍵生成部
102 撮像部
103 画像記憶部
104 暗号化部
105 通信部
106 復号部
107 画像送信部
20 監視サーバ
21 画像解析装置
211 通信部
212 異常判定アルゴリズム実行部
213 画像受信部
214 記憶部
22 異常判定アルゴリズム生成装置
221 学習データ収集部
222 記憶部
223 機械学習部
30 表示装置
40 ユーザ端末
401 鍵生成部
402 入力部
403 暗号化部
404 通信部
405 復号部
406 表示部
50 ネットワーク
60 データ処理サーバ
601 通信部
602 データ処理部
603 記憶部
70 検索サーバ
701 通信部
702 検索アルゴリズム実行部

【特許請求の範囲】
【請求項1】
完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化部と、
前記暗号化部により生成された暗号データをサーバに送信する暗号データ送信部と、
前記サーバにて所定の処理が施された前記暗号データを受信する暗号データ受信部と、
前記所定の処理が施された暗号データを復号する復号部と、
を備える、
端末装置。
【請求項2】
被写体を撮像して画像データを生成する撮像部をさらに備え、
前記暗号化部は、前記撮像部により生成された画像データを暗号化して暗号データを生成し、
前記所定の処理は、前記画像データに基づいて被写体の異常を判定するための異常判定アルゴリズムに前記暗号データを入力し、当該異常判定アルゴリズムから出力された判定結果を前記所定の処理が施された暗号データとして出力する処理である、
請求項1に記載の端末装置。
【請求項3】
前記復号部により前記所定の処理が施された暗号データが復号され、前記異常判定アルゴリズムから出力された判定結果が得られた後、当該判定結果が異常を示すものであるか否かを判定する異常判定部と、
前記異常判定部により前記判定結果が異常を示すものである場合に、前記撮像部により生成された画像データを前記サーバに送信する画像データ送信部と、
をさらに備える、
請求項2に記載の端末装置。
【請求項4】
前記完全準同型暗号方式に基づく公開鍵と秘密鍵とを保持する鍵保持部をさらに備え、
前記暗号化部は、前記鍵保持部により保持された公開鍵により入力データを暗号化し、
前記復号部は、前記鍵保持部により保持された秘密鍵により前記所定の処理が施された暗号データを復号する、
請求項3に記載の端末装置。
【請求項5】
前記所定の処理は、前記公開鍵を利用して実行される、
請求項4に記載の端末装置。
【請求項6】
検索データを入力するための入力部と、
前記検索データに基づく検索結果を表示する表示部と、
をさらに備え、
前記暗号化部は、前記入力部により入力された検索データを暗号化して暗号データを生成し、
前記所定の処理は、前記検索データに基づいて情報を検索するための検索アルゴリズムに前記暗号データを入力し、当該検索アルゴリズムから出力された検索結果を前記所定の処理が施された暗号データとして出力する処理であり、
前記表示部は、前記復号部により前記所定の処理が施された暗号データが復号され、前記検索アルゴリズムから出力された検索結果が得られた後、当該検索結果を表示する、
請求項1に記載の端末装置。
【請求項7】
完全準同型暗号方式により入力データを暗号化して得られた暗号データを端末装置から受信する暗号データ受信部と、
前記暗号データに所定の処理を施す処理部と、
前記所定の処理が施された暗号データを前記端末装置に送信する暗号データ送信部と、
を備える、
サーバ。
【請求項8】
完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化部と、
前記暗号化部により生成された暗号データをサーバに送信する第1の送信部と、
前記サーバにて所定の処理が施された前記暗号データを受信する第1の受信部と、
前記所定の処理が施された暗号データを復号する復号部と、
を有する、端末装置と、
前記第1の送信部により送信された暗号データを受信する第2の受信部と、
前記暗号データに対して前記所定の処理を施す処理部と、
前記所定の処理が施された前号データを前記端末装置に送信する第2の送信部と、
を有する、前記サーバと、
を含む、
データ処理システム。
【請求項9】
端末装置が、
完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化ステップと、
前記暗号化ステップで生成された暗号データをサーバに送信する第1の送信ステップと、
前記サーバが、
前記第1の送信ステップで送信された暗号データを受信する第2の受信ステップと、
前記暗号データに対して前記所定の処理を施す処理ステップと、
前記所定の処理が施された前号データを前記端末装置に送信する第2の送信ステップと、
前記端末装置が、
前記サーバにて所定の処理が施された前記暗号データを受信する第2の受信ステップと、
前記所定の処理が施された暗号データを復号する復号ステップと、
を含む、
データ処理方法。
【請求項10】
完全準同型暗号方式により入力データを暗号化して暗号データを生成する暗号化機能と、
前記暗号化機能により生成された暗号データをサーバに送信する暗号データ送信機能と、
前記サーバにて所定の処理が施された前記暗号データを受信する暗号データ受信機能と、
前記所定の処理が施された暗号データを復号する復号機能と、
をコンピュータに実現させるためのプログラム。
【請求項11】
完全準同型暗号方式により入力データを暗号化して得られた暗号データを端末装置から受信する暗号データ受信機能と、
前記暗号データに処理の処理を施す処理機能と、
前記所定の処理が施された暗号データを前記端末装置に送信する暗号データ送信機能と、
をコンピュータに実現させるプログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公開番号】特開2012−49679(P2012−49679A)
【公開日】平成24年3月8日(2012.3.8)
【国際特許分類】
【出願番号】特願2010−188128(P2010−188128)
【出願日】平成22年8月25日(2010.8.25)
【出願人】(000002185)ソニー株式会社 (34,172)
【Fターム(参考)】