説明

サービスシステム

【課題】Webサービスに分散して利用者が保有する情報を、異なるWebサービス内で利用できるようにしつつ、Webサービスの運営者が入手できないようにする。
【解決手段】ネットワークを介して利用者によって送信された前記秘匿情報をネットワーク経由で受信し、前記秘匿情報を、管理者の異なる第1の暗号鍵と第2の暗号鍵の双方を用いることによってのみ解読が可能な状態で暗号化して暗号化秘匿情報を生成し、前記暗号化秘匿情報を情報記憶領域に保存し、前記第1の一時記憶領域に格納された秘匿情報を消去する処理であり、(2)前記閲覧処理は、前記第1の暗号鍵と前記第2の暗号鍵の双方を用いて前記暗号化秘匿情報から前記秘匿情報を生成し、生成された前記秘匿情報をネットワーク経由で送信する処理である、ことを特徴とする秘匿情報管理システムを提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本願発明は、サーバが連携してサービスを提供する情報処理に関する。本願発明は、特に、オンラインサービスを提供する情報処理に関する。
【背景技術】
【0002】
近年、インターネット上では様々なWebサービスが、数多くの運営者によって提供されている。広く使われているWebサービスには、電子メール、チャット、SNS(Social Networking Service)、動画・写真投稿、検索、地図、物品販売、物品配送などがある。この結果、1人の利用者が数多くのWebサービスを利用するようになった。たとえば1人のインターネット利用者が、複数の電子メールアドレスを持ち、複数のSNSサービスの会員になり、複数の物品販売を利用するといった状況にある。
【0003】
このため、1人の利用者の有する情報が様々なWebサービスに分散している。すなわち、1人の利用者の有する情報は、様々なWebサービス運営者の異なるサーバに記憶されている。したがって、保有ないしは交換している各所有者の情報が分断され、Webサービス利用者の利便性を損ねる結果が生まれている。
【0004】
この問題を解決するために、様々なWebサービスの間で利用者の情報を相互利用し、Webサービス利用者の利便性を高めようとする試みがなされている。たとえば、各種Webサービスでは、API(Application Program Interface)へのアクセスを外部に許可することで、異なるWebサービス間で利用者の情報を相互利用できるようになっている。たとえば、YouTubeと呼ばれる動画投稿サービスでは、投稿された動画を、APIを経由して他のWebサービスで利用することができる(非特許文献1)。Amazonと呼ばれる物販Webサービス上で販売されている商品の情報を、APIを経由して他のWebサービスで利用することができる(非特許文献2)。Google社が提供するソーシャルグラフAPIは、Webサービスの垣根を越えた利用者同士の知人関係を、任意のWebサービスで利用することを目標として策定されたものである(非特許文献3)。
【0005】
前記のようなAPIを通じた異なるWebサービス間の情報の相互利用の対象となる情報のほとんどは、現実にはインターネット上の誰もがアクセス可能である。すなわち、公開情報である。各Webサービスの運営者にとって、各々のサーバに記憶された利用者の情報は貴重な資産である。しかし、これがもとよりインターネット上で公開されたものであれば、APIを経由した情報の相互利用によってWebサービス運営者が失うものはほとんどなく、逆にAPIを公開することで各々のサービスの利用を促進できるという利点がある。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】http://code.google.com/intl/ja-JP/apis/youtube/getting_started.html#data_api
【非特許文献2】http://docs.amazonwebservices.com/AWSEcommerceService/4-0/
【非特許文献3】http://code.google.com/intl/ja/apis/socialgraph/docs/api.html
【発明の概要】
【発明が解決しようとする課題】
【0007】
一方、様々なWebサービスのサーバには、インターネット上に公開されていない、非公開情報も多い。典型的な非公開情報は、利用者のID情報、利用者属性情報、知人関係などである。たとえば、前記ソーシャルグラフAPIはID情報、知人関係などの相互利用を目標として策定されているが、このような情報のほとんどは非公開情報である。このため、前記ソーシャルグラフAPIを通じてID情報や知人関係を取得可能なWebサービスは極めて限られており、前記ソーシャルグラフAPIは利便性を発揮できずに、したがってほとんど使われていない。
【0008】
このようにインターネット上で公開されていない情報の、Webサービスを超えた相互利用が阻まれている原因は、Webサービスの運営者の事情にある。各Webサービス運営者は、他のWebサービスのID情報、利用者属性情報、知人関係などの非公開情報を、自らのWebサービスで利用したいという要求を持っている。一方で、自らのWebサービスの有する非公開情報を、他のWebサービス運営者に提供したくないという意図を持っている。一般に、ID情報、利用者属性情報、知人関係は、Webサービス事業者にとっての収益源であるとともに、利用者を他サービスではなく自らのサービスに引き留めるための、最も重要な資産と考えられているからである。すなわち、各Webサービス運営者はAPIを通じた他のWebサービスとの連携を望む一方で、自らのWebサービスの独立性を維持したいという、相反する要求を持っている。
【課題を解決するための手段】
【0009】
このような状況に鑑み、本発明の一実施形態においては、サーバ、システム、情報端末、ネットワーク等を用いて提供される各Webサービスが、他のサービス運営者に一切の非公開情報を入手させず、独立性を完全に維持した状態で、利用者が複数のWebサービスを超えた非公開情報の相互利用が可能になる方法が提供される。
【0010】
本発明の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、前記第1のサーバは、情報を第3の暗号鍵で暗号化した暗号化情報を記憶し、さらに、前記第3の暗号鍵を前記第2の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を記憶することを特徴とするシステムが開示される。
【0011】
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、を有するシステムであって、前記第1のサーバは、前記第1の暗号鍵を前記第3のサーバに送信する送信部を備え、前記第3のサーバは、前記第1の暗号鍵を受信する受信部と、第3の暗号鍵を生成し、前記第3の暗号鍵を前記第1の暗号鍵で暗号化した暗号化鍵を生成する暗号化鍵生成部と、前記暗号化鍵を前記第2のサーバに送信する送信部を備え、前記第2のサーバは、前記暗号化鍵を受信する受信部と、前記暗号化鍵を前記第2の暗号鍵で二重暗号化し二重暗号化鍵を生成する二重暗号化鍵生成部と、前記二重暗号化鍵を前記第1のサーバに送信する送信部を備え、前記第1のサーバは、前記二重暗号化鍵を記憶する記憶部を備えることを特徴とするシステムが開示される。
【0012】
本発明の別の一側面として、第1の暗号鍵を第2の暗号鍵および前記第3の暗号鍵で二重暗号化した二重暗号化鍵および前記第3の暗号鍵を記憶する第1のサーバと、前記第2の暗号鍵を記憶する第2のサーバと、第3のサーバとを備えるシステムであって、前記第1のサーバは、前記二重暗号化鍵を前記第2のサーバに、また前記第3の暗号鍵を前記第3のサーバに送信する送信部を備え、前記第2のサーバは、前記二重暗号化鍵を受信する受信部と、前記二重暗号化鍵を前記第2の暗号化鍵で復号化した暗号化鍵を生成する暗号化鍵生成部と、前記暗号化鍵を前記第3のサーバに送信する送信部とを備え、前記第3のサーバは、前記暗号化鍵を受信する受信部と、前記暗号化鍵を前記第3の暗号鍵で復号化して前記第1の暗号鍵を生成する暗号鍵生成部を備えることを特徴とするシステムが開示される。
【0013】
本発明の別の一側面として、第1の暗号鍵を記憶する記憶部と、第1のサーバから、情報を第2の暗号鍵で暗号化した暗号化情報を受信し、前記第2の暗号鍵を、第2のサーバの記憶する第3の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を前記第2のサーバより受信する受信部と、前記暗号化情報および前記二重暗号化鍵をID情報に関連づけて記憶する記憶部とを備えることを特徴とするサーバが開示される。
【0014】
本発明の別の一側面として、情報端末から情報を受信する受信部と、第1の暗号鍵を生成する暗号鍵生成部と、前記情報を前記第1の暗号鍵で暗号化した暗号化情報を生成する暗号化部と、前記暗号化情報を第1のサーバに送信する送信部と、を備え、さらに、前記受信部は、前記第1のサーバより第2の暗号鍵を受信し、さらに、前記第1の暗号鍵を前記第2の暗号鍵で暗号化した暗号化鍵を生成する暗号化鍵生成部と、を備え、さらに前記送信部は、第2のサーバに記憶された第3の暗号鍵で前記暗号化鍵を二重暗号化し二重暗号化鍵を生成するために前記暗号化鍵を前記第2のサーバに送信することを特徴とするサーバが開示される。
【0015】
本発明の別の一側面として、情報端末から情報を受信する受信部と、前記情報端末の利用者を一意に識別する認識票を第1のサーバに送信する送信部と、を備え、さらに前記受信部は、第1の暗号鍵を前記第1のサーバから受信し、前記認識票に関連づけられて第1のサーバに記憶された二重暗号化鍵であって、第2の暗号鍵を第3の暗号鍵と前記第1の暗号鍵とにより二重暗号化した二重暗号化鍵を、第2のサーバに記憶されている前記第3の暗号鍵により復号化した暗号化鍵を前記第2のサーバから受信し、さらに前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号鍵生成部とを備え、さらに前記送信部は、前記情報を前記第2の暗号鍵で暗号化した暗号化情報を前記第1のサーバに送信することを特徴とするサーバが開示される。
【0016】
本発明の別の一側面として、情報端末から情報を受信する受信部と、前記情報端末の利用者を一意に識別する認識票を第1のサーバに送信する送信部、とを備え、さらに前記受信部は、第1の暗号鍵を前記第1のサーバから受信し、前記認識票に関連づけられて第1のサーバに記憶された、第2の暗号鍵を第3の暗号鍵と前記第1の暗号鍵で二重暗号化した二重暗号化鍵を、第2のサーバで記憶する前記第3の暗号鍵で復号化した暗号化鍵を前記第2のサーバから受信し、さらに、前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号鍵生成部を備え、さらに前記送信部は、前記情報を前記第2の暗号鍵で暗号化した暗号化情報を第4のサーバに送信することを特徴とするサーバが開示される。
【0017】
本発明の別の一側面として、第1の暗号鍵、第2の暗号鍵及び情報を前記第2の暗号鍵で暗号化した暗号化情報を、第1のサーバが記憶する第3の暗号鍵と前記第1の暗号鍵とで二重暗号化した二重暗号化鍵を記憶する記憶部と、前記第1の暗号鍵を第2のサーバに送信し、前記二重暗号化鍵を前記第1のサーバに送信する送信部とを備えることを特徴とするサーバが開示される。
【0018】
本発明の別の一側面として、第1のサーバから、第1の暗号鍵、および情報を第2の暗号鍵で暗号化した暗号化情報を受信し、第2のサーバから、前記第2の暗号鍵を前記第1の暗号鍵で暗号化した暗号化鍵を受信する受信部と、前記暗号化鍵を前記第1の暗号鍵で復号化して前記第2の暗号鍵を生成する暗号化部と、前記暗号化情報を前記第2の暗号鍵で復号して前記情報を生成する復号化部と、前記情報を情報端末に送信する送信部とを備えることを特徴とするサーバが開示される。
【0019】
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、を備えるシステムであって、前記第1のサーバは、情報を前記第1の暗号鍵と前記第2の暗号鍵で二重暗号化した二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
【0020】
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、を備えるシステムであって、前記第3のサーバは、情報を前記第1の暗号鍵と前記第2の暗号鍵で二重暗号化した二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
【0021】
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、情報端末と、を備えるシステムであって、前記第3のサーバは、前記情報端末より情報を、前記第1のサーバより前記第1の暗号鍵を、前記第2のサーバより前記第2の暗号鍵を受信する受信部と、前記情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化する暗号化部とを備え、前記第1のサーバは、前記二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
【0022】
本発明の別の一側面として、第1の暗号鍵を記憶する第1のサーバと、第2の暗号鍵を記憶する第2のサーバと、第3のサーバと、第4のサーバと、情報端末と、を備えるシステムであって、前記第3のサーバは、前記情報端末より情報を、前記第1のサーバより前記第1の暗号鍵を、前記第2のサーバより前記第2の暗号鍵を受信する受信部と、前記情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化する暗号化部と、前記第4のサーバは、前記二重暗号化情報を記憶する記憶部を備えることを特徴とするシステムが開示される。
【0023】
本発明の別の一側面として、情報端末から第1の情報を受信し、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信する受信部と、前記第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を生成する暗号化部と、前記第1の二重暗号化情報を前記第1のサーバに送信する送信部とを備えることを特徴とするサーバが開示される。
【0024】
本発明の別の一側面として、情報端末から第1の情報を受信し、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信する受信部と、前記第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を生成する暗号化部と、前記第1の二重暗号化情報を第3のサーバに送信する送信部を備えることを特徴とするサーバが開示される。
【0025】
本発明の別の一側面として、第1のサーバから第1の暗号鍵を受信し、第2のサーバから第2の暗号鍵を受信し、前記第1のサーバから第1の情報を前記第1の暗号鍵および前記第2の暗号鍵で二重暗号化した第1の二重暗号化情報を受信する受信部と、前記第1の二重暗号化情報を、前記第1の暗号鍵および前記第2の暗号鍵で復号化した前記第1の情報を復号化部と、前記第1の情報を情報端末に送信部を備えることを特徴とするサーバが開示される。
【発明の効果】
【0026】
本発明の一実施形態によれば、利用者があるWebサービスに分散して保有する情報を、異なるWebサービス内で利用できるようになる。これが実現されるにもかかわらず、各Webサービスの有する利用者情報は、他のWebサービス運営者からは入手できない。本発明の一実施形態では、各Webサービスに分散した利用者情報を統合して、利用者の情報端末に送信したり、暗号化して記憶したりする機能を提供するセキュリティサービスが各Webサービスに分散した利用者の情報を仲介する。しかし、このセキュリティサービスの運営者は、これらが接続されるWebサービス利用者の有する情報を一切入手できない。
【図面の簡単な説明】
【0027】
【図1】本発明の一実施形態における情報端末とサーバ装置によるシステム概略構成図である。
【図2】本発明の一実施形態におけるセキュリティサービスXの情報処理サーバ装置の概略構成図である。
【図3】本発明の一実施形態におけるセキュリティサービスXの情報記憶サーバ装置の概略構成図である。
【図4】本発明の一実施形態におけるWebサービスYのサーバ装置の概略構成図である。
【図5】本発明の一実施形態におけるWebサービスZのサーバ装置の概略構成図である。
【図6】本発明の一実施形態における情報端末の概略構成図である。
【図7】本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。
【図8】本発明の一実施形態における利用者Aの情報端末の表示画面の一例を表す図である。
【図9】本発明の一実施形態におけるWebサービスYのサーバ装置の暗号鍵テーブルの一例を示す図である。
【図10】本発明の一実施形態におけるセキュリティサービスXの情報記憶サーバの利用者暗号鍵テーブルの一例を示す図である。
【図11】本発明の一実施形態におけるWebサービスYの暗号化情報テーブルの一例を示す図である。
【図12】本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXから情報を呼び出し、その情報端末に表示する処理を説明するフロー図である。
【図13】本発明の一実施形態における暗号鍵および暗号化情報の様々なケースを列挙した表である。
【図14】本発明の二つの実施形態における暗号鍵の様々なケースを列挙した表である。
【図15】本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。
【図16】本発明の一実施形態におけるセキュリティサービスXのサービス暗号化テーブルの一例を示す図である。
【図17】本発明の一実施形態におけるセキュリティサービスXの暗号化情報テーブルの一例を示す図である。
【図18】本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。
【図19】本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXに情報を記憶する処理を説明するフロー図である。
【図20】本発明の一実施形態において利用者AがWebサービスYの利用時にセキュリティサービスXから情報を呼び出し、その情報端末に表示する処理を説明するフロー図である。
【図21】本発明の一実施形態における利用者Aの情報端末の表示画面の一例を表す図である。
【発明を実施するための最良の形態】
【0028】
以下に本発明を実施するための、現在考えられる最善の形態について説明する。本発明の範囲は、添付特許請求の範囲によって明確に定義されているため、この説明は限定的な意味に解釈すべきではなく、単に発明の一般原理を例示する目的で行う。
【0029】
図1は、本発明の一実施形態の一例におけるシステムの概略構成図である。図1においては、情報の記憶および閲覧システムの概略構成がしめされている。セキュリティサービスXの情報処理サーバ100およびセキュリティサービスXの情報記憶サーバ120が、WebサービスYのサーバ150、WebサービスZのサーバ160、利用者Aの情報端末170、および利用者Bの情報端末180と、ネットワーク190を通じて接続されている。サーバ100とサーバ120はネットワーク190を介しても、または別のネットワークを経由しても、または直接接続されていてもよい。
【0030】
図2に、セキュリティサービスXの情報処理サーバ100の概略構成図を示す。セキュリティサービスXの情報処理サーバは、送受信部101,一時記憶部102、復号化部106、暗号化部107、HTML生成部108、HTML解析部109、検索部110、および暗号鍵生成部111を有する。一時記憶部102は、暗号化情報領域103、平文情報領域104、および暗号鍵テーブル105を有する。
【0031】
なお、「送受信部」を送信の機能を提供する部と受信の機能を提供する部とに分けて、「送信部」、「受信部」という場合がある。他のサーバ、情報端末の送受信部についても同様である。
【0032】
図3に、セキュリティサービスXの情報記憶サーバ120の概略構成図を示す。セキュリティサービスXの情報記憶サーバは送受信部121、データベース記憶部122、検索部125を有する。データベース記憶部122は、暗号化情報テーブル123、利用者暗号鍵テーブル124、およびサービス暗号鍵テーブル126を有する。
【0033】
図4に、WebサービスYのサーバ150の概略構成図を示す。WebサービスYのサーバは送受信部151、データベース記憶部152、一時記憶部154、HTML生成部155、HTML解析部156、復号化部157、検索部158、および暗号化部159を有する。データベース記憶部152は、暗号鍵テーブル153を有する。
【0034】
図5に、WebサービスZのサーバ160の概略構成図を示す。WebサービスZのサーバは送受信部161、データベース記憶部162、一時記憶部164、HTML生成部165、HTML解析部166、復号化部167、検索部168、および暗号化部169を有する。データベース記憶部162は、暗号鍵テーブル163を有する。
【0035】
なお、各サーバの一時記憶部は、記憶部によって実現される。そのような記憶部は、たとえばDRAM(Dynamic Random Access Memory)などのメモリ素子を用いて構成される。一時記憶部では、以下で図7,図12、図18、図19、または図20のフロー図の各々で説明されるように、本発明に係る処理が終わった時点で、その処理のために記憶した情報が消去される。一時記憶部に記憶された情報は、所謂データベースのように永続的にサーバに記憶されるものではないことが好ましい。例えば、一時記憶部に記憶された情報は、セキュリティサービスまたは各Webサービスの運営者が任意の時刻において、そこに記憶された情報を検索することはできない。一時記憶部は、あくまでも処理に必要な時間だけ一時的に情報を記憶するためのものであることが好ましい。一時記憶部は情報が消去できるのであれば、DRAMなどで構成されるサーバの主記憶装置の他、ハードディスクドライブやFlashメモリなどのような不揮発性の記憶装置でも実現することができる。
【0036】
図6(a)に、利用者Aの情報端末170の概略構成図を示す。また図6(b)に、利用者Bの情報端末180の概略構成図を示す。利用者Aの情報端末170は、送受信部171、HTML解析部172、GUI表示部173、および入力部174を有する。利用者Bの情報端末180は、送受信部181、HTML解析部182、GUI表示部183、および入力部184を有する。
(実施形態1)
【0037】
まず始めに、本実施形態1の概略について説明する。本実施形態1では、図1に示すように、WebサービスYを利用する利用者Aが、その情報端末170を通じてWebサービスYのサーバ150と通信する。この際、利用者Aが情報端末170を通じて送信する情報が、WebサービスYのサーバ150に記憶されることを防ぎたいという要求を持っていたり、WebサービスYを提供する事業者に閲覧されることを防ぎたいという要求を持っていたりするとする。たとえば、WebサービスYは、利用者Aおよびその知人の名前や住所を管理する、住所録のWebサービスだったとする。この時、従来の方法によれば、利用者Aおよび知人の名前や住所はすべてWebサービスYのサーバ150に記憶される。この場合、WebサービスYのサーバ150からの情報漏洩のリスクがある。また、利用者AはWebサービスYの運営者によって、記憶された情報が広告などに使われることを望まないかもしれない。特に、従来の方法によれば、利用者Aが入力した知人の情報は、情報所有者である知人本人の了解なく、WebサービスYのサーバ150に記憶されることから、利用者A自身の名前や住所よりも、漏洩リスク低減や、WebサービスYの運営者による利用忌避の要求は大きい。なお、ここでは本発明の一般原理を説明するために、一例としてWebサービスYおよびWebサービスZを住所録のWebサービスであると仮定するが、WebサービスYやWebサービスZは、電子メール、チャット、SNS(Social Networking Service)、物品販売、物品配送などどのようなサービスでもよい。
【0038】
本実施形態では、利用者AがWebサービスYに対して秘匿したい情報は、まず、利用者Aの情報端末170よりネットワーク190を通じて、セキュリティサービスXの情報処理サーバ100に送られる。次に、セキュリティサービスXの情報処理サーバ100では受信した情報を二重暗号化し、セキュリティサービスXの情報記憶サーバ120で記憶する。この暗号化では2つの暗号鍵が使われる。第1の暗号鍵はWebサービスYのサーバ150に記憶されている。また、第2の暗号鍵はセキュリティサービスXの情報記憶サーバ120に保存されている。この暗号化に際しては、第1の暗号鍵および第2の暗号鍵はネットワーク190を通じてサービスXの情報処理サーバに送られ、暗号化が実行される。ここで生成される暗号化情報は、第1の暗号鍵および第2の暗号鍵がすべて揃わないと前記暗号化情報を平文に戻すことはできない情報となる。
【0039】
ここで、セキュリティサービスXの情報処理サーバ100では第1の暗号鍵、第2の暗号鍵、および受信した平文の情報のいずれも二重暗号化の後に消去する。また、データベース記憶部に記憶されたとしても、第1の暗号鍵、第2の暗号鍵、および受信した平文の情報のいずれも二重暗号化の後に消去する。ここに、データベース記憶部は、情報を永続的に記憶する部をいう。また二重暗号化した情報はセキュリティサービスXの情報記憶サーバ120のデータベース記憶部122の暗号化情報テーブル123に保存する。WebサービスYのサーバ150は第1の暗号鍵を記憶しているが、前記暗号化情報を持たない。セキュリティサービスXの情報記憶サーバ120は、前記暗号化情報と第2の暗号鍵両方を記憶しているが、第1の暗号鍵を記憶していない。これらの状況からセキュリティサービスXの運営事業者やWebサービスYの運営者が、平文の利用者Aよび知人の情報を入手することは困難である。また、もし利用者Aの暗号化情報が、セキュリティサービスXの情報記憶サーバ120から漏洩したとしても、第1暗号鍵をWebサービスYのサーバ150より入手しない限り、これを平文に戻すことはできない。したがって、従来の方法と比較して安全性が高い。
【0040】
次に、図7のフロー図を用いて本実施形態の処理を詳しく説明する。なお、図7以下のフロー図においては、WebサービスYのサーバを、サーバYと略記する。いま、利用者AはWebサービスYにログインしている(ステップS701)。この時、WebサービスYのサーバのHTML生成部155がHTMLコードを生成し、送受信部151がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。この時点で利用者AはWebサービスYにログインしており、利用者AをWebサービスYで一意に特定するためのIDyaは、WebサービスYのサーバの一時記憶部154に記憶されている。なお、本発明において、利用者を特定するための情報を、認識票という場合がある。認識票の例としては、上述のIDyaのような識別情報や、メールアドレス、氏名と住所などの個人を特定する情報がある。
【0041】
なお、HTMLコードは、GUI表示部173に情報を表示するためのコードの一例であり、任意のコードを利用することができる。
【0042】
いまWebサービスYのサーバ150に記憶されない情報の入力を、WebサービスYのサーバが利用者Aに対して求めるとする。このとき、WebサービスYのサーバ150と利用者Aの情報端末170との接続が、セキュリティサービスXの情報処理サーバ100にリダイレクトされる(ステップS702)。すなわち、情報端末170は、サーバ150と通信を行っていた状態から、サーバ100と通信を行う状態に移行する。次にセキュリティサービスXの情報処理サーバのHTML生成部108がHTMLコードを生成し、送受信部101がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。ここで、本実施形態の一例として図8に示すような利用者Aおよび利用者Aの知人の名前と住所の入力フォームが表示されているとする。
【0043】
図8を参照すると、GUI表示部173には、Webブラウザ表示ウィンドウ800が表示される。さらに、Webブラウザ表示ウィンドウ800には、利用者AがWebブラウザを通じてWebサービスYを現在使っていることを表す表示801がある。もし、WebサービスYが有する何らかの情報を表示したい場合には、WebサービスYのサーバ150からセキュリティサービスXの情報処理サーバ100にこのような情報が送信され、これを平文情報領域104に一時的に記憶され、セキュリティサービスのHTML生成部108が、これを利用して図8のような画像を表示する前記HTMLコードを生成してもよい。たとえば、図8の一例では、利用者Aの名前(Betty Thomas)802のような、WebサービスYの有する情報については、WebサービスYのサーバ150から、セキュリティサービスXの情報処理サーバ100に送られた上で、そのHTML生成部108によってHTMLコードに変換される。このような場合、WebサービスYのサーバ150から受信した情報は、後述のステップS711で他の情報とともに消去される。
【0044】
さらに図8を参照すると、Webブラウザ表示ウィンドウ800には自分の情報入力欄810、および知人の情報入力欄820が表示されている。自分の情報入力欄810は、自分の名前を入力するためのウィンドウ811、および自分の住所を入力するためのウィンドウ812を有する。知人の情報入力欄820は、知人の名前を入力するためのウィンドウ821、および知人の住所を入力するためのウィンドウ822を有する。図8に示す一例では、知人の情報入力欄820は知人1人の名前と住所を入力するためのウィンドウを有しているが、本実施形態では複数の知人の名前と住所を入力する入力ウィンドウを有していてもよい。また、図8は自分および知人の両方について名前と住所を入力する一例であるが、本実施形態で1は自分と知人についてこれ以外の情報を入力するウィンドウを有していてもよい。また、図8は本実施形態の一例であり、ここで利用者Aの情報端末に対して入力を要求する情報は、名前や住所などに限定されず、どのような情報でもよい。
【0045】
次に、利用者Aの情報端末170の入力部174から、利用者Aが利用者A自身の情報およびその知人の情報を入力する。いま、ここで入力された文字列を、たとえばスペース区切りなどを用いて結合したものを情報Iyaとする。利用者Aの情報端末の送受信部171が、Iyaを、送受信部171、ネットワーク190を通じてサービスXの情報処理サーバ100に送る(ステップS703)。サービスXの情報処理サーバの送受信部101がIyaを受信し、一時記憶部102にある平文情報領域104に一時的に記憶される(ステップS704)。ここでは簡単のために、複数の入力フィールドに対する入力文字列を結合した情報Iyaと表記したが、これらが複数の情報に分割されていてもよい。
【0046】
次にWebサービスYのサーバ150は、その一時記憶部154に記憶された利用者AのIDであるIDyaを検索キーとして、暗号鍵テーブル153を検索する。図9に暗号鍵テーブル153の一例を示す。暗号鍵テーブルは、WebサービスYの利用者のIDを格納する列910、セキュリティサービスXにおけるIDを格納する列920、およびWebサービスYのサーバ150の記憶する暗号鍵を格納する列930を有する。ここでは、利用者AのWebサービスYにおけるIDである、IDya911を検索キーとして、セキュリティサービスXの列920および暗号鍵の列930を検索し、検索結果として利用者AのセキュリティサービスXにおけるIDであるIDxa921、およびWebサービスYの暗号鍵Ky931を得る。なお、ここでは、暗号鍵テーブル124にはあらかじめIDxa921が記憶されている一例で説明したが、もしこれが暗号鍵テーブル124にない場合には、セキュリティサービスXの情報記憶サーバに利用者AのセキュリティサービスXにおけるID発行を依頼することで入手した上で、暗号鍵テーブル153に記憶し、次のステップに進んでもよい。
【0047】
ここで、IDの表記に際し、IDmnと表記した場合、mはサービスを表し、nは利用者を表す。たとえばIDyaは利用者Aの、WebサービスYにおけるIDであることを表している。また、同様に暗号鍵の表記に際し、Kmと表記した場合、mはサービスを表す。たとえば、KyはWebサービスYのサーバ150の記憶する暗号鍵であることを表す。また、暗号鍵の表記に際し、Kmnと表記した場合、mはサービス、nは利用者を表す。たとえば、Kxaと記した場合は、セキュリティサービスXにおける利用者Aの暗号鍵であることを表す。
【0048】
次に、WebサービスYのサーバの送受信部151が前記検索結果であるセキュリティサービスXにおける利用者AのIDであるIDxaおよび暗号鍵Kyを、ネットワーク190を通じてサービスXの情報処理サーバ100に送る(ステップS705)。サービスXの情報処理サーバの送受信部101がIDxaとKyを受信すると、IDxaを一時記憶部の平文情報領域104に、またKyを暗号鍵テーブル105に各々一時的に記憶する(ステップS706)。
【0049】
次に、セキュリティサービスXの情報処理サーバの暗号化部107は、セキュリティサービスXの記憶する利用者Aの暗号鍵の要求信号を、送受信部101およびネットワーク109を通じてサービスXの情報記憶サーバ120に送る。この要求信号には、上記ステップS705でWebサービスYのサーバ150から受信した、利用者AのセキュリティサービスXにおけるIDであるIDxaを含む(ステップS707)。
【0050】
セキュリティサービスXの情報記憶サーバの送受信部121がこれを受信すると、検索部125が受信したIDxaを検索キーとしてデータベース記憶部122にある利用者暗号鍵テーブル124を検索する。図10に、利用者暗号鍵テーブル124の一例を示す。本実施形態1における利用者暗号鍵テーブル124は、セキュリティサービスXのIDを格納する列1010およびセキュリティサービスXのIDを格納する列1020を有する。IDxa1011を検索キーとした前記検索の結果として、暗号鍵Kxa1021が得られる。もしIDxaに関連づけられた暗号鍵がない場合には、Kxaが生成されるとする。次にセキュリティサービスXの情報記憶サーバの送受信部121が、Kxaを、ネットワーク190を通じてセキュリティサービスXの情報処理サーバ100に送る。
【0051】
次に、セキュリティサービスXの情報処理サーバの送受信部101がKxaを受信し、揮発記憶領域の暗号鍵テーブルに記憶する(ステップS708)。以上の処理により、この時点では暗号鍵テーブルには、前記ステップS706でWebサービスYのサーバより入手した暗号鍵Kyおよび、前記ステップS708でセキュリティサービスXの情報記憶サーバより入手した暗号鍵Kxaが一時的に記憶されている。
【0052】
次に、暗号化部107が、前記ステップS704で平文情報領域104に記憶した情報Iyaを、ステップS706で記憶した暗号鍵KyおよびステップS708で記憶した暗号鍵Kxaを用いて二重に暗号化する(ステップS709)。たとえば、本実施形態の一例として、KyおよびKxaを各々対称鍵とした場合、この二重暗号化の結果は、EKy(EKxa(Iya))として表記されるとする。この表記は、IyaをKxaで暗号化したものをKyで暗号化した結果を表わす。なお、暗号化の順序を逆として、EKxa(EKy(Iya))が二重暗号化の結果となっていてもよい。また、用いられる暗号化の処理は、たとえば、KyおよびKxaを演算した演算結果を暗号鍵として、Iyaを暗号化するなど、KyおよびKxaの両方の暗号鍵がないと復号化できないような暗号化の処理であれば何でもよい。
【0053】
また、これまで説明したステップにおける暗号化には、対称鍵を用いても、非対称鍵を用いてもよい。非対称鍵を用いた場合、WebサービスYのサーバに記憶されるKyおよびセキュリティサービスXの情報記憶サーバに記憶されるKxaは、利用者Aの秘密鍵であり、このステップS709での暗号化には、KyおよびKxaに各々対応する公開鍵による暗号化となる。以下では、二重暗号化情報の結果が、EKy(EKxa(Iya))として表記されると仮定して、説明を続ける。
【0054】
二重暗号化情報EKy(EKxa(Iya))は、一時記憶部の暗号化情報領域103に一時的に記憶される。次に、ステップS706で平文記憶領域104に記憶された利用者AのIDxaとステップS709で暗号化情報領域103に記憶された二重暗号化情報EKy(EKxa(Iya))とが、送受信部101により、ネットワーク190を通じてセキュリティサービスXの情報記憶サーバ120に送信される(ステップS710)。次に、セキュリティサービスXの情報処理サーバ100が、その一時記憶部102からIDxa、Ky、Kxa、Iya、およびEKy(Exa(Iya))を消去する(ステップS711)。もし、ステップS702においてWebサービスYのサーバ150からセキュリティサービスXの情報処理サーバ100に送られた情報が、一時記憶部102に一時的に記憶されていれば、これもステップS711で書消去する。次に、セキュリティサービスXの情報記憶サーバ120の送受信部121がステップS710で送られた情報を受信すると、データベース記憶部の暗号化情報テーブル123にこれらの情報を記憶する(ステップS712)。図11に、本実施形態1における暗号化情報テーブル123の一例を示す。暗号化情報テーブル123は、セキュリティサービスXのIDを格納する列1110、およびひとつ以上の暗号化情報を格納する列を有する。上記ステップS711で記憶した暗号化情報EKy(EKxa(Iya))1121は、IDxa1111の行に記憶されている。なお、図10および図11からわかるように、本実施形態1では暗号鍵Kxa1021と二重暗号化情報EKy(EKxa(Iya))はともに、セキュリティサービスXの情報記憶サーバに記憶されている。しかし、暗号鍵と二重暗号化鍵は異なるサーバに記憶されていてもよい。
【0055】
次に、利用者AがWebサービスYを通じて、前記ステップS703で入力した自分自身および知人の情報Iyaを閲覧する場合の処理について図12のフロー図を用いて説明する。
【0056】
いま、利用者AはWebサービスYにログインしている(ステップS1201)。このとき、WebサービスYから送信されたHTMLコードを利用者Aの情報端末が解析した結果が、利用者Aの情報端末のGUI表示部173に表示されている。ここで、利用者Aが入力部174を通じて前記ステップS703で入力した利用者A自身、および知人に関する情報Iyaを呼び出す操作を実行する。すると、利用者Aの情報端末の送受信部171は、Iyaの表示要求を、ネットワーク190を通じてWebサービスYのサーバ150に送る(ステップS1202)。この要求を受信したWebサービスYのサーバの送受信部101が、利用者Aの情報端末170への接続を、セキュリティサービスXの情報処理サーバ100にリダイレクトする(ステップS1203)。
【0057】
さらに、WebサービスYのサーバの検索部158が、利用者AをWebサービスYで一意に認識するためのIDyaを検索キーとして、データベース記憶部にある暗号鍵テーブル153を検索する。再び図9を参照すると、この検索結果として得た、IDxa921、およびKy931を得る。次に、IDxaとKyを、Iyaの要求とともに、ネットワーク190を通じてセキュリティサービスXの情報処理サーバ100に送る(ステップS1204)。これを受信したセキュリティサービスXの情報処理サーバでは、Kyが一時記憶部の暗号鍵テーブル105に、IDxaが平文情報領域104に各々記憶される。
【0058】
次に、セキュリティサービスXの情報処理サーバの送受信部101が、WebサービスYのサーバより受信したIDxaとともに、Iyaの二重暗号化情報の取得要求を、ネットワーク190を通じて、セキュリティサービスXの情報記憶サーバ120に送る(ステップS1205)。セキュリティサービスXの情報記憶サーバの送受信部121がこの要求を受信すると、検索部125が受信したIDxaを検索キーとして、暗号化情報テーブル123、および暗号鍵テーブル124を検索する。再び図11を参照すると、暗号化情報テーブル123の検索により、検索結果として二重暗号化情報EKy(EKxa(Iya))1121が得られる。また暗号鍵テーブル124の検索により、利用者AのセキュリティサービスXにおける暗号鍵Kxaが得られる。送受信部121は、この暗号化情報EKy(EKxa(Iya))および暗号鍵Kxaを、ネットワーク190を通じて、セキュリティサービスXの情報処理サーバ100に送る(ステップS1206)。
【0059】
セキュリティサービスXの情報処理サーバでは、送受信部101がこれらの情報を受信した上、二重暗号化情報EKy(EKxa(Iya))を一時記憶部の暗号化情報領域103に、また暗号鍵Kxaを暗号鍵テーブル105に、各々IDxaと関連づけて記憶する。次に、復号化部106が、ここで暗号化テーブルに記憶されたKxa、および前記ステップS1204でWebサービスYのサーバより受信したKyを用いて、暗号化情報EKy(EKxa(Iya))を復号化し(ステップS1207)、情報Iyaを得る。このIyaは一時的に一時記憶部の平文情報領域104に記憶され、HTML生成部108がこの情報Iyaの一部または全部を含むHTMLコードを生成する(ステップS1208)。ここで生成されたHTMLコードは、送受信部101によって、ネットワーク190を通じて、利用者Aの情報端末170に送られる(ステップS1209)。このHTMLコードの生成に必要な、WebサービスYのサーバ150の有する情報である。この情報は、別途、WebサービスYのサーバから受信し、平文情報領域104に記憶された上で、前記ステップS1208で生成されるHTMLコードに含まれていても良い。ここでWebサービスYのサーバ150から受信し、記憶した情報がある場合は、ステップS1211で他の情報とともに消去する。
【0060】
利用者Aの情報端末の送受信部がこのHTMLコードを受信すると、HTML解析部がこれを解析の上、GUI表示部が、情報Iya、すなわち前記ステップS703で入力した利用者Aおよびその知人の情報の一部または全部を含む画面を表示する(ステップS1210)。この表示が終了するときまでには、セキュリティサービスXの情報処理サーバの一時記憶部102に記憶されたIDxa、Ky、Kxa、IyaおよびEKy(Exa(Iya))がすべて消去されるのが好ましい。以上で、利用者AがWebサービスYで以前に入力した情報を、その情報端末の表示部に表示する処理が完了した。
【0061】
これまで図7および図12のフロー図で説明した処理は、利用者Aがその情報端末170を通じてWebサービスYを利用する際に、入力や閲覧を必要とする情報Iyaを、セキュリティサービスXを用いて安全に記憶するための処理である。これまでに説明した処理を以下ではケース1と呼ぶ。次に、ケース2として利用者Aがその情報端末170を通じてWebサービスZを利用する際に、入力や閲覧を必要とする情報Izaを、セキュリティサービスXを用いて安全に記憶するため処理について説明する。ただし、ケース2の処理は、これまで図7および図12のフロー図で説明した処理とほぼ同じなので、上記説明を繰り返さず、図13を用いてその違いを簡単に説明する。
【0062】
図13には、これまでの図7および図12のフロー図で説明したケース1と、以下に説明する処理の例との比較を示す。図13に示す表の第1行目1310がケース1である。ケース1における処理は、利用者A1311がWebサービスY1312を利用する場合に、情報Iyaを安全に記憶および閲覧する処理であった。ケース1では、利用者Aは、WebサービスYにおいて利用者Aを一意に特定するためのIDya1313を有し、かつセキュリティサービスXにおいて利用者Aを一意に特定するためのIDxa1315を有する。さらにケース1では、セキュリティサービスXにおける二重暗号化に用いる鍵は、WebサービスYのサーバで記憶する暗号鍵Ky1314およびセキュリティサービスXの情報記憶サーバで記憶する暗号鍵Kxa1316の2つである。そして、ケース1では二重暗号化を施された情報はEKy(EKxa(Iya))1317であった。
【0063】
図13の第2行目1320がケース2である。ケース2における処理は、利用者A1321がWebサービスZ1322を利用する場合に、情報Izaを安全に記憶および閲覧する処理である。ケース2では、利用者Aは、WebサービスZにおいて利用者Aを一意に特定するためのIDza1323を有し、かつセキュリティサービスXにおいて利用者Aを一意に特定するためのIDxa1325を有する。さらにケース2では、セキュリティサービスXにおける二重暗号化に用いる暗合鍵は、WebサービスZのサーバで記憶する暗号鍵Kz1324およびセキュリティサービスXの情報記憶サーバで記憶する暗号鍵Kxa1326の2つである。そして、ケース2では二重暗号化を施された情報はEKz(EKxa(Iza))1327である。ケース2の処理は、ケース1について図7および図12のフロー図において、図13の1行目のシンボルを2行目のシンボルに置き換えた処理となる。
【0064】
同様に、図13の第3行目1330にはケース3として、利用者Bがその情報端末180を通じてWebサービスYを利用する際に、入力や閲覧を必要とする情報Iybを、セキュリティサービスXを用いて安全に記憶するための処理を示す。また同様に、図13の第4行目1340にはケース4として、利用者Bがその情報端末180を通じてWebサービスZを利用する際に入力や閲覧を必要とする情報Izbを、セキュリティサービスXを用いて安全に記憶するための処理を示す。
【0065】
なお、本実施形態1では、情報Iyaを、暗号鍵Kyおよび暗号鍵Kxaで二重暗号化する際、IyaをまずKxaで暗号化した暗号化情報EKxa(Iya)を生成し、さらにこの暗号化情報をKyで暗号化した二重暗号化情報EKy(EKxa(Iya))を生成した。またこの逆の処理によって二重暗号化情報EKy(EKxa(Iya))を復号化して平文情報Iyaを生成した。この暗号化の順番を逆にして、情報Iyaをまず暗号鍵Kyで暗号化し暗号化情報EKy(Iya)を生成し、さらにこの暗号化情報をKxaで暗号化して二重暗号化情報EKxa(EKy(Iya))を生成してもよい。さらに二重暗号化情報は、KxaとKyによって一意に決まる任意の演算結果Kfを生成したKf(Iya)であってもよい。すなわち、本実施形態1における二重暗号化は、二重暗号化情報を平文情報Iyaに復号化する際にKyおよびKxaの二つの鍵が必要であるような暗号化方法であれば、如何なるものであってもよい。
【0066】
次に、本実施形態の効果について説明する。本実施形態の第1の効果は、Webサービスのサーバにおいて、利用者が入力した情報、たとえばIyaのような保護すべき情報、が記憶されることなく、各Webサービスの提供が可能という点である。たとえばケース1において、図9を参照すると、WebサービスYのサーバ150のデータベース記憶部152に記憶されている利用者Aの情報は、IDya911、IDxa912、およびKy913のみである。万一、これらがWebサービスYのサーバ150より流出したとしても、保護すべき利用者Aの情報Iyaは含まれないし、復元することもできない。本発明によって、利用者には情報秘匿に関する安全性という効果を、またWebサービスYの事業者には利用者情報の漏洩リスクの低減という効果を提供することができる。
【0067】
Webサービス利用者の多くは、自身やその知人の情報をWebサービスに入力する場合、これらの情報をWebサービス事業者に利用されたくないという要求を持っている場合が多い。たとえば、Webサービス利用者は、希望しない広告・宣伝のメッセージをWebサービス事業者より受け取りたくないかもしれない。さらに、Webサービス利用者の多くは、入力した自分自身や知人の漏洩リスクについて心配するかもしれない。
【0068】
またWebサービス事業者においては、利用者が入力した利用者自身やその知人の情報が漏洩すると、利用者からの損害賠償のリスクや風評被害が生じる可能性がある。さらに、そもそも個人情報の取得を制限する法律や規制などに照らして、利用者自身やその知人の情報を取得し、Webサービスのサーバに記憶しておくことができない場合がある。本実施形態1の第1の効果によれば、このような問題を解決するのに役立つ。
【0069】
本実施形態の第2の効果は、セキュリティサービスXの情報記憶サーバにおいて、利用者が入力した、たとえばIyaのような保護すべき情報を、EKy(EKxa(Iya))という二重暗号化を施して記憶するため、高い安全性が実現される点である。たとえば、ケース1において図10および図11を参照すると、セキュリティサービスXの情報記憶サーバ120に記憶されている情報は、IDxa1011、Kxa1021、および二重暗号化情報EKy(EKxa(Iya))1121のみである。万一、これらがセキュリティサービスXの情報記憶サーバ120から漏洩したとしても、暗号鍵Kyがないので、二重暗号化情報EKy(EKxa(Iya))を平文に戻すことはできない。また同様に、セキュリティサービスXの情報記憶サーバ120には、暗号鍵Kyが記憶されていないので、セキュリティサービスXの運営事業者が、保護すべき情報Iyaを平文に戻して、たとえば広告・宣伝などに利用することはできない。
【0070】
一方、たとえばケース1では、利用者Aの情報端末からの情報Iyaの記憶要求をきっかけとして、ステップS704からステップS710までの間、その一時記憶部102に、平文のIya、暗号鍵Kyおよび暗号鍵Kxaが一時的に記憶される。また同様に、利用者Aの情報端末からの情報Iyaの要求をきっかけとして、ステップS1204からステップS1210までの間、その一時記憶部102に、平文のIya,暗号鍵Ky、および暗号鍵Kxaが一時的に記憶される。しかし、いずれの場合にも暗号化または表示の処理が終了すると同時に、一時記憶部102より消去され(ステップS711またはステップS1211)、データベースのデータとして永続的に記憶されることがない。このため、セキュリティサービスXの情報処理サーバから、データベースの情報漏洩が発生するリスクは、従来の方法に比べて低い。また、上記のようにセキュリティサービスXの情報処理サーバには一時的に平文の情報が記憶されるが、一般にサーバに外部より侵入して主記憶装置のような一時記憶部にある情報を入手することは困難である。また、個人情報保護を目的とした各種の法律、規制は、個人情報を集約したデータベースの保護を目的としている。本実施形態1は、情報漏洩事故に関する実質的なリスクを従来より小さくできるだけでなく、Webサービス、およびセキュリティサービスXの両方にとっての、個人情報保護を目的とした各種の法律、規制の違反に対するリスクを小さくすることになる。
【0071】
さらに、前記第1の効果および前記第2の効果の組み合わせとして、次の効果が存在する。たとえばケース1では、WebサービスYの利用者Aは、そのWebサービスYの利用に際して入力する情報Iyaを、そのWebサービスの運営事業者にも、またこれを暗号化して記憶するサービスを提供するセキュリティサービスXの運営事業者にも入手できない状態で記憶、および利用することができる。
【0072】
本実施形態1に係る本願発明の第3の効果は、仮に二重暗号化情報および鍵が、各々を記憶するサーバ、またはセキュリティサービスXの情報処理サーバから流出した場合にも、従来の方法と比べてその被害を小さな範囲に限定できる点である。
【0073】
前述のように、セキュリティサービスXの情報処理サーバの一時記憶部には、Webサービスの管理する暗号鍵、およびセキュリティサービスXの管理する暗号鍵および保護されるべき平文の利用者情報が、一時的に記憶される。いまたとえば、この一時記憶部に一時的に記憶された情報が、セキュリティサービスXの情報処理サーバから漏洩した場合を考える。再び図13を参照する。いま、ケース1の処理中に、WebサービスYから暗号鍵Ky1314が、またセキュリティサービスXの情報記憶サーバからセキュリティサービスXの暗号鍵Kxa1316および二重暗号化情報EKy(EKxa(Iya))が流出したとする。この場合、KyおよびKxaを用いれば、EKy(EKxa(Iya))から、平文のIyaを計算することができる。しかし、ここで流出した2つの暗号鍵KyおよびKxaを用いても、図13にあるケース2、3、および4のいずれの暗号化情報も平文に戻すことはできない。
【0074】
つまり、上記第1の効果、第2の効果では、仮にセキュリティサービスXの情報記憶サーバにある暗号化情報がすべて漏洩して、さらにWebサービスの管理する暗合鍵、セキュリティサービスXの管理する暗号鍵のいずれかが漏洩しても一切の二重暗号化情報は平文に戻せないことを説明した。さらに第3の効果によれば、仮にセキュリティサービスXの情報記憶サーバにある暗号化情報がすべて流出して、さらにさらにWebサービスYの管理する暗合鍵、セキュリティサービスXの管理する暗号鍵の両方が流出しても、平文に戻せる情報は限定的であることを意味する。本実施形態における鍵の利用によって、従来の方法に比べて万一、暗号化情報と暗号鍵の両方が流出した場合にも、その被害を従来よりも小さなものにとどめることができる。
【0075】
なお、図13からわかるように、本実施形態1では、Webサービスの管理する暗号鍵は、Webサービス毎に異なるが、各Webサービスの複数の利用者間では共通の暗号鍵が用いられている。しかしこれに限定されることはなく、本実施形態では、利用者ごとに異なる暗号鍵を用いてもよい。また、セキュリティサービスXの管理する暗号鍵は、利用者ごとには異なるが、ある利用者が複数のWebサービスを利用している場合にでも一利用者についてひとつの暗号鍵が用いられている。しかしこれに限定されることはなく、本実施形態では、Webサービスごとに異なる暗号鍵が用いられてもよい。暗号鍵の数が増えれば、暗号鍵流出の際の被害をさらに狭く限定することができるという利点がある。
【0076】
なお、本実施形態1では、二重暗号化情報を記憶する暗号化情報テーブル123と、セキュリティサービスXにおける、たとえばKxaなどのような暗号鍵を記憶する暗号鍵テーブル124は、同じセキュリティサービスXの情報記憶サーバ120に存在したが、これら2つのテーブルは異なるサーバに存在してもよい。さらに、これら2つのテーブルが別のサーバに存在した場合、これら2つのサーバは異なる事業者によって運営されていてもよい。
【0077】
なお、これまでの本実施形態の説明においては、WebサービスYも、セキュリティサービスXも平文に戻せない状態で、セキュリティサービスXの情報記憶サーバに記憶する情報は、利用者Aがその情報端末から入力した情報Iyaであるとして説明した。しかし、このような情報は利用者Aが入力した情報である必要はなく、たとえば何らかの情報を暗号化するための暗号鍵であってもよい。
【0078】
(実施形態2)
まず始めに、以下に説明する実施形態2の概略について説明する。実施形態1では、WebサービスYのサーバ150が、図7のステップS705、および図12のステップS1204において、WebサービスYが保有する暗号鍵KyをセキュリティサービスXの情報処理サーバ100に送信した。図7は、利用者Aの入力した情報を、セキュリティサービスXの情報記憶サーバで二重暗号化した上で記憶するための処理であった。また図12は、セキュリティサービスXに二重暗号化して記憶した利用者Aの情報を呼び出すための処理であった。
【0079】
このような前記実施形態1に係る処理においては、WebサービスYのサーバが有する暗号鍵Kyを、セキュリティサービスXのサーバが受け取り、一時的にその情報処理サーバ100の一時記憶部に記憶する。セキュリティサービスXの情報処理サーバでは、図7または図12の処理が終了後には、暗号鍵Kyは消去される(ステップS711およびステップS1211)。このため、もしセキュリティサービスXの情報記憶サーバから二重暗号化情報を漏洩しても安全である。
【0080】
一般に、暗号鍵Kyが一時的であれ、セキュリティサービスXのサーバに記憶されることは、WebサービスYの運営者は望まない場合がある。理由は、セキュリティサービスXの運営者が故意または過失によって、セキュリティサービスXの情報処理サーバの一時記憶部102に一時的に記憶された暗号鍵Kyをデータベース記憶部に記憶する可能性があるためである。本来、暗号鍵KyはWebサービスYを使う利用者Aの情報を、セキュリティサービスXの運営事業者開示しないために用いているものである。従ってこの暗号鍵KyをセキュリティサービスXの運営者の管理下にある情報処理サーバ100に送ることは望ましくないと考えることもできる。さらに、実施形態1では、図13に示すように、暗号鍵Kyは、Webサービスのすべての利用者に共通である。このため、セキュリティサービスXの運営者が暗号鍵Kyをデータベース記憶部に記憶して悪用すれば、WebサービスYのすべての利用者の情報を平文に戻すことが可能となってしまう。
【0081】
そこで、本実施形態2として、WebサービスYの有する暗号鍵Kyを、セキュリティサービスXのサーバに送信せずに、前記実施形態1と同様の効果を実現する実施形態について説明する。図14を参照する。実施形態1では、セキュリティサービスXで記憶する情報Iya1419を、Ky1413およびKxa1414の2つの鍵で二重暗号化する。これに対して、本実施形態で用いる鍵は3種類ある。まず、情報Iya1419を、セキュリティサービスXにおける利用者Aの暗号鍵Kxa1418で暗号化し、EKxa(Iya)の状態で、情報記憶サーバ120に記憶する。一方、暗号鍵Kxa1418は、セキュリティサービスXの暗号鍵Kxy1417およびWebサービスYの暗号鍵Ky1416で二重暗号化し、EKxy(EKy(Kxa))の状態で、セキュリティサービスXの情報記憶サーバ120に記憶する。ここに、Kxyとは、セキュリティサービスXが記憶する、WebサービスYの利用者のための暗号鍵である。これに対して本実施形態2におけるKyも、前記実施形態1と同様、WebサービスYが記憶するWebサービスYの利用者のための暗号鍵である。なお、本実施形態2で二重暗号化されるのは、KxaやKyaのような暗号鍵であるが、前記実施形態1と同じように、利用者Aが入力した情報を、本実施形態2の方法でKyおよびKxyによって二重暗号化をしてもよい。
【0082】
次に、図15、図18、図19、および図20に示すフロー図を用いて、本実施形態2の処理について説明する。いま、利用者AはWebサービスYにログインしている(ステップS1501)。この時、WebサービスYのサーバのHTML生成部155がHTMLコードを生成し、送受信部151がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。この時点で利用者Aはログインしているので、利用者AをWebサービスYで一意に特定するためのIDyaは、すくなくともWebサービスYのサーバの一時記憶部154に記憶されている。
【0083】
いまWebサービスYのサーバ150に記憶しない情報の入力を、WebサービスYのサーバが利用者Aに対して求めるとする。このとき、WebサービスYのサーバ150と利用者Aの情報端末170との接続が、セキュリティサービスXの情報処理サーバ100にリダイレクトされる(ステップS1502)。次にセキュリティサービスXの情報処理サーバのHTML生成部108がHTMLコードを生成し、送受信部101がHTMLコードを、ネットワーク190を通じて利用者Aの情報端末170に送る。利用者Aの情報端末の送受信部171がこれを受信し、HTML解析部172が解析した後、GUI表示部173が画像を表示する。ここで、本実施形態の一例として図8に示すような利用者Aおよび利用者Aの知人の名前と住所の入力フォームが表示されているとする。
【0084】
GUI表示部173には、Webブラウザ表示ウィンドウ800が表示される。さらに、Webブラウザ表示ウィンドウ800には、利用者AがWebブラウザを通じてWebサービスYを現在使っていることを表す表示801がある。もし、WebサービスYが有する何らかの情報を表示したい場合には、WebサービスYのサーバ150からセキュリティサービスXの情報処理サーバ100にこのような情報を送信し、これを平文情報領域104に一時的に記憶した上で、セキュリティサービスのHTML生成部108が、これを利用して図8のような前記HTMLコードを生成表示してもよい。たとえば、図8の一例では、利用者Aの名前(Betty Thomas)802のような、WebサービスYの有する情報については、WebサービスYのサーバ150から、セキュリティサービスXの情報処理サーバ100に送られた上で、そのHTML生成部108によってHTMLコードに変換される。このような場合、WebサービスYのサーバ150から受信した情報は、ステップS1806またはステップS1908で他の情報とともに消去する。
【0085】
次に、利用者Aが、情報端末170の入力部174を用いて、利用者Aが利用者A自身の情報およびその知人の情報を入力する。いま、ここで入力された文字列を、たとえばスペース区切りなどで結合したものを情報Iyaとする。利用者Aの情報端末の送受信部171が、Iyaを、送受信部171が、ネットワーク190を通じてサービスXの情報処理サーバ100に送信する(ステップS1503)。サービスXの情報処理サーバの送受信部101がIyaを受信し、一時記憶部102にある平文情報領域104に一時的に記憶する(ステップS1504)。ここでは簡単のために、名前と住所という複数の入力フィールドに対する入力文字列を結合した情報Iyaと表記したが、このような入力文字列は、複数の情報に分割されて送信、記憶されてもよい。
【0086】
次にWebサービスYのサーバの検索部158は、一時記憶部154に記憶された利用者AのIDyaを検索キーとして、暗号鍵テーブル153を検索する。図9に暗号鍵テーブル153の一例を示す。ここでは、利用者AのWebサービスYにおけるIDである、IDya911を検索キーとして、セキュリティサービスXの列920を検索し、検索結果として利用者AのセキュリティサービスXのIDであるIDxa921を得る。
【0087】
次に、WebサービスYのサーバの送受信部151が前記検索結果であるセキュリティサービスXにおける利用者AのIDであるIDxaを、ネットワーク190を通じてセキュリティサービスXの情報処理サーバ100に送信する(ステップS1505)。ここで、WebサービスYの暗号鍵Kyを、セキュリティサービスXの情報処理サーバ101に送らない点が、実施形態1と本実施形態との異なる点である。サービスXの情報処理サーバの送受信部101がIDxaを受信すると、IDxaを一時記憶部の平文情報領域104に一時的に記憶する。
【0088】
次に、セキュリティサービスXの情報処理サーバの送受信部101は、暗号鍵KxyおよびセキュリティサービスXの記憶する利用者Aの二重暗号化鍵EKy(EKxy(Kxa))の要求を、サービスXの情報記憶サーバ120に送る。この要求には、上記ステップS1505でWebサービスYのサーバ150から受信したIDであり、利用者AのセキュリティサービスXにおけるIDであるIDxaおよびWebサービスを表す情報Yが含まれる(ステップS1506)。
【0089】
セキュリティサービスXの情報記憶サーバの送受信部121がIDxa及びYを受信すると、検索部125がYを検索キーとしてデータベース記憶部122にあるサービス暗号鍵テーブル126を検索する。本実施形態2におけるサービス暗号鍵テーブルを図16に示す。検索部125がWebサービスYの暗号鍵Kxy1621を検索し、これを、送受信部121を通じてセキュリティサービスXの情報処理サーバに送る。これを受信したセキュリティサービスXの情報処理サーバは、これを一時記憶部の暗号鍵テーブル105に記憶する(ステップS1507)。なお、図14からわかるように、実施形態1で利用されるWebサービスYの暗号鍵は、WebサービスYのサーバ150で記憶されるKyである。一方、本実施形態では、2つのWebサービスYの暗号鍵が使われる点が、実施形態1と異なる。本実施形態ではKyおよびKxyの2つのWebサービスYの暗号鍵が使われ、KyはWebサービスYのサーバ150に、またKxyはセキュリティサービスXの情報記憶サーバ120に各々記憶されている。このステップS1507の処理は、この暗号鍵Kxyに係る処理である。
【0090】
次に、セキュリティサービスXの情報記憶サーバの検索部125が、前記ステップS1506でセキュリティサービスXの情報処理サーバから送られた、利用者AのIDxaを検索キーとして、暗号化情報テーブル123の暗号鍵の列を検索する(ステップS1508)。本実施形態における暗号化情報テーブルの一例1701を図17に示す。本実施形態における暗号化情報テーブル123は、各々の利用者のIDに二重暗号化鍵1720および暗号化情報1730が関連づけられて記憶されている。暗号化情報テーブル1701に記憶された二重暗号化鍵では、暗号化情報を平文に戻すことはできない。たとえば、図17において、暗号化情報EKxa(Iya)1731は暗号鍵Kxaで暗号化されている。このテーブルに記憶された暗号鍵EKy(Exy(Kxa))1721は、鍵KyがWebサービスYのサーバ150に記憶されているため、セキュリティサービスXに記憶されている暗号鍵では平文に戻せない。したがってセキュリティサービスXの情報記憶サーバで暗号鍵Kxaを得ることはできず、このため暗号化情報1731を平文に戻すことはできない。
【0091】
前記ステップS1508における検索において、検索部125は検索キーとなったIDxaに関連付けられた二重暗号化鍵が存在するかどうかを検索する(ステップS1509)。図17に示す一例のように、二重暗号化鍵が存在した場合には図18のステップS1801に進む。以前に、セキュリティサービスXのサーバでIDxaに対応する二重暗号化鍵が、まだ生成されていないために暗号化情報テーブル123に存在しない場合には、図19のステップS1901に進む。
【0092】
次に、図18のフロー図を用いて、前記ステップS1509で、図17の一例のように、セキュリティサービスXの情報記憶サーバの暗号化情報テーブル123に二重暗号化鍵が存在した場合の処理について説明する。まず、セキュリティサービスXの情報記憶サーバの送受信部121が、前記ステップS1509で検索された二重暗号化鍵EKy(EKxy(Kxa))1721をWebサービスYのサーバに送信する(ステップS1801)。次に、WebサービスYのサーバの送受信部151がこれを受信し、一時記憶部154に一時的に記憶する。次に復号化部157が受信した二重暗号化鍵EKy(EKxy(Kxa))を、暗号鍵テーブル153に記憶された暗号鍵Kyで復号化し、EKxy(Kxa)を得る。次に送受信部151がこれをセキュリティサービスXの情報処理サービスXのサーバに送信する(ステップS1802)。この時、WebサービスYのサーバには、暗号鍵Kxyが記憶されていないので、WebサービスYのサーバに記憶されている情報では、EKxy(Kxa)を更に復号化してKxaを得ることはできない。このステップS1802の処理の後、セキュリティサービスXの情報記憶サーバから受信したEKy(EKxy(Kxa))および生成したEKxy(Kxa)は一時記憶部154から消去する。
【0093】
次に、セキュリティサービスXの情報処理サーバの送受信部101が、ステップS1802でWebサービスYのサーバから送られたEKxy(Kxa)を受信し、一時記憶部の暗号化情報領域103に一時的に記憶する。次に、暗号化部107が、前記ステップS1507で暗号鍵テーブルに記憶した暗号鍵Kxyで、このEKxy(Kxa)を復号化し、Kxaを得る(ステップS1803)。次に、前記ステップS1504で一時記憶部の平文情報領域104に記憶した情報Iyaを、前記ステップS1803で得た暗号鍵Kxaで暗号化しEKxa(Iya)を生成する。次に、送受信部101がこのEKxa(Iya)をセキュリティサービスXの情報記憶サーバに送る(ステップS1804)。次に、セキュリティサービスXの情報記憶サーバの送受信部121がこのEKxa(Iya)を受信する。次に、これをデータベース記憶部の暗号化情報テーブル123に、利用者AのIDxaと関連づけて記憶する(ステップS1805)。図17の暗号化情報テーブル1701におけるEKxa(Iya)1931はこのステップS1805で記憶されたものである。次に、セキュリティサービスXの情報処理サーバの記憶部に記憶されているIDxa、EKxy(Kxa)、EKxa(Iya)、Kxy、Iyaを削除する(ステップS1806)。
【0094】
図18に示すフロー図では、利用者Aがその情報端末に、ステップS1503情報Iyaを入力する以前に、二重暗号化鍵EKy(EKxy(Kxa))が、セキュリティサービスXの情報記憶サーバに記憶されている場合について説明した。次に図19を参照して説明するのは、情報Iyaが入力される時点で、二重暗号化鍵EKy(EKxy(Kxa))が、セキュリティサービスXの情報記憶サーバに記憶されていない場合である。
【0095】
図19を参照する。ステップS1509において、IDxaに関連づけられた二重暗号化鍵が、セキュリティサービスXの情報記憶サーバの暗号化情報テーブル123に記憶されていない場合、セキュリティサービスXの情報記憶サーバの送受信部121は、IDxaに関連づけられた二重暗号化鍵がないことをセキュリティサービスXの情報処理サーバに通知する(ステップS1901)。セキュリティサービスXの情報処理サーバの送受信部101がこの通知を受信すると、暗号鍵生成部111が、利用者Aの暗号鍵Kxaを生成する(ステップS1902)。次に、前記ステップS1504において一時記憶部の平文情報領域104に記憶した情報Iyaを、この暗号鍵Kxaで暗号化し、EKxa(Iya)を生成する。次に、送受信部101がこれを、情報記憶サーバ120に送る(ステップS1903)。
【0096】
セキュリティサービスXの情報記憶サーバ120の送受信部121がこのEKxa(Iya)を受信し、データベース記憶部の暗号化情報テーブル123に、利用者AのIDxaと関連づけて記憶する(ステップS1904)。図17の暗号化情報テーブル1701におけるEKxa(Iya)1931がこれに相当する。
【0097】
次に、セキュリティサービスXの情報処理サーバの暗号化部107が、前記ステップS1902で生成した暗号鍵Kxaを、前記ステップS1507で暗号鍵テーブル105に記憶した暗号鍵Kxyで暗号化し、EKxy(Kxa)を得る。次に、送受信部101がこれをIDxaと関連づけてWebサービスYのサーバ150に送る(ステップS1905)。
【0098】
次に、WebサービスYのサーバの送受信部151がこのEKxy(Kxa)を受信する。暗号化部159が、暗号鍵テーブル153に記憶されている暗号鍵Kyでこれを暗号化し、EKy(EKxy(Kxa))を生成する。次に送受信部151がこれをIDxaと関連づけてセキュリティサービスXのサーバ120に送信する(ステップS1906)。WebサービスYのサーバは、生成したEKy(EKxy(Kxa))および受信したEKxy(Kxa)は一時記憶部154から消去する。
【0099】
次に、セキュリティサービスXの情報記憶サーバの送受信部121がこのEKy(EKxy(Kxa))を受信し、暗号化情報テーブル123にIDxaと関連づけて記憶する(ステップS1907)。この後、Xの情報処理サーバは、その揮発記憶領域に一時的に記憶されたIDxa、EKxy(Kxa)、Kxy、Kxa(Iya)およびIyaを消去して(ステップS1908)、処理を終了する。なお、図17からわかるように、本実施形態2では、二重暗号化鍵EKy(EKxy(Kxa))1721と暗号化情報EKxa(Iya)1731は同じセキュリティサービスXの情報記憶サーバに記憶されていた。しかし二重暗号化鍵と暗号化された情報は異なるサーバに記憶されてもよい。
【0100】
次に、利用者AがWebサービスYを通じて、前記ステップS1503で入力した自分自身および知人の情報Iyaを閲覧する場合の処理について図20のフロー図を用いて簡単に説明する。
【0101】
いま、利用者AはWebサービスYにログインしている(ステップS2001)。このとき、WebサービスYから送信されたHTMLコードを解析した結果が、利用者Aの情報端末のGUI表示部173に表示されている。ここで、利用者Aが入力部174を通じて前記ステップS1503で入力した利用者A自身、および知人に関する情報Iyaを要求する操作を実行する。すると、利用者Aの情報端末の送受信部171は、Iyaの表示要求を、ネットワーク190を通じてWebサービスYのサーバ150に送る(ステップS2002)。この要求を受信したWebサービスYのサーバの送受信部101が、利用者Aの情報端末170への接続を、セキュリティサービスXの情報処理サーバ100にリダイレクトする(ステップS2003)。
【0102】
さらに、WebサービスYのサーバの検索部158が、利用者AをWebサービスYで一意に認識するためのIDyaを検索キーとして、データベース記憶部にある暗号鍵テーブル153を検索する。この検索結果として得たIDxa921を、Iyaの要求とともに、ネットワーク190を通じてセキュリティサービスXの情報記憶サーバ120に送る(ステップS2004)。
【0103】
これをセキュリティサービスXの情報記憶サーバの送受信部121が受信すると、検索部125が受信したIDxaを検索キーとして、暗号化情報テーブル123を検索し、ステップS1805またはステップS1904で記憶したEKxa(Iya)1731、およびEKy(EKxy(Kxa))1721を得る。さらに、検索部125は、サービス暗号鍵テーブル126を検索して、WebサービスYの暗号鍵Kxyを得る。次に、送受信部121は、EKxa(Iya)およびKxyをIDxaに関連づけた状態で、セキュリティサービスXの情報処理サーバ100に送る。さらに送受信部121は、EKy(EKxy(Kxa))をIDxaに関連づけた状態でWebサービスYのサーバ150に送る(ステップS2005)。
【0104】
セキュリティサービスXの情報処理サーバの送受信部101が、セキュリティサービスの情報記憶サーバ120から受信したEKxa(Iya)およびKxyを暗号化情報領域103に一時的に記憶する(ステップS2006)。
【0105】
次に、WebサービスYのサーバの送受信部151が、ステップS2005でセキュリティサービスXの情報記憶サーバより送られたIDxaを検索キーとして、暗号鍵テーブル153を検索し、利用者Aの暗号鍵Kyを得る。次に、同じくステップS2005で受信したEKy(EKxy(Kxa))を、暗号鍵Kyで復号化したEKxy(Kxa)を生成し、これを一時記憶部154に一時的に記憶する。次に、送受信部151がEKxy(Kxa)を、ネットワーク190を通じて、セキュリティサービスXの情報処理サーバ100に送信する(ステップS2007)。この処理の後、受信したEKy(EKxy(Kxa))および生成したEKxy(Kxa)は一時記憶部154から消去する。
【0106】
次に、セキュリティサービスXの情報処理サーバの送受信部101がこのEKxy(Kxa)を受信すると、これを一時記憶部の暗号化情報領域103に一時的に記憶する。次に、復号化部106が、ステップS2006で暗号化情報領域103に記憶したKxyで、このKxy(Kxa)を復号化し、利用者Aの暗号鍵Kxaを得る(ステップS2008)。さらに、このKxaを用いて前記ステップ2106で暗号化情報領域103に記憶したKxa(Iya)を復号化して情報Iyaを得、これを平文情報領域104に一時的に記憶する(ステップS2009)。次に、HTML生成部108がこの情報Iyaを含むHTMLコードを生成する。送受信部101が、情報Iyaを含むHTMLコードを利用者Aの情報端末170に送信する(ステップS2010)。利用者Aの情報端末の送受信部171がこのHTMLコードを受信する。次に、HTML解析部172がこのHTMLコードを解析し、その結果をGUI表示部173に表示する(ステップS2011)。ここで表示される情報は、情報Iyaの一部でも全てでもよく、またIya以外の情報が含まれていてもよい。Iyaの一部または全てを含む情報の表示を終了すると、その通知がセキュリティサービスXの情報処理サーバに送られる。この通知を受け取ったセキュリティサービスXの情報処理サーバは、その一時記憶部102に記憶されているIDxa、Kxy、Kxa、Iya、EKy(Exa(Iya))、およびEKxy(Kxa)を消去する(ステップS2012)。
【0107】
前記実施形態1では、記憶する情報Iyaを、WebサービスYのサーバの記憶する暗号鍵KyとセキュリティサービスXの情報記憶サーバの記憶する暗号鍵Kxaとにより直接、二重暗号化していた。一方本実施形態2では、情報Iyaを暗号鍵Kxaで暗号化する。その上で、暗号鍵Kxaを、WebサービスYのサーバの記憶する暗号鍵KyとセキュリティサービスXの情報記憶サーバの記憶するKxyで二重暗号化する。これが実施形態1と本実施形態2の最大の違いである。
【0108】
本実施形態2においては、セキュリティサービスXが暗号鍵Kyを受信することはないので、セキュリティサービスXの情報処理サーバと情報記憶サーバの処理は1つのサーバで実行してもよい。
【0109】
次に、実施形態の効果について説明する。第1の効果は、実施形態1で説明した第1の効果と同じく、WebサービスYのサーバは、利用者が入力した情報、たとえばIyaのような情報、を記憶することなく、サービスの提供が可能という点である。本実施形態では、WebサービスYのサーバに記憶されるのは、図9を参照すると、WebサービスYの有するIDyaと暗号鍵Ky、およびセキュリティサービスXのIDxaのみである。このため、WebサービスYのサーバ150では、利用者Aがその情報端末に入力した情報Iyaを記憶しない。この結果、前記実施形態1の第1の効果で説明した、WebサービスYのサーバからの情報漏洩リスクの低減や、WebサービスY事業者による利用者の情報の利用の防止などの効果がある。
【0110】
実施形態2の効果は、前記実施形態1に係わる第2の効果と同様、セキュリティサービスXの情報記憶サーバで、利用者Aが入力した情報Iyaを記憶する際の安全性が高い点である。セキュリティサービスXの情報記憶サーバに記憶された、暗号化情報EKxa(Iya)を復号化するために必要な暗号鍵はKxaである。しかし、セキュリティサービスXの情報記憶サーバにおいて、このKxaは二重暗号化され、EKy(EKxy(Kxa))の形で記憶されている。この二重暗号化されたEKy(EKxy(Kxa))からKxaを得るためには、WebサービスYのサーバのみに記憶された暗号鍵Kyが必要である。したがって、セキュリティサービスXの運営者が情報Iyaを平文にもどすことはできない。また万一、暗号化情報や二重暗号化鍵がセキュリティサービスXの情報記憶サーバ120から漏洩したとしても、平文の情報Iyaを得ることはできない。セキュリティサービスXの情報処理サーバの一時記憶部102には一時的に平文のIyaや暗号鍵Kxaが記憶されるが、これらはデータベース記憶部にデータベースとして記憶されることはない。このためセキュリティサービスXの外部より侵入して平文情報Iyaを入手することは困難である。
【0111】
本実施形態2に係る第3の効果は、WebサービスYのサーバ150が記憶する暗号鍵Kyが、セキュリティサービスXの情報処理サーバ100に送信されない点である。本実施形態2に係る第3の効果は、実施形態1では述べられていない効果である。実施形態1では、セキュリティサービスXの情報処理サーバにKyが送られ、一時記憶部に一時的であれ、記憶された上、これを用いた情報Iyaの暗号化や、復号化が実行された。WebサービスYの有する暗号鍵Kyは、セキュリティサービスXの情報記憶サーバに記憶されることはなく、暗号化または復号化の処理後には、セキュリティサービスXの情報処理サーバより削除される(ステップS711またはステップS1211)。しかし、現実には、WebサービスYの運営者は、暗号鍵KyをセキュリティサービスXの管理下にあるサーバに送ることを望まないことが多い。セキュリティサービスXの運営者が、その情報処理サーバに一時的に記憶されたKyを情報記憶サーバなどに記憶してしまうと、セキュリティサービスXの鍵Kxaと組み合わせることで、WebサービスYに対して利用者Aが入力した情報Iyaを、セキュリティサービスXの運営者が入手可能になってしまうからである。さらに、セキュリティサービスXの運営者がKyを記憶すると、WebサービスYのすべての利用者の情報を入手可能になってしまうからである。図14を再び参照すると、たとえばセキュリティサービスXの運営者がKyを記憶しておけば、自らが記憶する利用者Bの暗号鍵Kxb1434と組み合わせることで、利用者BがWebサービスYに入力した情報Iyb1439をも入手可能となってしまう。
【0112】
しかし、本実施形態によれば、暗号鍵KyはセキュリティサービスXの情報処理サーバに送信される必要がない。従ってセキュリティサービスXの運営者が、暗号鍵Kyを入手する方法はない。
【0113】
本実施形態の第4の効果は、セキュリティサービスXに情報を記憶する利用者が、複数のWebサービスを同時に利用することが容易になる点である。実施形態の第4の効果は、実施形態1では述べられていない効果である。いま、利用者AがWebサービスYにログインしている状態で、図20を参照して説明した処理により、以前に利用者AがWebサービスY利用中に入力した情報Iyaを、利用者Aの情報端末に表示している(ステップS2011)とする。さらに、この状態で利用者Aは、以前にWebサービスZ利用中に入力した情報Izaも同時に表示させたいという要求があるとする。たとえば、図8に示したようにWebサービスYが自分および知人の名前や住所を管理する住所録サービスだったとする。また、WebサービスZも同様に、別の住所録サービスだったとする。このとき、利用者AはWebサービスYおよびZで個別に管理されている知人リストを、たとえば図21の一例に示すように、1つの画面にまとめて表示できれば便利である。図21は、利用者AがWebサービスYを利用している時の表示画面である。GUI表示部173には、Webブラウザウィンドウ2100が表示されている。図20のフロー図で説明したとおり、図21の画面のHTMLコードは、セキュリティサービスXの情報処理サーバのHTML生成部108が生成したものである。いま、図21において利用者Aの知人の名前John Brown2111およびその住所2112は、利用者AがWebサービスY利用中に入力した情報Iyaであるとする。また利用者Aの知人の名前Fred Mancini2121およびその住所2122は、利用者AがWebサービスZを利用中に入力した情報Izaだとする。図21のように、複数の異なるWebサービスに分散した知人の情報を一括して閲覧することができれば、利用者Aの住所録としての利便性は向上する。
【0114】
以上の説明では、簡単のためにWebサービスYおよびWebサービスZともに住所録サービスであるとして説明したが、各Webサービスは、電子メール、チャット、SNS(Social Networking Service)、音声通話、物品販売、物品配送といったどのようなWebサービスでもよい。
【0115】
実施形態2においては、利用者AがWebサービスYに対して入力した情報Iyaを図20を参照して説明した処理により、表示部173に表示している時点(ステップS2011)では、セキュリティサービスXの情報処理サーバの一時記憶部102には、暗号鍵Kxaが平文の状態で一時的に記憶されている。ここで再び図14を参照すると、本実施形態2では情報Iya1419情報Iza1439も、同じ暗号鍵Kxaで暗号化された状態で、情報記憶サーバ120に記憶されている。このため、セキュリティサービスXの情報処理サーバは、Izaに係るステップS2001からステップS2009に相当する処理を実行することなく、サーバと情報IyaおよびIzaを、図21に示すように同じ画面に表示することができる。
【0116】
再び図14を参照する。前記実施形態1の場合、セキュリティサービスXの情報記憶サーバ120では、情報Iya1419は、Kxa1414およびKy1413で二重暗号化され、EKy(EKxa(Iya))の形で記憶されている。一方でIza1429は、Kxa1424およびKz1423で二重暗号化され、EKz(EKxa(Iza))の形で記憶されている。セキュリティサービスXの情報処理サーバが図21のような表示のためのHTMLコードを生成するためには、利用者AはWebサービスYとWebサービスZの両方について、図20のステップS2001からステップS2009に相当する処理を実行する必要がある。このために、利用者Aにさらなる操作を行う必要があり、またセキュリティサービスXの各サーバおよびWebサービスYおよびZのサーバにおいてもさらなる処理が必要とされる。しかし、実施形態においては、図21のような画面を簡単に表示することができる。図21のような画面において、表示だけでなく、情報追加や変更を実行することもできる。この場合は、図15、図18、図19、および図20に示した処理が実行される。
【0117】
すなわち、本実施形態2の方法では、WebサービスYおよびWebサービスZを利用する利用者Aが各々のサービス利用時に入力した情報を、WebサービスYの運営者もWebサービスZの運営者も、さらにセキュリティサービスXの運営者も入手することができないにもかかわらず、図21のような複数のWebサービスを横断的に結びつける、従来の方法では不可能だったサービスを実現することが可能となる。

【特許請求の範囲】
【請求項1】
秘匿情報管理システムにおいて、前記秘匿情報管理システムは秘匿情報の記憶処理と閲覧処理を行い、
(1)前記記憶処理は、
ネットワークを介して利用者によって送信された前記秘匿情報をネットワーク経由で受信し、
前記秘匿情報を、管理者の異なる第1の暗号鍵と第2の暗号鍵の双方を用いることによってのみ解読が可能な状態で暗号化して暗号化秘匿情報を生成し、
前記暗号化秘匿情報を情報記憶領域に保存し、
前記第1の一時記憶領域に格納された秘匿情報を消去する処理であり、
(2)前記閲覧処理は、
前記第1の暗号鍵と前記第2の暗号鍵の双方を用いて前記暗号化秘匿情報から前記秘匿情報を生成し、
生成された前記秘匿情報をネットワーク経由で送信する処理である、
ことを特徴とする秘匿情報管理システム。

【図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

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate


【公開番号】特開2012−100352(P2012−100352A)
【公開日】平成24年5月24日(2012.5.24)
【国際特許分類】
【出願番号】特願2012−25831(P2012−25831)
【出願日】平成24年2月9日(2012.2.9)
【分割の表示】特願2011−528576(P2011−528576)の分割
【原出願日】平成21年8月28日(2009.8.28)
【出願人】(506183731)リプレックス株式会社 (20)
【Fターム(参考)】