(57)【特許請求の範囲】
【請求項１】
複数の端末のうちいずれかから、ネットワークを介して接続されるストレージに格納される複数の登録データのうちいずれかを特定する特定情報であって、ユーザの複数の属性のうち１または複数のそれぞれについての過去の属性値に基づくハッシュ値を含む登録データを特定する特定情報を取得する特定手段と、
前記複数の端末のうち前記いずれかから、前記ユーザの複数の属性のうち１または複数のそれぞれについての属性値を取得する属性取得手段と、
前記１または複数の属性のそれぞれについて、前記取得された属性値に基づくハッシュ値を生成するハッシュ生成手段と、
前記特定情報に基づいて、前記ストレージから登録データを取得する登録データ取得手段と、
前記取得された登録データにハッシュ値が含まれる属性でありかつ前記属性取得手段により属性値が取得された属性について、前記生成されたハッシュ値と、前記取得されたハッシュ値とを比較する比較手段と、
前記比較の結果に基づいて、前記比較された属性の属性値に変更があったか否かを示す情報を出力する変更出力手段と、
前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記属性取得手段により取得された属性値に基づくハッシュ値を含む登録データを生成する登録データ生成手段と、
前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記属性取得手段により取得された属性値に基づくハッシュ値を含む登録データを、前記特定情報により特定される登録データに関連付けて前記ストレージに格納する登録手段と、
を含み、
前記登録データ生成手段は、前記ユーザの複数の属性のうち住所または勤務先に関する属性について取得された属性値の一部を抽出し、前記抽出された属性値に基づくハッシュ値を生成する、
ユーザ情報管理システム。
【請求項２】
請求項１に記載のユーザ情報管理システムにおいて、
前記いずれかの端末から、前記ユーザの複数の属性のうち１または複数のそれぞれについて過去の属性値からハッシュ値を生成するための変換パラメータを取得するパラメータ取得手段をさらに含み、
前記ハッシュ生成手段は、前記１または複数の属性のそれぞれについて、前記取得された変換パラメータに基づいて前記取得された属性値を変換し、前記変換された属性値のハッシュ値を生成する、
ユーザ情報管理システム。
【請求項３】
請求項２に記載のユーザ情報管理システムにおいて、
前記変換パラメータは、前記ユーザの登録に関する時刻であり、
前記ハッシュ生成手段は、前記取得された属性値に前記時刻を付加することにより前記属性値を変換する、
ユーザ情報管理システム。
【請求項４】
請求項２または３に記載のユーザ情報管理システムにおいて、
登録変換パラメータを取得する登録変換パラメータ取得手段と、
前記１または複数の属性のそれぞれについて、前記取得された登録変換パラメータに基づいて前記取得された属性値を変換し、前記変換された属性値のハッシュ値を含む登録データを生成する登録データ生成手段と、
前記ユーザの端末に前記登録変換パラメータを送信し、前記ユーザの端末に前記登録変換パラメータを格納させる送信手段と、をさらに含み、
前記登録データ生成手段により生成されるハッシュ値を含む登録データは、前記ストレージに格納される、
ユーザ情報管理システム。
【請求項５】
請求項１に記載のユーザ情報管理システムにおいて、
前記ユーザの端末が格納するトークン情報を新トークン情報に更新させるトークン更新手段をさらに含み、
前記登録手段は、前記新トークン情報に基づいて生成されたハッシュ値であるトークンハッシュをさらに含む登録データを前記ストレージに格納し、
前記ユーザの端末から前記トークン情報を取得するトークン取得手段と、
前記取得されたトークンに基づくハッシュ値であるトークンハッシュを生成し、当該生成されたトークンハッシュと、前記ストレージに格納される登録データに含まれるトークンハッシュとが異なる場合に、前記ユーザにトークン情報が異なることを示す警告情報を出力するトークン認証手段と、をさらに含む、
ユーザ情報管理システム。
【請求項６】
複数の端末のうちいずれかから、ネットワークを介して接続されるストレージに格納される複数の登録データのうちいずれかを特定する特定情報であって、ユーザの複数の属性のうち１または複数のそれぞれについての過去の属性値に基づくハッシュ値を含む登録データを特定する特定情報を取得するステップと、
前記複数の端末のうち前記いずれかから、前記ユーザの複数の属性のうち１または複数のそれぞれについての属性値を取得するステップと、
前記１または複数の属性のそれぞれについて、前記取得された属性値に基づくハッシュ値を生成するステップと、
前記特定情報に基づいて、前記ストレージから登録データを取得するステップと、
前記取得された登録データにハッシュ値が含まれる属性でありかつ前記属性値が取得された属性について、前記生成されたハッシュ値と、前記取得されたハッシュ値とを比較するステップと、
前記比較の結果に基づいて、前記比較された属性の属性値に変更があったか否かを示す情報を出力するステップと、
前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記取得された属性値に基づくハッシュ値を含む登録データを生成するステップと、
前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記取得された属性値に基づくハッシュ値を含む登録データを、前記特定情報により特定される登録データに関連付けて前記ストレージに格納するステップと、
を含み、
前記登録データを生成するステップでは、前記ユーザの複数の属性のうち住所または勤務先に関する属性について取得された属性値の一部を抽出し、前記抽出された属性値に基づくハッシュ値を生成する、
を含むユーザ情報管理方法。
【請求項７】
複数の端末のうちいずれかから、ネットワークを介して接続されるストレージに格納される複数の登録データのうちいずれかを特定する特定情報であって、ユーザの複数の属性のうち１または複数のそれぞれについての過去の属性値に基づくハッシュ値を含む登録データを特定する特定情報を取得する特定手段、
前記複数の端末のうち前記いずれかから、前記ユーザの複数の属性のうち１または複数のそれぞれについての属性値を取得する属性取得手段、
前記１または複数の属性のそれぞれについて、前記取得された属性値に基づくハッシュ値を生成するハッシュ生成手段、
前記特定情報に基づいて、前記ストレージから登録データを取得する登録データ取得手段、
前記取得された登録データにハッシュ値が含まれる属性でありかつ前記属性取得手段により属性値が取得された属性について、前記生成されたハッシュ値と、前記取得されたハッシュ値とを比較する比較手段、
前記比較の結果に基づいて、前記比較された属性の属性値に変更があったか否かを示す情報を出力する変更出力手段、
前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記属性取得手段により取得された属性値に基づくハッシュ値を含む登録データを生成する登録データ生成手段、および、
前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記属性取得手段により取得された属性値に基づくハッシュ値を含む登録データを、前記特定情報により特定される登録データに関連付けて前記ストレージに格納する登録手段、
としてコンピュータを機能させ、
前記登録データ生成手段は、前記ユーザの複数の属性のうち住所または勤務先に関する属性について取得された属性値の一部を抽出し、前記抽出された属性値に基づくハッシュ値を生成する、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はユーザ情報管理システム、ユーザ情報管理方法およびプログラムに関する。
【背景技術】
【０００２】
様々な企業において、登録されたユーザのユーザ情報を管理している。【０００３】
特許文献１には、第１のコンピュータが、保管されたユーザ情報（個人情報）を第２のコンピュータが復号可能なように暗号化し、第２のコンピュータが分散型台帳データベースを介して暗号化されたユーザ情報を取得することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】国際公開第２０１８／０４３５９９号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ユーザの転居や転職などによりユーザ情報が変化することがある。現状ではコストなどの事情から企業が定期的にユーザ情報の変化を確認することは難しく、登録されたユーザからの申告以外の方法でユーザ情報の変化を知ることができなかった。複数の企業でユーザ情報を共有することも考えられるが、ユーザ情報の特性から、例えばユーザ本人の同意および同意書の保管が必要になるため、企業の負担が大きくなってしまう。【０００６】
本発明は上記課題を鑑みてなされたものであって、その目的は、ユーザ情報の変化をより容易に検出する技術を提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明にかかるユーザ情報管理システムは、複数の端末のうちいずれかから、ネットワークを介して接続されるストレージに格納される複数の登録データのうちいずれかを特定する特定情報であって、ユーザの複数の属性のうち１または複数のそれぞれについての過去の属性値に基づくハッシュ値を含む登録データを特定する特定情報を取得する特定手段と、前記複数の端末のうち前記いずれかから、前記ユーザの複数の属性のうち１または複数のそれぞれについての属性値を取得する属性取得手段と、前記１または複数の属性のそれぞれについて、前記取得された属性値に基づくハッシュ値を生成するハッシュ生成手段と、前記特定情報に基づいて、前記ストレージから登録データを取得する登録データ取得手段と、前記取得された登録データにハッシュ値が含まれる属性でありかつ前記属性取得手段により属性値が取得された属性について、前記生成されたハッシュ値と、前記取得されたハッシュ値とを比較する比較手段と、前記比較の結果に基づいて、前記比較された属性の属性値に変更があったか否かを示す情報を出力する変更出力手段と、を含む。【０００８】
また、本発明にかかるユーザ情報管理方法は、複数の端末のうちいずれかから、ネットワークを介して接続されるストレージに格納される複数の登録データのうちいずれかを特定する特定情報であって、ユーザの複数の属性のうち１または複数のそれぞれについての過去の属性値に基づくハッシュ値を含む登録データを特定する特定情報を取得するステップと、前記複数の端末のうち前記いずれかから、前記ユーザの複数の属性のうち１または複数のそれぞれについての属性値を取得するステップと、前記１または複数の属性のそれぞれについて、前記取得された属性値に基づくハッシュ値を生成するステップと、前記特定情報に基づいて、前記ストレージから登録データを取得するステップと、前記取得された登録データにハッシュ値が含まれる属性でありかつ前記属性値が取得された属性について、前記生成されたハッシュ値と、前記取得されたハッシュ値とを比較するステップと、前記比較の結果に基づいて、前記比較された属性の属性値に変更があったか否かを示す情報を出力するステップと、を含む。【０００９】
また、本発明にかかるプログラムは、複数の端末のうちいずれかから、ネットワークを介して接続されるストレージに格納される複数の登録データのうちいずれかを特定する特定情報であって、ユーザの複数の属性のうち１または複数のそれぞれについての過去の属性値に基づくハッシュ値を含む登録データを特定する特定情報を取得する特定手段、前記複数の端末のうち前記いずれかから、前記ユーザの複数の属性のうち１または複数のそれぞれについての属性値を取得する属性取得手段、前記１または複数の属性のそれぞれについて、前記取得された属性値に基づくハッシュ値を生成するハッシュ生成手段、前記特定情報に基づいて、前記ストレージから登録データを取得する登録データ取得手段、前記取得された登録データにハッシュ値が含まれる属性でありかつ前記属性取得手段により属性値が取得された属性について、前記生成されたハッシュ値と、前記取得されたハッシュ値とを比較する比較手段、および、前記比較の結果に基づいて、前記比較された属性の属性値に変更があったか否かを示す情報を出力する変更出力手段、としてコンピュータを機能させる。【００１０】
本発明によれば、ユーザ情報の変化をより容易に検出することができる。【００１１】
本発明の一態様では、ユーザ情報管理システムは、前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記属性取得手段により取得された属性値に基づくハッシュ値を含む登録データを、前記特定情報により特定される登録データに関連付けて前記ストレージに格納する登録手段をさらに含んでもよい。【００１２】
本発明の一態様では、ユーザ情報管理システムは、前記いずれかの端末から、前記ユーザの複数の属性のうち１または複数のそれぞれについて過去の属性値からハッシュ値を生成するための変換パラメータを取得するパラメータ取得手段をさらに含み、前記ハッシュ生成手段は、前記１または複数の属性のそれぞれについて、前記取得された変換パラメータに基づいて前記取得された属性値を変換し、前記変換された属性値のハッシュ値を生成してもよい。【００１３】
本発明の一態様では、前記変換パラメータは、前記ユーザの登録に関する時刻であり、前記ハッシュ生成手段は、前記取得された属性値に前記時刻を付加することにより前記属性値を変換してもよい。【００１４】
本発明の一態様では、ユーザ情報管理システムは、登録変換パラメータを取得する登録変換パラメータ取得手段と、前記１または複数の属性のそれぞれについて、前記取得された登録変換パラメータに基づいて前記取得された属性値を変換し、前記変換された属性値のハッシュ値を含む登録データを生成する登録データ生成手段と、前記ユーザの端末に前記登録変換パラメータを送信し、前記ユーザの端末に前記登録変換パラメータを格納させる送信手段と、をさらに含み、前記登録データ生成手段により生成されるハッシュ値を含む登録データは、前記ストレージに格納されてもよい。【００１５】
本発明の一態様では、ユーザ情報管理システムは、前記ユーザの端末が格納するトークン情報を新トークン情報に更新させるトークン更新手段をさらに含み、前記登録手段は、前記新トークン情報に基づいて生成されたハッシュ値であるトークンハッシュをさらに含む登録データを前記ストレージに格納し、ユーザ情報管理システムは、前記ユーザの端末から前記トークン情報を取得するトークン取得手段と、前記取得されたトークンに基づくハッシュ値であるトークンハッシュを生成し、当該生成されたトークンハッシュと、前記ストレージに格納される登録データに含まれるトークンハッシュとが異なる場合に、前記ユーザにトークン情報が異なることを示す警告情報を出力するトークン認証手段と、をさらに含んでよい。【００１６】
本発明の一態様では、ユーザ情報管理システムは、前記ユーザの複数の属性のうち前記１または複数のそれぞれについて前記属性取得手段により取得された属性値に基づくハッシュ値を含む登録データを生成する登録データ生成手段とさらに含み、前記登録データ生成手段は、前記ユーザの複数の属性のうち所定の属性について取得された属性値を所定のルールに従って変換し、前記変換された属性値に基づくハッシュ値を生成してもよい。【００１７】
本発明の一態様では、前記登録データ生成手段は、前記ユーザの複数の属性のうち日付に関する属性について取得された属性値を所定のフォーマットに変換してもよい。【００１８】
本発明の一態様では、前記登録データ生成手段は、前記ユーザの複数の属性のうち住所または勤務先に関する属性について取得された属性値の一部を抽出し、前記抽出された属性値に基づくハッシュ値を生成してもよい。
【図面の簡単な説明】
【００１９】
【図１】本発明の実施形態にかかる顧客管理システムと他のシステムとの関係を示す図である。
【図２】顧客管理システムを構成するサーバのハードウェア構成を示す図である。
【図３】顧客管理システムおよび端末が実現する機能を示すブロック図である。
【図４】組織による情報の取得および登録の一例を示す図である。
【図５】ユーザが初めて組織Ａに対して会員登録をする場合を説明する図である。
【図６】組織Ａの会員登録の際に登録される登録データの一例を示す図である。
【図７】ユーザへ渡されるデータの一例を示す図である。
【図８】ユーザが組織Ａに対して会員登録した後に組織Ｂに対して会員登録をする場合を説明する図である。
【図９】組織Ｂの会員登録の際に登録される登録データの一例を示す図である。
【図１０】ユーザへ渡されるデータの一例を示す図である。
【図１１】顧客管理システムが会員登録の際に実行する処理を示すフロー図である。
【図１２】顧客管理システムが会員登録の際に実行する処理を示すフロー図である。
【図１３】ユーザ情報の変更の検出にかかる処理を示すフロー図である。
【図１４】組織Ｂに会員登録後に組織Ｂを利用する場合を説明する図である。
【図１５】追加される登録データの一例を示す図である。
【図１６】ユーザへ渡されるデータの一例を示す図である。
【図１７】顧客管理システムが会員登録後の顧客の利用の際に実行する処理を示すフロー図である。
【図１８】顧客管理システムが会員登録後の顧客の利用の際に実行する処理を示すフロー図である。
【図１９】顧客データベースに格納されるデータの一例を示す図である。
【発明を実施するための形態】
【００２０】
以下では、本発明の実施形態を図面に基づいて説明する。同じ符号を付された構成に対しては、重複する説明を省略する。本実施形態では、複数の組織（例えば証券会社、病院、商店など）のそれぞれが顧客管理システムを有している。また複数の組織のそれぞれは身分証などを確認する窓口や部署を有し、その組織はその窓口等を介してユーザの本人確認をし、その本人確認の際に取得したユーザ情報を顧客管理システムの内に保管し管理している。ユーザ情報は、いわゆる個人情報を含んでよい。
【００２１】
図１は、本発明の実施形態にかかる顧客管理システムと他のシステムとの関係を示す図である。顧客管理システム１ａ，１ｂ，１ｃは、それぞれ互いに異なる組織が使用するものである。分散型台帳ノード２ａ，２ｂ，２ｃはそれぞれ顧客管理システム１ａ，１ｂ，１ｃに対応して設けられている。複数の端末３はユーザにより操作されるスマートフォンなどのコンピュータであってもよいし、組織に配置される据え置き型のコンピュータであってもよい。以下では、顧客管理システム１ａ，１ｂ，１ｃを総称して顧客管理システム１と記載する。図１には３つの顧客管理システム１が記載されているが、顧客管理システム１の数はいくつであってもよい。
【００２２】
分散型台帳ノード２ａ，２ｂ，２ｃは、それぞれ顧客管理システム１ａ，１ｂ，１ｃとネットワークを介して接続されている。分散型台帳ノード２ａ，２ｂ，２ｃを総称して分散型台帳ノード２と記載する。分散型台帳ノード２のそれぞれは、１または複数のサーバコンピュータにより構成されている。分散型台帳ノード２は、分散型台帳管理技術（ＤＬＴ）、いわゆるブロックチェーン技術を用いたストレージ（分散型台帳）を提供する。いずれかの分散型台帳ノード２に格納されるデータが変更されると、他の分散型台帳ノード２にもその変更が反映され、どの分散型台帳ノード２に格納されるデータは常に同期されている。分散型台帳ノード２の分散型台帳には、複数の登録データが格納される。登録データの詳細については後述する。分散型台帳ノード２の数は１以上のいくつであってもよく、複数の顧客管理システム１が１つの分散型台帳ノード２に接続されてもよい。
【００２３】
図２は、顧客管理システム１のハードウェア構成の一例を示す図であり、顧客管理システム１が一つのサーバコンピュータにより構成される場合の例である。顧客管理システム１は、プロセッサ１１、記憶部１２、通信部１３、入出力部１４を含む。顧客管理システム１は複数のサーバコンピュータにより実現されてもよい。
【００２４】
プロセッサ１１は、記憶部１２に格納されているプログラムに従って動作する。またプロセッサ１１は通信部１３、入出力部１４を制御する。なお、上記プログラムは、インターネット等を介して提供されるものであってもよいし、フラッシュメモリやＤＶＤ−ＲＯＭ等のコンピュータで読み取り可能な記憶媒体に格納されて提供されるものであってもよい。
【００２５】
記憶部１２は、ＲＡＭおよびフラッシュメモリ等のメモリ素子とハードディスクドライブのような外部記憶装置とによって構成されている。記憶部１２は、上記プログラムを格納する。また、記憶部１２は、各部から入力される情報や演算結果を格納する。
【００２６】
通信部１３は、他の装置と通信する機能を実現するものであり、例えば有線ＬＡＮの集積回路などにより構成されている。通信部１３は、プロセッサ１１の制御に基づいて、他の装置から受信した情報をプロセッサ１１や記憶部１２に入力し、他の装置に情報を送信する。
【００２７】
入出力部１４は、表示出力デバイスをコントロールするビデオコントローラや、入力デバイスからのデータを取得するコントローラなどにより構成される。入力デバイスとしては、キーボード、マウス、タッチパネルなどがある。入出力部１４は、プロセッサ１１の制御に基づいて、表示出力デバイスに表示データを出力し、入力デバイスをユーザが操作することにより入力されるデータを取得する。表示出力デバイスは例えば外部に接続されるディスプレイ装置である。
【００２８】
端末３と分散型台帳ノード２を構成するサーバコンピュータとは、顧客管理システム１と同様に、プロセッサ１１、記憶部１２、通信部１３、入出力部１４を含む。
【００２９】
図３は、顧客管理システム１および端末３が実現する機能を示すブロック図である。端末３は、機能的に、ユーザ情報送信部５１、既登録情報送信部５２、情報格納部５３を含む。これらの機能は、端末３に含まれるプロセッサ１１が記憶部１２に格納されるプログラムを実行し、通信部１３などを制御することにより実現される。
【００３０】
ユーザ情報送信部５１は、顧客管理システム１へ向けて、ユーザ情報を送信する。ユーザ情報は、会員登録に必要な情報であり、例えば健康保険証や身分証明書に記載された氏名、住所、職業のような１または複数の属性のそれぞれについての属性値を含む。属性値の設定が可能な複数の属性は予め定められており、ユーザ情報には、その複数の属性のうち１または複数についての属性値が格納されている。ユーザ情報に、身分証明書に記載されておらずかつユーザが入力したユーザ情報（ユーザの属性の属性値）が含まれていてもよい。
【００３１】
既登録情報送信部５２は、顧客管理システム１へ向けて、すでに登録されている組織についての会員保持情報および最新のトークンを送信する。会員保持情報には、分散型台帳ノード２に登録されているデータを特定するための特定データと、変換パラメータとして用いられる情報が含まれている。会員保持情報、特定データ、変換パラメータおよびトークンの詳細は後述する。
【００３２】
情報格納部５３は、顧客管理システム１からいずれかの組織に登録されたユーザについての会員保持情報およびトークンを受信し、受信された会員保持情報および最新のトークンを記憶部１２に格納する。
【００３３】
顧客管理システム１は、機能的に、ユーザ情報取得部６１、既登録情報取得部６３、認証部６８、登録変換パラメータ取得部７１、新トークン発行部７２、登録データ生成部７３、登録部７４、端末送信部７５、比較ハッシュ生成部８１、登録データ取得部８２、比較部８３、変更通知部８４、顧客データベース９１を含む。また既登録情報取得部６３は、変換パラメータ取得部６４、特定部６５、トークン取得部６６を含む。これらの機能は、顧客管理システム１に含まれるプロセッサ１１が記憶部１２に格納されるプログラムを実行し、通信部１３を制御しつつ計算結果等を記憶部１２に格納することにより実現される。
【００３４】
ユーザ情報取得部６１は、端末３のユーザ情報送信部５１から送信される、ユーザ情報を取得する。既登録情報取得部６２は、既登録情報送信部５２から送信される会員保持情報および最新のトークンを受信する。より具体的には、変換パラメータ取得部６４は会員保持情報に含まれる変換パラメータを取得し、特定部６５は会員保持情報に含まれる特定データを取得する。またトークン取得部６６は、端末３から送信されるトークンを取得する。
【００３５】
認証部６８は、トークン取得部６６が取得したトークンと、分散型台帳ノード２のストレージに格納される最新のトークンのハッシュ値とに基づいて、ユーザを認証する。
【００３６】
顧客データベース９１は、主に記憶部１２により実現され、ユーザ情報取得部６１が取得したユーザ情報と、特定データを示す情報と、を格納する。
【００３７】
登録変換パラメータ取得部７１は、ユーザ情報から登録データに含まれるハッシュ値を生成する際に用いられる属性値の変換パラメータを取得する。登録データは分散型台帳ノード２に登録されるデータである。新トークン発行部７２は、新たなトークンを発行する。登録データ生成部７３は、登録データを生成する。登録データは、ユーザ情報に含まれる１または複数の属性の属性値に基づくハッシュ値、特定データ、新たなトークンのハッシュ値を含む。登録部７４は、生成された登録データを分散型台帳ノード２に登録する。端末送信部７５は、会員保持情報を端末３へ送信し、情報格納部５３に格納させる。また端末送信部７５は新たなトークンを端末３へ送信し、情報格納部５３に含まれるトークンを更新させる。
【００３８】
次に、顧客管理システム１の理解を容易にするために、顧客管理システム１を用いた顧客情報の管理の背景について説明する。図４は、組織による情報の取得および登録の一例を示す図である。ここでは、各組織が顧客の本人確認を行い、その各組織の顧客管理システム１がその本人確認の際に取得したユーザ情報を分散型台帳ノード２が提供する分散型台帳に登録するものとする。この本人確認は、いわゆるＫＹＣ(Know Your Customer)の要件にしたがって行われるものを含んでいる。
【００３９】
組織Ａはオンライン証券を提供する会社であり、会員登録の際に実在の部署が身分証明書の確認と郵送による住所の確認とを行うことにより本人確認をし、本人確認がされたユーザの属性である、氏名、生年月日、住所、職業に関する情報（具体的には氏名等の属性値に基づくハッシュ値）を分散型台帳へ登録する。組織Ｂは医療機関であり、会員登録の一種である患者登録の際に医療保険証を確認するだけでなく、ユーザが医療機関を利用する際に最大で月に１回の頻度で医療保険証を確認する。分散型台帳には、氏名、職業、生年月日、および生存の有無に関する情報（具体的には氏名等の属性値に基づくハッシュ値）が登録される。組織Ｃは小売店舗または飲食店であり、店舗利用の際に会員カードを確認し、生存の有無に関する情報を分散型台帳に登録する。組織Ｄは通信会社であり、請求書を郵送し、それに対する支払いがあった場合に、そのユーザの氏名および住所は実在するとして分散型台帳へそれらに関する情報を登録する。
【００４０】
次に、顧客管理システム１の処理の理解を容易にするために、その顧客管理システム１にかかわる通信等の概要について説明する。図５は、ユーザが初めて組織Ａに対して会員登録をする場合を説明する図である。ユーザと組織Ａとの間でやり取りされる情報（および本人確認に関連する書類等）、顧客管理システム１の処理の概要、および分散型台帳とのやりとりの概要について説明する。図５の例では、会員登録の際はじめに、（１）ユーザはオンラインで会員登録を依頼するとともに、本人確認のための本人確認書類を送付する。（２）組織Ａが本人確認をすると、（３）顧客管理システム１はユーザの端末３から入力される、または、顧客管理システム１内の端末により本人確認情報から抽出されるユーザ情報を取得し、トークンを発行するとともに分散型台帳へ登録する登録データを生成する。トークンは、自組織および他組織を利用する際に認証に用いられる。
【００４１】
図６は、組織Ａの会員登録の際に登録される登録データの一例を示す図である。登録データは、会員情報ハッシュ、会員情報署名、署名公開鍵、本人確認項目、トークンのハッシュ、トークンの署名、トークン発行時刻を含む。図６の内容欄において、関数hは引数からハッシュ関数により生成されるハッシュ値を示し、関数sigは引数とその組織の秘密鍵とから生成される電子署名を示す。署名公開鍵は、その電子署名に用いられた秘密鍵のペアとなる公開鍵であり、登録データには署名公開鍵としてその公開鍵を含む電子証明書が含まれてよい。
【００４２】
会員情報ハッシュは、ユーザの１または複数の属性のそれぞれの属性値についてのハッシュ値を含み、具体的には、本人確認された１または複数の属性のそれぞれの属性値に変換パラメータを追加することで生成されるデータのハッシュ値を含む。また、会員情報ハッシュは、会員を特定する情報、かつ、登録データを特定する情報として組織ＩＤおよび会員ＩＤに基づくハッシュ値も含む。
【００４３】
登録データが生成されると、顧客管理システム１は（４）登録データを分散型台帳ノード２の分散型台帳に登録し、さらに（５）会員保持情報およびトークンをユーザの端末３へ送信し、端末３の情報格納部５３へ格納させる。
【００４４】
図７は、ユーザへ渡されるデータの一例を示す図である。顧客管理システム１は、ユーザの端末３へ、会員保持情報として組織ＩＤのハッシュ、会員ＩＤのハッシュ、会員情報の全体に対するハッシュ、会員登録時刻を送信する。また顧客管理システム１は、ユーザの端末３へ、トークンとトークン発行時刻も送信する。
【００４５】
組織ＩＤのハッシュおよび会員ＩＤのハッシュは、分散型台帳に登録される登録データを特定する特定データでもある。会員登録時刻とは、ユーザが組織Ａの会員として組織Ａの顧客管理システム１に登録される時刻をいう。また、会員登録時刻は、顧客管理システム１が会員情報の属性値に基づくハッシュを生成する際に、そのデータに追加される変換パラメータでもある。会員情報の属性値に基づくハッシュは、変換パラメータが追加されたデータのハッシュ値である。変換パラメータは分散型台帳には格納されていないので、変換パラメータを第三者が取得することは難しく、いわゆる辞書攻撃によりハッシュ値から実際の値を解読されることを防ぐことができる。また、顧客管理システム１は会員情報の全体に対するハッシュが、登録データの会員情報署名と整合するか確認することにより、端末３の情報が適正であるか確認する。
【００４６】
図８は、ユーザが組織Ａに対して会員登録した後に組織Ｂに対して会員登録をする場合を説明する図であり、図５に対応する図である。図８の例では、会員登録の際はじめに、（１）ユーザは窓口で会員登録を依頼するとともに、本人確認のための本人確認書類を提示し、さらに（２）他組織（組織Ａ）の会員保持情報およびトークンを送信する。（３）組織Ｂが本人確認をすると、顧客管理システム１は（４）他組織の会員保持情報に含まれる特定データを取得し、その特定データに基づいて分散型台帳を検索し、（５）他組織の登録データを取得する。顧客管理システム１は（６）他組織の最新の登録データに含まれるトークンのハッシュＴＳを取得し、ユーザから入力されたトークンを認証し、さらに（７）ユーザから入力される会員保持情報が適正であるか確認する。認証および確認がされると、顧客管理システム１は（８）トークンを発行するとともに分散型台帳へ登録する登録データを生成する。顧客管理システム１は（９）登録データを分散型台帳ノード２の分散型台帳に、他組織の登録データに関連付けて登録し、さらに（１０）会員保持情報およびトークンをユーザの端末３へ送信し、端末３の情報格納部５３へ格納させる。
【００４７】
図９は、組織Ｂの会員登録の際に登録される登録データの一例を示す図であり、図１０はユーザへ渡されるデータの一例を示す図である。図６および７の例との大きな違いは、組織Ａと組織Ｂとで会員情報ハッシュに格納されるユーザの属性が異なる、より具体的には住所に基づくハッシュがない点である。また、トークンおよびそのハッシュは図６，７の例より新しく、変換パラメータは組織Ｂについての会員登録時刻であり、組織Ａについての変換パラメータとは値が異なっている。
【００４８】
次に、これまでに説明した情報のやり取りを実現する処理の詳細について説明する。図１１，１２は、顧客管理システム１が会員登録の際に実行する処理を示すフロー図である。はじめに、ユーザ情報取得部６１は、端末３から送信されたユーザ情報を取得する（ステップＳ２０１）。ユーザ情報は、例えば、氏名や住所、職業である。取得されるユーザ情報の項目は、組織に応じて異なってよい。また、ユーザ情報取得部６１は、ユーザ情報をそのユーザを識別する会員ＩＤと関連付けて顧客データベース９１に格納する。
【００４９】
図１９は顧客データベース９１に格納されるデータの一例を示す図である。図１９は、組織Ｂに登録される１つのユーザについて顧客データベース９１に格納されるデータを示している。格納されるユーザのデータは、会員ＩＤと、氏名、職業などのユーザ情報と、会員登録時刻と、他組織のそれぞれに関する情報とを含む。他組織のそれぞれに関する情報は、組織ＩＤに基づくハッシュ（図１９の「他組織１組織ＩＤ」参照）と、他組織におけるユーザの会員ＩＤに基づくハッシュ（図１９の「他組織１会員ＩＤ」参照）と、他組織における変換パラメータ（図１９の「他組織１変換パラメータ」参照）とを含む。他組織の組織ＩＤに基づくハッシュと、他組織におけるユーザの会員ＩＤに基づくハッシュとは、特定データを構成する。また、顧客データベース９１に格納される会員ＩＤは、自組織の登録データを特定する特定データを示す情報でもある。会員ＩＤから、会員ＩＤに基づくハッシュ値と自組織の組織ＩＤに基づくハッシュ値とからなる特定データを生成することができるからである。
【００５０】
そして、既登録情報取得部６３は、他組織について会員登録されているか否かを判定する（ステップＳ２０２）。より具体的には、既登録情報取得部６３は、端末３の既登録情報送信部５２から取得した、他組織の会員情報の有無を示す情報に基づいて、このユーザが他組織について会員登録されているか否かを判定する。他組織の会員情報の有無を示す情報は、単に既登録情報送信部５２から会員保持情報を受信したか否かを示す情報であってもよい。他組織について会員登録がされた場合には（ステップＳ２０２のＹ）、既登録情報取得部６３および認証部６８はステップＳ２０３からステップＳ２１０の処理を実行する。このケースは図８の例に相当する。他組織について会員登録がされていない場合には（ステップＳ２０２のＮ）、ステップＳ２０３からステップＳ２１０の処理はスキップされる。こちらの例は図５の例に相当する。
【００５１】
ステップＳ２０３では、既登録情報取得部６３は端末３の既登録情報送信部５２から、ユーザが他組織に会員登録をした際に受け取った会員保持情報と最新のトークンとを含むデータを取得する。既登録情報送信部５２が１つの他組織について送信する会員保持情報は、図７に示されるデータからトークンおよびトークン発行時刻を除いたものであり、既登録情報送信部５２は各組織の情報とは別に最新のトークンを送信する。変換パラメータ取得部６４は、取得されたデータから変換パラメータ（具体的には会員登録時刻）を取得する。特定部６５は、取得されたデータから特定データ（具体的には組織ＩＤハッシュおよび会員ＩＤハッシュ）を取得する。トークン取得部６６は、取得されたデータからトークンを取得する。
【００５２】
次に、認証部６８は、分散型台帳ノード２の分散型台帳（ストレージ）に格納される、取得された特定データにより特定されるこのユーザに関する他組織の登録データを取得し、さらにその登録データまたは関連付けられた登録データから最新のトークンのハッシュＴＳを取得する（ステップＳ２０４）。認証部６８は、端末３から送信されたデータに含まれる最新のトークンのハッシュＴＵを生成する（ステップＳ２０５）。認証部６８は、ハッシュＴＳとハッシュＴＵとを比較する（ステップＳ２０６）。ハッシュＴＳとハッシュＴＵとが異なる場合は（ステップＳ２０６のＮ）、認証部６８は端末３のトークンは不正であるので、認証失敗のメッセージを端末３に向けて通知する（ステップＳ２０７）。
【００５３】
一方、ハッシュＴＳとハッシュＴＵとが同じ場合は（ステップＳ２０６のＮ）、認証部６８は端末３から送信された会員情報全体ハッシュが適正であるか確認する。より具体的には、認証部６８は、他組織の登録データから会員情報署名を取得する（ステップＳ２０８）。認証部６８は他組織の会員情報署名を用いて、その他組織について端末３から受け取った会員保持情報（具体的には会員情報全体ハッシュ）を検証する（ステップＳ２０９）。電子署名に基づく検証については、改ざんやなりすましを防ぐ技術として公知であるので説明を省略する。検証により会員保持情報が不正であると判断された場合には（ステップＳ２１０のＮ）、認証部６８は認証失敗のメッセージを通知する（ステップＳ２０７）。
【００５４】
他組織の会員登録がされていないと判定された場合（ステップＳ２０６のＮ）、または、電子署名により会員保持情報が正しいと判断された場合（ステップＳ２１０のＹ）には、顧客管理システム１は分散型台帳に新たな登録データを登録し、さらに端末３に会員保持情報などを格納させるために以下の処理を実行する。
【００５５】
はじめに、登録変換パラメータ取得部７１は、例えば顧客データベース９１から、登録用の変換パラメータ（具体的には自組織についてのユーザの会員登録時刻）を取得する（ステップＳ２１２）。新トークン発行部７２は新たなトークンを発行する（ステップＳ２１３）。登録データ生成部７３は、ユーザ情報に含まれる１または複数の属性のそれぞれの属性値に対して、登録用の変換パラメータを追加し、またその１または複数の属性のそれぞれについて、登録用の変換パラメータが追加された属性値のハッシュＲを生成し、登録データ生成部７３は、特定データを取得する（ステップＳ２１４）。登録データ生成部７３は、組織ＩＤと会員ＩＤについて同様の手法でハッシュを生成することにより特定データを取得する。なお、ハッシュＲおよび特定データは登録データの会員情報ハッシュを構成する。なお、顧客管理システム１の登録データ生成部７３が特定データを生成する代わりに、端末３が顧客管理システム１から特定データの生成に必要な情報（具体的には組織ＩＤおよび会員ＩＤ）を取得し、端末３がそれらに基づくハッシュを生成し、情報格納部５３に格納してもよい。
【００５６】
次に、登録データ生成部７３は、ユーザ情報に含まれる１または複数の属性のそれぞれについてのハッシュＲからなる会員情報ハッシュと、特定データと、新たなトークンのハッシュＴＮと、を含む登録データを生成する（ステップＳ２１５）。図６，９からわかるように、登録データ生成部７３により生成される登録データには、上記のものに加え、会員情報全体ハッシュの電子署名である会員情報署名と、署名公開鍵と、本人確認項目と、トークンのハッシュＴＮの電子署名とトークンの発行時刻とが含まれている。会員情報全体ハッシュは、会員情報ハッシュに含まれる１または複数のハッシュＲおよび特定データを連結したデータのハッシュ値である。
【００５７】
ここで、登録データ生成部７３は、ユーザ情報に含まれる１または複数の属性のそれぞれのうち予め定められた属性について、予め定められた手順にしたがってその属性値を加工し、加工された属性値に基づいてハッシュＲを生成してもよい。例えば、登録データ生成部７３は、日付に関する属性について、取得された属性値を所定のフォーマットに変換し、変換された属性値に基づいてハッシュＲを生成してもよい。また、登録データ生成部７３は、住所に関する属性について取得された属性値のうち、郵便番号や地方自治体名などのより広範な範囲を示す部分を抽出し、前記抽出された部分に基づくハッシュＲを生成してもよいし、勤務先に関する属性について取得された属性値から、株式会社などの定型的な記載を取り除いた文字列を取得し、その文字列に基づくハッシュＲを生成してもよい。
【００５８】
登録データが生成されると、登録部７４は、分散型台帳に登録された他組織の登録データ（この登録データは特定部６５が取得した特定データに基づいて特定される）に関連付けて、生成された登録データを分散型台帳ノード２の分散型台帳に登録する（ステップＳ２１６）。なお、他組織の登録データが存在しない場合には、登録部７４は単に生成された登録データを分散型台帳ノード２の分散型台帳に登録する（ステップＳ２１６）。
【００５９】
そして、端末送信部７５は、ユーザ情報に含まれる１または複数の属性のそれぞれについてのハッシュＲと、特定データと、登録用変換パラメータとを含むデータをユーザの端末３へ送信し、そのデータを情報格納部５３に格納させる（ステップＳ２１７）。また端末送信部７５は生成された新たなトークンを端末３へ送信し、その新たなトークンを端末３の情報格納部５３に格納させる（ステップＳ２１８）。そして、会員登録にかかる処理が終了する。
【００６０】
これまでに説明した会員登録の処理により、分散型台帳にはあるユーザについて登録される複数の組織についての登録データが互いに関連付けられ、しかも、その登録データには、顧客のユーザ情報に基づくハッシュが含まれている。顧客管理システム１がユーザから取得した複数の属性の属性値と、登録データに含まれるハッシュと、から、ユーザの住所などの属性が変更されたか否かをより簡易かつ確実に認識することが可能である。以下ではその手法について説明する。
【００６１】
図１３は、ユーザ情報の変更の検出にかかる処理を示すフロー図である。図１３に示される処理は、会員登録が行われる際に実行されてもよいし、予め定められた期間ごとに（例えば月に１回）実行されてもよい。
【００６２】
はじめに、比較ハッシュ生成部８１は、ユーザから入力されユーザ情報取得部６１が取得したユーザ情報を取得する（ステップＳ４０１）。比較ハッシュ生成部８１は、ユーザ情報取得部６１が取得し、顧客管理システム１内の顧客データベース９１に格納したユーザ情報を取得してよい。次に、比較ハッシュ生成部８１は、変換パラメータ取得部６４により取得された変換パラメータを取得する（ステップＳ４０２）。この変換パラメータに関して、予め変換パラメータ取得部６４が、会員登録の際にユーザの端末３から送信される、ユーザが他組織に会員登録をした際に受け取った会員保持情報に含まれる変換パラメータと他組織の組織ＩＤに基づくハッシュと、他組織の会員ＩＤに基づくハッシュとを、顧客管理システム１の顧客データベース９１に、ユーザと関連付けて格納してよい（図１９参照）。この場合、比較ハッシュ生成部８１は、顧客データベース９１からユーザに関連付けられた変換パラメータおよび組織ＩＤを取得する。なお、比較ハッシュ生成部８１は、顧客データベース９１から他組織の組織ＩＤおよび他組織の会員ＩＤ、つまり特定データそのものを取得してもよい。
【００６３】
また、登録データ取得部８２は、分散型台帳ノード２の分散型台帳から、ユーザについて登録された登録データを取得する（ステップＳ４０３）。登録データ取得部８２は、特定部６５が取得した他組織の特定データに基づいて他組織の登録データを取得してよい。登録データ取得部８２は、自組織の登録データが存在する場合には、その登録データを特定する特定データに基づいて、その登録データに関連付けられた他組織の登録データを取得してもよい。また取得される登録データの数は１または複数であってよいし、登録データが登録された時刻（トークン発行時刻で代用できる）が顧客管理システム１において内部の顧客データベース９１にこのユーザの情報を登録した時刻より後である場合に限ってその登録データが取得されてもよい。なお、登録データの関連付けには特定部６５により取得される特定データが用いられているため、他組織の登録データの取得には、その特定部６５により取得される特定データが重要な役割を果たしている。
【００６４】
１または複数の登録データが取得されると、比較部８３は、取得された登録データのうち、１番目の登録データを選択する（ステップＳ４０４）。そして、比較ハッシュ生成部８１は、複数の属性のうち、ステップＳ４０１で取得されたユーザ情報に含まれる属性であり、かつ、選択された登録データの会員情報ハッシュにハッシュＣＳが含まれる属性を検出する（ステップＳ４０５）。比較ハッシュ生成部８１は、その検出された属性について、ユーザ情報の属性値と変換パラメータとに基づくハッシュＣＵを生成する（ステップＳ４０６）。もちろんハッシュＣＵはハッシュＣＳを生成するのと同じ手法により生成される。またハッシュＣＵの生成に用いられる変換パラメータは、ステップＳ４０２で取得された変換パラメータのうち、選択された登録データに含まれる組織ＩＤに基づくハッシュまたは特定データと関連付けて顧客データベース９１に格納されているものである。
【００６５】
ハッシュＣＵが生成されると、比較部８３は、検出された属性のそれぞれについて、登録データに含まれるハッシュＣＳと、ハッシュＣＵとを比較する（ステップＳ４０７）。比較部８３は、ハッシュＣＳとハッシュＣＵとが同一でない属性がある場合には、その属性を顧客管理システム１のオペレータに向けて通知（出力）する（ステップＳ４０８）。そして、まだ選択されていない他組織の登録データがある場合には（ステップＳ４０９のＹ）、比較部８３は次の登録データを選択し（ステップＳ４１０）、ステップＳ４０５以降の処理を繰り返させる。すべての登録データについて処理がされた場合には（ステップＳ４０９のＮ）、図１３に示す処理は終了する。
【００６６】
このように、分散型台帳にハッシュが登録され、実際の値がわからなくても、顧客管理システム１に格納される情報から変化があるか否かを検出することができる。
【００６７】
また、外部のストレージにはユーザ情報に基づくハッシュ値が格納され、ユーザ情報そのものは格納されない。これにより、ユーザ情報そのものを複数の組織で共有する場合に比べ、外部とのデータのやりとりの際に情報漏洩防止のために複雑なプロトコルに従ったデータの暗号化等を削減できる。つまり、本実施形態では、簡素な処理でセキュリティを確保できる。これにより、顧客管理システム１を構成するサーバの負荷を軽減することもできる。
【００６８】
ここで、会員登録の後のタイミングにおいても、ユーザの属性の情報が得られた場合にも、顧客管理システム１は登録データおよび端末３に格納されるデータを変更してよい。
【００６９】
図１４は、組織Ｂに会員登録後に組織Ｂを利用する場合を説明する図であり、図８に対応する図である。図１４は、例えば医療機関において医療保険証が確認される場合に顧客管理システム１とユーザおよび分散型台帳ノード２とのやり取りを示している。図１４に示されるやりとりは、組織の窓口などにおいてユーザの情報が確認された場合に行われる。図１４に示されるやり取りは、ユーザ情報に変更がない場合にも行われる。
【００７０】
図１４の例では、はじめに、（１）ユーザの端末３は自組織（組織Ｂ）の会員保持情報およびトークンを送信し、また（２）医療保険証などの本人確認書類を提示する。さらに（３）組織Ｂが本人確認をすると、顧客管理システム１は（４）分散型台帳から最新の登録データおよび自組織の登録データを検索し、（５）最新の登録データおよび自組織の登録データを取得する。顧客管理システム１は（６）最新の登録データに含まれるトークンのハッシュＴＳを取得し、ユーザから入力されたトークンを認証し、さらに（７）端末３から送信された会員保持情報が適正であるか確認する。認証および確認がされると、顧客管理システム１は（８）トークンを発行するとともに分散型台帳へ追加する追加登録データを生成する。顧客管理システム１は（９）分散型台帳ノード２の分散型台帳に、自組織の登録データに追加登録データを追加し、さらに（１０）顧客管理システム１はトークンをユーザの端末３へ送信し、端末３の情報格納部５３に格納されるトークンを更新させる。ここで、ユーザ情報の変更があった場合には、顧客管理システム１は、変更に伴い変更された会員保持情報もユーザの端末３へ送信し、端末３の情報格納部５３へ格納させる。
【００７１】
図１５は、追加される登録データの一例を示す図であり、図１６はユーザへ渡されるデータの一例を示す図である。図１５および図１６は、本人確認によって、ユーザの情報に変更がない場合の例である。図１５では、番号１から７の項目は以前から存在し、番号８から１１の項目が登録データに追加されている。図１５の例の登録データには、会員情報ハッシュは追加されないが、本人確認がされたことを示す本人確認項目が追加され、さらに更新されるトークンのハッシュとそれに関連する情報が追加される。また、端末３へは、トークンおよびトークン発行時刻のみが送られる。
【００７２】
次に、図１５から１７について説明した情報のやり取りを実現する処理の詳細について説明する。図１７，１８は、顧客管理システム１が会員登録後の顧客の利用の際に実行する処理を示すフロー図である。
【００７３】
はじめに、ユーザ情報取得部６１は、端末３から送信された、ユーザ情報の変化に関する情報を取得する（ステップＳ３０１）。この情報は、例えば、ユーザ情報に含まれる属性の変更された属性値であるが、属性値の変化の有無が確認された属性を示す情報でもある。
【００７４】
次に、既登録情報取得部６３は、端末３の既登録情報送信部５２から送信される、ユーザの自組織の会員保持情報と最新のトークンとを含むデータを取得する（ステップＳ３０３）。変換パラメータ取得部６４は、送信されるデータから変換パラメータを取得してもよいし、顧客管理システム１の内部の顧客データベース９１にユーザと関連付けて格納される変換パラメータを取得してもよい。特定部６５は、取得されたデータから特定データを取得してもよいし、その顧客データベース９１に格納される組織ＩＤおよび会員ＩＤのような情報から特定データを取得してもよい。トークン取得部６６は、取得されたデータからトークンを取得する。
【００７５】
次に、認証部６８は、分散型台帳ノード２の分散型台帳（ストレージ）に格納される、このユーザについて登録された１または複数の登録データから最新のトークンのハッシュＴＳを取得する（ステップＳ３０４）。認証部６８は、端末３から送信されたデータに含まれる最新のトークンのハッシュＴＵを生成する（ステップＳ３０５）。認証部６８は、ハッシュＴＳとハッシュＴＵとを比較する（ステップＳ３０６）。ハッシュＴＳとハッシュＴＵとが異なる場合は（ステップＳ３０６のＮ）、認証部６８は端末３のトークンは不正であるので、認証失敗のメッセージを端末３に向けて通知する（ステップＳ３０７）。
【００７６】
一方、ハッシュＴＳとハッシュＴＵとが同じ場合は（ステップＳ３０６のＮ）、認証部６８は端末３から送信された会員情報全体ハッシュが適正であるか確認する。より具体的には、認証部６８は、自組織（または他組織）の登録データから会員情報署名を取得する（ステップＳ３０８）。そして、認証部６８は自組織（または他組織）の会員情報署名を用いて、その組織について端末３から受け取った会員保持情報（具体的には会員情報全体ハッシュ）を検証する（ステップＳ３０９）。検証により会員保持情報が不正であると判断された場合には（ステップＳ３１０のＮ）、認証部６８は認証失敗のメッセージを通知する（ステップＳ３０７）。
【００７７】
電子署名により会員保持情報が正しいと判断された場合（ステップＳ３１０のＹ）には、顧客管理システム１は分散型台帳のこのユーザについての自組織の登録データにデータを追加し、さらに端末３に新たなトークンなどを格納させるために以下の処理を実行する。
【００７８】
はじめに、新トークン発行部７２は新たなトークンを発行する（ステップＳ３１３）。登録データ生成部７３は、属性値が変更された属性が存在する場合には、変更された属性の属性値と、登録用の変換パラメータ（ここでは会員登録時刻）とに基づいて、ハッシュＲを生成する（ステップＳ３１４）。
【００７９】
次に、登録データ生成部７３は、変更の有無が確認された属性を示す情報（図１５の本人確認項目）と、変更された属性についてのハッシュＲと、ユーザ情報に含まれる１または複数の属性のそれぞれについてのハッシュＲと、新たなトークンのハッシュＴＮと、を含む追加登録データを生成する（ステップＳ３１５）。ハッシュＲは、属性値に変更があった場合のみ追加登録データに含まれる。また、属性値に変更があった場合には、追加登録データは、変更後の属性値を含む各属性の属性値に基づく会員情報全体ハッシュの電子署名である会員情報署名をさらに含む。
【００８０】
追加登録データが生成されると、登録部７４は、分散型台帳に登録された自組織の登録済の登録データに、生成された追加登録データを追加する（ステップＳ３１６）。
【００８１】
そして、端末送信部７５は、属性値が変更された場合には、ユーザ情報に含まれる１または複数の属性のそれぞれについてのハッシュＲに基づく会員情報全体ハッシュを含む会員保持情報をユーザの端末３へ送信し、そのデータを情報格納部５３に格納させる（ステップＳ３１７）。また端末送信部７５は発行された新たなトークンを端末３へ送信し、その新たなトークンを端末３の情報格納部５３に設定させる（ステップＳ３１８）。
【００８２】
会員登録以外でも生じる本人確認およびユーザ情報の変更に応じて分散型台帳の登録データを追加更新し、他組織が図１３に示される処理において追加登録データを最新の登録データとして登録データ中の古い項目と差し替えて処理することにより、ユーザの職業や住所などの属性の変化を他の組織が検出することがさらに容易になる。
【００８３】
また、本実施形態では端末３に設定されるトークンを、複数の組織で共通化し、さらに、会員登録以外の実窓口を利用するタイミングにもトークンの検証および更新を行っている。これにより、トークンの更新が比較的セキュアに、かつ、ある程度の頻度で行われる。これにより、何らかの原因でトークンが他人に渡ったとしても、ユーザが容易に気づくことができる。このトークンは、顧客情報の登録や変更のタイミングだけでなく、オンライン上のサービスのログインに用いられてもよい。この場合、トークンと異なる手法でユーザの認証が行われる際に、さらに図１７のステップＳ３０３からＳ３０７に相当する処理により、トークンによる認証が行われてよい。
【００８４】
本発明の実施形態は、これまでに説明したものには限られない。例えば、トークンの発行、トークンの分散型台帳および端末３への格納およびトークンの認証は行われなくてもよいし、会員保持情報の検証も必ずしも行われなくてよい。他の適切な認証手段によりセキュリティを確保することができればよい。
【００８５】
また、これまでの説明では分散型台帳を用いてユーザの情報の変更を検出しているが、かならずしも分散型台帳を用いなくてもよい。例えば、複数の分散型台帳ノード２の代わりに、統合されたデータベースサーバを設置し、複数の顧客管理システム１がそのデータベースに登録データを格納し、そのデータベースから登録データを読み出してもよい。
【符号の説明】
【００８６】
１，１ａ，１ｂ，１ｃ  顧客管理システム、２，２ａ，２ｂ  分散型台帳ノード、３  端末、１１  プロセッサ、１２  記憶部、１３  通信部、１４  入出力部、５１ユーザ情報送信部、５２  既登録情報送信部、５３  情報格納部、６１  ユーザ情報取得部、６２  既登録情報取得部、６３  既登録情報取得部、６４  変換パラメータ取得部、６５  特定部、６６  トークン取得部、６８  認証部、７１  登録変換パラメータ取得部、７２  新トークン発行部、７３  登録データ生成部、７４  登録部、７５  端末送信部、８１  比較ハッシュ生成部、８２  登録データ取得部、８３  比較部、８４  変更通知部、９１  顧客データベース。
【要約】
ユーザ情報の変化をより容易に検出する。
ユーザ情報管理システムは、端末から、ネットワーク上のストレージに格納される複数の登録データのうちいずれかを特定する特定情報であって、ユーザの複数の属性のうち１または複数のそれぞれについての過去の属性値に基づくハッシュ値を含む登録データを特定する特定情報を取得し（Ｓ２０３）、前記ユーザの複数の属性のうち１または複数のそれぞれについての属性値を取得し（Ｓ２０１）、前記１または複数の属性のそれぞれについて、前記取得された属性値に基づくハッシュ値を生成し（Ｓ４０６）、前記特定情報に基づいて、前記ストレージから登録データを取得し（Ｓ４０３）、前記取得された登録データにハッシュ値が含まれる属性でありかつ前記属性値が取得された属性について、前記生成されたハッシュ値と、前記取得されたハッシュ値とを比較する（Ｓ４０７）。【図１】
0006837186.tif 000002
【図２】
0006837186.tif 000003
【図３】
0006837186.tif 000004
【図４】
0006837186.tif 000005
【図５】
0006837186.tif 000006
【図６】
0006837186.tif 000007
【図７】
0006837186.tif 000008
【図８】
0006837186.tif 000009
【図９】
0006837186.tif 000010
【図１０】
0006837186.tif 000011
【図１１】
0006837186.tif 000012
【図１２】
0006837186.tif 000013
【図１３】
0006837186.tif 000014
【図１４】
0006837186.tif 000015
【図１５】
0006837186.tif 000016
【図１６】
0006837186.tif 000017
【図１７】
0006837186.tif 000018
【図１８】
0006837186.tif 000019
【図１９】
0006837186.tif 000020