(57)【要約】      （修正有）【課題】個人データを匿名で管理し、また、格納される個人データは暗号化しないで、個人情報を保護する。【解決手段】購買履歴を匿名ＩＤにより収集し、また匿名ＩＤを個人ＩＤに関連付ける操作には会員カードもしくは代理サーバの応答が必要となるようシステムを構成する。また個人データそれ自体は暗号化せずに個人ＩＤと匿名ＩＤをキーとして平文で格納し、匿名ＩＤはサーバ側で個人ＩＤと関連付けられるたびに更新されるようにする。このとき、あわせて蓄積されている購買履歴の収集キーになっている匿名ＩＤも更新する。【選択図】図２
2005301978.tif 000002
【特許請求の範囲】
【請求項１】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データと、前記個人データと照合することにより特定の個人を識別する事が可能な電子データとを有する個人データ管理サーバに対してクライアント装置が接続処理を開始した場合に、クライアント装置内の記憶領域に格納された特定の個人を識別するための個人ＩＤを参照する処理を実行し、
個人ＩＤキーとするハッシュ関数により、匿名ＩＤを少なくとも１個以上生成する処理を実行し、前記の匿名ＩＤと１個以上の個人データ利用許可条件からなる匿名管理用データを、前記個人データ管理サーバに送信する処理を実行し、
前記個人データ管理サーバから前記匿名管理用データの登録結果を受信する処理を実行し、登録に失敗した場合には前記の匿名ＩＤ生成処理と匿名管理用データ送信処理を再度実行し、登録に成功した場合には、前記匿名管理用データをクライアント内の記憶領域に格納する処理を実行することを特徴とする名寄せ制御方法。
【請求項２】
請求項１に記載の名寄せ制御方法において、上記の個人データ利用許可条件は、匿名ＩＤを送信したクライアント装置に対して個人データ管理サーバから個人ＩＤ取得要求を受けた場合に、前記記憶領域に格納された個人ＩＤを与えるか否かを制御する条件であることを特徴とする名寄せ制御方法。
【請求項３】
請求項２に記載の名寄せ制御方法において、クライアント装置が個人ＩＤを個人データ管理サーバに送信する前に、前記匿名ＩＤ生成処理により新規の匿名ＩＤを生成する処理を実行し、前記新規の匿名ＩＤを個人データ管理サーバに送信する処理を実行し、前記個人データ管理サーバによる新規匿名ＩＤの登録結果を確認する処理を実行することを特徴とする名寄せ制御方法。
【請求項４】
請求項１に記載の名寄せ制御方法において、前記個人データ管理サーバから受信したクライアント識別要求に対して、前記クライアント装置は、前記記憶領域に格納されている匿名ＩＤを送信することを特徴とする名寄せ制御方法。
【請求項５】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データと、前記個人データと照合することにより特定の個人を識別する事が可能な電子データとからなる個人データ管理サーバを用いた名寄せ制御方法において、特定の個人を識別するための個人ＩＤをキーとするハッシュ関数により生成された匿名ＩＤと、１個以上の個人データ利用許可条件からなる匿名管理用データをクライアント装置から１個以上受信する処理を実行し、前記の受信した匿名ＩＤが、サーバが格納している匿名ＩＤと衝突するか否かを判定し、判定結果をクライアント装置に送信する処理を実行し、衝突が無かった場合にはデータベースに管理用匿名データを格納する処理を実行し、前記の受信した匿名ＩＤと同じ個人ＩＤから生成されたデータベース中の匿名ＩＤを、前記の受信した匿名ＩＤで置換する処理を実行することを特徴とする名寄せ制御方法。
【請求項６】
請求項５に記載の名寄せ制御方法において、上記の個人データ利用許可条件は、上記の格納された匿名ＩＤを送信したクライアント装置に対して個人データ管理サーバが個人ＩＤ取得要求をしたときに、上記の格納された個人ＩＤを受信できるか否かを制御できる条件であることを特徴とする名寄せ制御方法。
【請求項７】
請求項５に記載の名寄せ制御方法において、上記のデータベースに管理用匿名データを格納する処理は、２個以上の管理用匿名データを受信した後に実行することを特徴とする名寄せ制御方法。
【請求項８】
請求項５、６、７のいずれかに記載の名寄せ制御方法において、クライアント装置から匿名ＩＤを受信し、次に個人データと照合することにより特定の個人を識別することが可能な電子データを匿名ＩＤをキーとして蓄積することを特徴とする名寄せ制御方法。
【請求項９】
請求項５、６、７、８のいずれかに記載の名寄せ制御方法において、各処理実行手段が耐タンパデバイスに格納されている事を特徴とする名寄せ制御方法。
【請求項１０】
請求項１又は５に記載の名寄せ制御方法において、上記の個人データ利用許可条件には、生成した匿名ＩＤの有効期間が含まれることを特徴とする名寄せ制御方法。
【請求項１１】
クライアント装置において、特定の個人を識別するための個人ＩＤを有する記憶部と、前記記憶部に格納された個人ＩＤを入力値とするハッシュ関数により、匿名ＩＤを１個以上生成して、前記記憶部に格納する演算処理部と、を有し、前記匿名ＩＤと個人データ管理サーバが保有する個人データに関する少なくとも１つの個人データ利用許可条件とを有する匿名管理用データを、前記記憶部に有し、  前記個人データ管理サーバからの個人ＩＤの送信要求がされた場合に、前記個人ＩＤを前記個人データ管理サーバに送信する前に、新規匿名ＩＤを前記演算処理部により生成して、前記個人データ管理サーバへ送信し、当該新規匿名ＩＤを前記記憶部に記憶させることを特徴とするクライアント装置。
【請求項１２】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データと、前記個人データと照合することにより特定の個人を識別する事が可能な電子データとを有する個人データ管理サーバに対してクライアント装置が接続処理を開始した場合に、クライアント装置内の記憶領域に格納された特定の個人を識別するための個人ＩＤをおよび匿名ＩＤを参照する処理を実行し、
前記個人ＩＤと匿名ＩＤの対応関係を表すＩＤ対応データを生成し、
個人ＩＤをキーとするハッシュ関数により、新たな匿名ＩＤを少なくとも１個以上生成する処理を実行し、前記の匿名ＩＤを前記個人データ管理サーバに送信する処理を実行し、
前記個人データ管理サーバから前記匿名ＩＤの登録結果を受信する処理を実行し、登録に失敗した場合には前記の匿名ＩＤ生成処理と匿名管理用データ送信処理を再度実行し、登録に成功した場合には、前記匿名ＩＤをクライアント内の記憶領域に格納し、
前記ＩＤ対応データを前記個人データ管理サーバに送信する処理を実行することを特徴とする名寄せ制御方法。
【請求項１３】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データと、前記個人データと照合することにより特定の個人を識別する事が可能な電子データとを有する個人データ管理サーバがクライアント装置との接続処理を開始した場合に、クライアント装置内にある特定の個人を識別するための個人ＩＤをキーとしてハッシュ関数により生成された匿名ＩＤをクライアント装置から１個以上受信する処理を実行し、
前記の受信した新たな匿名ＩＤが、サーバが格納している匿名ＩＤと衝突するか否かを判定し、判定結果を前記クライアント装置に送信する処理を実行し、
衝突が無かった場合にはデータベースに前記の受信した新たな匿名ＩＤを匿名ＩＤ更新履歴データベースに格納する処理を実行し、
個人ＩＤと更新前の匿名ＩＤのＩＤ対応データを前記クライアント装置から受信することを特徴とする名寄せ制御方法。
【請求項１４】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データと、前記個人データと照合することにより特定の個人を識別する事が可能な電子データとを有する個人データ管理サーバがクライアント装置との接続処理を開始した場合に、クライアント装置内にある特定の個人を識別するための個人ＩＤをキーとしてハッシュ関数により生成された新たな匿名ＩＤをクライアント装置から１個以上受信する処理を実行し、
前記の受信した新たな匿名ＩＤが、サーバが格納している匿名ＩＤと衝突するか否かを判定し、判定結果を前記クライアント装置に送信する処理を実行し、
衝突が無かった場合にはデータベースに前記の受信した匿名ＩＤを匿名ＩＤ更新履歴データベースに格納する処理を実行し、
個人ＩＤと更新前の匿名ＩＤのＩＤ対応データを前記クライアント装置から受信し、
前記個人データを格納するためのデータベース中に存在する前記の更新前の匿名ＩＤを、前記の新たな匿名ＩＤで置換する処理を実行することを特徴とする名寄せ制御方法。
【請求項１５】
請求項１３、１４に記載の名寄せ制御方法において、匿名ＩＤ更新履歴データベースに格納されるデータは、更新前の旧匿名ＩＤと更新後の新匿名ＩＤの組からなるレコードデータを有することを特徴とする、名寄せ制御方法。
【請求項１６】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データと、前記個人データと照合することにより特定の個人を識別する事が可能な電子データと、匿名ＩＤ更新履歴データベースを有する個人データ管理サーバがクライアント装置との接続処理を開始した場合に、
クライアント装置から匿名ＩＤを受信し、
匿名ＩＤ更新履歴データベースに格納された、前記受信した匿名ＩＤの更新系列を参照して、最新匿名ＩＤを取り出し、
前記受信した匿名ＩＤが最新匿名ＩＤよりも古い場合には、前記クライアント装置に匿名ＩＤを送信し、
前記匿名ＩＤ更新履歴データベースに格納された前記更新系列から、最新匿名ＩＤよりも古く、なおかつ前記の個人データを格納するためのデータベースに存在しない匿名ＩＤに関連する履歴データを削除することを特徴とする名寄せ制御装置。
【請求項１７】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データ１と、前記個人データと照合することにより特定の個人を識別する事が可能な電子データ２とを有する個人データ管理サーバが、電子データ１と電子データ２の結合処理を開始した場合に、
請求項１３に記載の処理によりＩＤ対応データを取得し、
前記ＩＤ対応データを用いて電子データ１に対応する電子データ２のデータを結合することを特徴とする名寄せ制御方法。
【請求項１８】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データ１と、前記個人データと照合することにより特定の個人を識別する事が可能な電子データ２とを有する個人データ管理サーバが、電子データ１と電子データ２の結合処理を開始した場合に、
請求項１４に記載の処理によりＩＤ対応データを取得し、
前記ＩＤ対応データを用いて電子データ１に対応する電子データ２のデータを結合することを特徴とする名寄せ制御方法。
【請求項１９】
請求項１４に記載のデータベース中の匿名ＩＤ更新処理は、更新中に参照できないようデータをロックし、ロックしている間に２個以上の匿名ＩＤを置換する事を特徴とする名寄せ制御方法。
【請求項２０】
個人データを格納するためのデータベースを有し、前記個人データは特定の個人を識別する事ができる電子データと、前記個人データと照合することにより特定の個人を識別する事が可能な電子データと、これらの電子データの対応データを暗号化して有する個人データ管理サーバがクライアント装置との接続処理を開始した場合に、クライアント装置内にある暗号鍵を受信し、サーバに格納された個人ＩＤと更新前の匿名ＩＤのＩＤ対応データを、前記受信した暗号鍵で復号することを特徴とする、名寄せ制御方法。
【請求項２１】
データ管理システムであって、
名寄せデータを取得する端末装置と、
実名IDと実名との組み合わせを格納した第1の装置と、
前記実名に関連するデータと該データに対応する匿名IDとを格納した第2の装置と、
前記実名IDと匿名IDとの対応テーブルを格納した第3の装置と、
前記実名IDに対応する匿名IDの更新履歴データを格納し、前記端末装置、前記第1の装置、前記第2の装置、及び前記第3の装置にネットワークを介して接続される制御装置とを有し、
前記制御装置は、前記第2の装置にアクセスして前記匿名IDを更新した場合、前記第3の装置にアクセスして前記更新した匿名IDに対応する前記対応テーブルの値を更新し、該更新履歴情報を自機器の記憶装置に格納することを特徴とするデータ管理システム。
【請求項２２】
請求項２１記載のデータ管理システムであって、
前記制御装置は、第1の匿名IDを格納したICカードからアクセスがあった場合、
前記更新履歴データを参照して、前記第1の匿名IDが更新されているか否かを判断し、
前記第1の匿名IDが前記第2の匿名IDに更新されていた場合、前記ICカード上に格納された前記第1の匿名IDを前記第2の匿名IDに更新するとともに、対応する更新履歴情報を削除することを特徴とするデータ管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
電子化された個人情報、医療情報、公文書等の秘匿性の高いデータを扱うデータベースシステムに係わる。
【背景技術】
【０００２】
OECD(Organization for Economic Co-operation and Development)が1980年に採択した勧告"OECD RECOMMENDATION CONCERNING AND GUIDELINES GOVERNING THE PROTECTION OF PRIVACY AND TRANSBORDER FLOWS OF PERSONAL DATA"により、プライバシ保護に関する８原則が示された。OECDの８原則は、目的明確化、利用制限、収集制限、データ内容、安全保護、公開、個人参加、責任の各事項について、企業等の個人情報取扱事業者が従うべき原則を定めているものである。OECD加盟各国はプライバシ保護ないしは個人情報保護に向けて、８原則を踏襲する形で国内法、ガイドライン等の制度整備を進めており、その結果として個人情報を取り扱う企業はこのような制度への対応を迫られている。企業内では様々な新たな業務が発生し、そのための人的、金銭的なコストを要するようになってきた。
【０００３】
またコンピュータネットワークの出現は大量の個人情報を電子的な形態で受け渡しすることを容易にしたため、ひとたび個人情報漏洩事故が起きるとその被害は広範囲に及ぶ可能性がある。さらにインターネットの進展に伴い、情報漏洩事故に対する損害賠償という形の訴訟リスクがさらに大きくなりつつある。またプライバシに関する意識が高まりつつある昨今、企業は個人情報の取り扱いに対する法的な責任だけでなく、道義的責任までを問われるようになりつつあり、予期しない個人情報漏洩の危険性は、ブランドイメージ低下のリスク要因という形でも認識されつつある。すなわち、これらのリスクを回避するためにも、多くの企業では個人情報を適切に管理するコストをかけざるを得ない状況が生じている。
【０００４】
個人情報管理に関する業務を支えるシステムとしては、特に電子的な形態の個人情報のための、利用許諾に基づいたアクセス制御機能を備えた個人情報管理システムが知られている（以下、従来技術１と呼ぶ）。従来技術１については例えば非特許文献１に説明がある。
【０００５】
従来技術１は、利用目的や収集データ項目などを有する個人情報取扱方針として開示し、消費者、ユーザ等の個人情報の提供者から個人情報取扱方針に対する利用許諾を記録する機能を備える。また企業内における個人情報の利用を、適切なユーザに限定するアクセス制御機能を備える。利用許諾に基づくアクセスの制御は、コンピュータにより実行されるプログラムの権限に基づいて実現される。さらに従来技術１は、どのユーザがどのような利用目的で個人情報にアクセスしたかを記録する機能を備えている。
【０００６】
また、個人情報のうち、いわゆる「機微な情報」「sensitive data」を匿名管理する公知の手段としては、医療情報を扱うためのシステムがある（以下、従来技術２と呼ぶ）。従来技術２については例えば特許文献１に説明がある。従来技術２は、暗号化された氏名、住所、生年月日などの個人識別情報と、個人識別情報以外の遺伝子情報等の疾患情報を分離し、それぞれを異なる鍵で暗号化し、これらの復号鍵をICカード等の記録媒体に格納する。これにより個人識別情報及び疾患情報の利用を、ICカードの所有者がコントロールする事が可能になる。また、個人識別情報及び疾患情報を関連づける管理符号をシステムが割り振る。この管理符号を用いることにより、個人識別情報を用いずに匿名的な疾患情報の利用が可能になる。
【０００７】
【非特許文献１】http://www-6.ibm.com/jp/software/tivoli/products/privacy.html
【特許文献１】特開２００１−３５７１３０号
【発明の開示】
【発明が解決しようとする課題】
【０００８】
OECDの８原則に準じる各国の保護法、ガイドラインは、個人情報取扱方針に利用目的を明記し、情報提供者から利用許諾を得る事を必須の要件としている。従来技術１は利用許諾に基づいた蓄積個人情報へのアクセス制御を実現するものであるが、情報提供者からは個人情報の利用状況を把握できないという課題がある。この点は個人情報を用いた業務を外部に委託する場合でも同様であり、従来技術１は、委託企業が受託企業の情報利用状況を管理する手段を提供するものではない。
【０００９】
従来技術２は、疾患情報を必要としない個人識別情報の利用も制限されるという課題がある。従来技術２においては、疾患情報は暗号化しない事も可能であるが、匿名性を保証するために個人識別情報は必ず暗号化して保存される。そのため個人識別情報の復号には必ずICカード等に格納された復号鍵を必要とする。また、従来技術２では個人識別情報と疾患情報を関連づける管理符号は、暗号化されない平文であり、一度付与された管理符号は変更される事がない。そのため、復号された個人識別情報を一度でもシステム利用者が入手してしまえば、以降は自由に疾患情報と入手済みの個人識別情報を関連づける事ができ、匿名性に対する配慮はなされない事になる。
【００１０】
これらの従来技術２の課題は、適用分野によらない構成原理そのものに起因する課題である。例えば、従来技術２を小売店における顧客情報の管理に適用する場合、購買履歴を疾患情報として扱う事が考えられるが、コールセンター等の顧客窓口で身分照会のために個人識別情報のみを参照する用途には使えない。
【課題を解決するための手段】
【００１１】
本発明は、特定の個人を識別するための個人ＩＤをキーとするハッシュ関数により生成された匿名ＩＤと、１個以上の個人データ利用許可条件からなる匿名管理用データをクライアントから１個以上受信する処理を実行し、次に前記の受信した匿名ＩＤが、サーバが格納している匿名ＩＤと衝突するか否かを判定し、判定結果をクライアントに送信する処理を実行し、次に衝突が無かった場合にはデータベースに管理用匿名データを格納する処理を実行し、次に前記の受信した匿名ＩＤと同じ個人ＩＤから生成されたデータベース中の匿名ＩＤを、前記の受信した匿名ＩＤで置換する処理を実行する手段を有する。
【００１２】
またクライアントから匿名ＩＤを受信し、次に個人データと照合することにより特定の個人を識別する事が可能な電子データを匿名ＩＤをキーとして蓄積する手段を有する。
【００１３】
さらに上記の個人データ利用許可条件は、上記の格納された匿名ＩＤを送信したクライアントに対して個人データ管理サーバが要求したときに、上記の格納された個人ＩＤを受信できるか否かを制御できる。
【００１４】
これにより個人データを匿名で管理する事を可能にし、個人データを関連付けて利用する際は個人データ管理サーバがクライアントに許可を求めるよう、システムを構成できる。従って、従来技術１の課題の克服が可能になる。
【００１５】
また本発明においては匿名ＩＤにより個人データ間の関連性を断ち切る仕組みになっているため、個人情報を保護するために、格納される個人データを暗号化する事は必須ではない。従って、従来技術２の課題の克服が可能になる。
【発明の効果】
【００１６】
本発明においては購買履歴は匿名ＩＤにより収集され、また匿名ＩＤを個人ＩＤに関連付ける操作には会員カードもしくは代理サーバの応答が必要となるため、名寄せの類の個人データ利用の実績をシステム外部で記録する事ができる。これによりユーザは、個人情報取扱事業者に与えた利用許諾に従って個人データが正しく使われているかを確認する事ができる。
【００１７】
さらに本発明においては、個人データそれ自体は暗号化されず平文で格納されているが、匿名ＩＤはサーバ側で個人ＩＤと関連付けられるたびに更新され、あわせて蓄積されている購買履歴の収集キーになっている匿名ＩＤも更新される。そのため、名寄せしない限りにおいては個人ＩＤ、匿名ＩＤそれぞれをキーとするデータを、アクセス制御が許す範囲で自由に利用できるという融通性を与えつつ、無断の個人データの目的外利用を防止する効果を期待できる。
【発明を実施するための最良の形態】
【００１８】
以下の記述における用語の定義は次の通りである。個人情報とは個人に関する情報であって、当該情報に含まれる氏名、生年月日その他の記述等により特定の個人を識別する事ができるものである。個人情報には例えば住所のように、他の情報と容易に照合する事ができ、それにより特定の個人を識別する事ができる事となるものが含まれる。また、個人データとは、コンピュータが容易に検索できるようなデータベースを構成する、主に電子的な形態の個人情報の事である。
【００１９】
図１のシステム１００は、本発明の基本構成を示している。１０１は匿名ＩＤ送信手段、１０２は匿名ＩＤ、１０３は匿名ＩＤデータベース、１０４は個人ＩＤデータベース、１０５は匿名ＩＤ発行手段、１０６は匿名ＩＤ登録手段、１０７は管理用匿名ＩＤデータベース、１０８はＩＤ応答手段、１０９はデータ結合手段、１１０は分割格納個人データベース、１１１は利用履歴データベース、１１２は結合済みデータである。
【００２０】
個人ＩＤデータベース１０４には、個人を特定するためのＩＤ（識別子）が格納される。匿名ＩＤ発行手段１０５は、個人ＩＤデータベース１０４に格納されたデータを元に、匿名で扱うためのＩＤを発行する。この匿名ＩＤは、その値から個人ＩＤを推測する事が困難な性質を持っている。匿名ＩＤは匿名ＩＤ登録手段１０６により管理用匿名ＩＤデータベース１０７と匿名ＩＤデータベース１０３に格納される。このとき、匿名ＩＤ登録手段１０６は、格納した匿名ＩＤを用いて分割格納個人データベース１１０の格納済みデータを書き換える。匿名ＩＤ送信手段１０１は、システム１００の外部からの要求に応じて、匿名ＩＤデータベース１０３に格納されている匿名ＩＤ１０２をシステム１００の外部に送信する。
【００２１】
分割格納個人データベース１１０は、個人データを個人ＩＤと匿名ＩＤで管理するデータベースである。分割格納個人データベース１１０は、送信された匿名ＩＤ１０２をキーとする個人データ、例えば購買履歴のようなデータを格納し、また個人ＩＤベース１０４に格納された個人ＩＤをキーとする氏名、住所などの個人データを格納する。データ結合手段１０９は匿名ＩＤをキーとするデータと、個人ＩＤをキーとするデータを結合し、結合済みデータ１１３としてシステム１００の外部に出力する。結合するデータ操作とは、例えばRDBにおけるジョイン演算であり、個人データを扱う業務処理プログラムでは名寄せと呼ばれる処理として頻繁に発生する。ただしデータ結合手段１０９は、ＩＤ応答手段１０８の適切な応答がない限りデータを結合する事はない。ＩＤ応答手段１０８は、データ結合手段１０９からの要求とそれに対する応答を利用履歴データベース１１１に記録する。
【００２２】
本発明は、分割格納個人データベースに格納された個人データの集合を関連づける際に、ＩＤ応答手段１０８の適切な応答を必要とする構成を取っている。すなわち、ＩＤ応答手段１０８の動作を通じて、個人データの利用を管理、記録する事が可能になっている。
【００２３】
また図１０のシステム１０００では、データの結合操作もしくは名寄せを許可する個人データ管理者と、匿名ＩＤのみを用いる利用者が異なる場合に適用される構成である。システム１０００では、システム１００における匿名ＩＤ応答手段１０８の代わりにＩＤ対応データ応答手段１００５を、管理用匿名ＩＤデータベース１０７の代わりに匿名ＩＤ更新履歴データベース１００４を用いる。匿名ＩＤ更新履歴データベース１００４には、匿名ＩＤの更新履歴が格納される。匿名ＩＤ通信手段１００２は、匿名ＩＤ同期手段１００１から最新の匿名ＩＤを取得して、複製匿名ＩＤデータベース１００３に格納する。ただし匿名ＩＤ通信手段１００２は常にオンライン状態とは限らず、オフライン状態の間にも匿名ＩＤ発行手段１０５は匿名ＩＤを更新することがある。  システム１０００においては、分割格納個人データベースに格納された個人データの集合を関連づける際に、ＩＤ対応データ応答手段１００５の適切な応答を必要とする構成を取っている。すなわち、ＩＤ応答手段１００５の動作を通じて、個人データの利用を管理、記録する事が可能になっている。さらに匿名ＩＤ同期手段１００１を用いることにより運用の柔軟性を持たせることができ、例えば個人ＩＤデータベース１０４、匿名ＩＤデータベース１０３を個人データ管理者に持たせ、複製匿名ＩＤデータベースを他のシステム利用者に持たせる事が可能になる。
【実施例１】
【００２４】
以下、実施形態を用いて本発明の詳細を説明する。それぞれの実施形態についてまずシステムの構成、内部データ、入力データ及び出力データを示し、続いて処理手順を示す。
【００２５】
図２は、本発明の小売店における適用例を示した第１の実施形態である。システム２００は小売店向けの会員カードを用いる会員管理システムであり、会員カード２０１、業務データ生成サーバ２０２、個人データ利用プログラム２０４、アクセス制御サーバ２０８から構成されている。システム２００は、会員カードを用いて購買履歴を収集し、またポイント２１１、ＤＭ（ダイレクトメール）宛先リスト２１２を出力する。クライアント装置としての会員カードはＩＣチップにメモリ、プロセッサを搭載したものであり、原理上はＰＤＡ、携帯電話などでも代替する事が可能である。
【００２６】
会員カード２０１は、匿名ＩＤ送信手段１０１、匿名ＩＤデータベース１０３、個人ＩＤデータベース１０４、匿名ＩＤ発行手段１０５、ＩＤ応答手段１０８、利用履歴データベース１１１から構成されている。
【００２７】
データ３００は個人ＩＤデータベース１０４の格納データであり、個人ＩＤを表すフィールド３０５と、利用許諾の条件を表すフィールドからなる。フィールド３０５の格納データ３２１は会員同士で重複しない整数値であり、会員カード発行の際にレコードデータ３１９が個人ＩＤデータベース１０４に格納される。データ３０１の利用許諾条件を表すフィールドは０個以上あり、本実施形態においてはフィールドが３０７、３０８、３０９の３つが該当する。これらのフィールドはそれぞれ、ＤＭ宛先として個人データを利用する事の可否、個人を特定する分析に個人データを利用する事の可否、個人を特定しない統計分析に個人データを利用する事の可否を保持する。フィールド３０７、３０８、３０９には会員が与えた利用許諾に基づいて、個人データの利用を許す場合には値としてOK、許さない場合には値としてNGが格納される。
【００２８】
データ３０１は匿名ＩＤデータベース１０３の格納データであり、匿名ＩＤを表すフィールド３０６と、利用許諾の条件を表すフィールド３０７、３０８、３０９からなる。フィールド３０６の格納データ３２０には、説明の便宜上、データ３２０がデータ３２１から生成された値である事をわかりやすくするため「A1001」となっているが、実際のデータ３２０は、データ３２１をキーとするハッシュ値として生成される。データ３２０を生成するための典型的なハッシュ関数の一つはMD5である。このようなハッシュ関数を用いる場合、データ３２０は擬似的な乱数のような値を取り、データ３２０からデータ３２１を推測する事は極めて困難である。
【００２９】
業務データ生成サーバ２０２は、匿名ＩＤ登録手段１０６、管理用匿名ＩＤデータベース１０７、データ結合手段１０９、分割格納個人データベース１１０からなる。ただし匿名ＩＤ登録手段１０６は耐タンパデバイス２０３内に構築されており、匿名ＩＤ登録手段１０６を勝手に書き換えたり、匿名ＩＤ登録手段１０６の内部処理を外部から自由に観測する事はできない。通常、匿名ＩＤ登録手段１０６は製造時に耐タンパデバイス２０３に構築される。
【００３０】
個人データ利用プログラム２０４は、購買記録実行手段２０５、ポイント管理手段２０６、購買傾向分析手段２０７からなる。購買商品ＩＤ２１０は、商品に付与されたＪＡＮコード等のＩＤであり、バーコードやＲＦＩＤタグ等を利用して店員がレジスタから入力する。システム２００は入力された購買商品ＩＤ２１０に匿名ＩＤを付与して記録する。匿名ＩＤはレジスタに接続された会員カードが送信する。購買傾向分析手段２０７は、購買履歴を含む個人データを分析し、ＤＭの発送により購買の誘発を期待できる会員のリストを出力する。
【００３１】
アクセス制御サーバ２０８は、アクセス制御手段２０９を有し、関連付けた（名寄せした）個人データへの個人データ利用プログラム２０４のアクセスを制御する。
【００３２】
データ３０２は管理用匿名ＩＤデータベース１０７の格納データであり、１個のレコードデータが１人の会員に対応する。各フィールドはテーブル３０１と同様のフィールドからなる。個人ＩＤが1001、2001、3001の会員の匿名ＩＤが、それぞれA1001、A2001、A3001である。
【００３３】
データ３０３、データ３０４は分割格納個人データベース１１０の格納データである。データ３０３の各レコードは個人ＩＤ３０５をキーとする個人データであり、会員カード新規発行時に登録される。各レコードは個人ＩＤ、氏名、住所、年齢を表すフィールド３０５、３１０、３１１，３１２からなる。
【００３４】
データ３０４の各レコードは匿名ＩＤ３０６をキーとする個人データであり、購買実績記録手段２０５が登録する。各レコードは匿名ＩＤを表すフィールド３０６と、購買履歴として購買日、購買品、金額を表すフィールド３１３、３１４、３１５からなる。フィールド３１３には、購買実績記録手段２０５がレコードを生成した日付が格納される。フィールド３１４にはバーコードが与えるＪＡＮコード、あるいはＲＦＩＤタグが与える個別の購買品コードを元に決定した購買品の分類が格納される。本発明の原理上、フィールド３１４はＪＡＮコードあるいは個別の購買品コードであっても良い。フィールド３１５には購買品の金額が格納される。また、データ３０４を構成するレコードにはデータ３２２のようなポイント管理用のものがある。データ３２２は、匿名会員A1001が2004/4/15にポイント1500円分を割引のために利用した事を表している。
【００３５】
データ３１６は、利用履歴データベース１１１の格納データである。データ３１６の各レコードは匿名ＩＤ、利用日、利用目的を表すフィールド３０６、３１７、３１８からなる。データ３１６のレコードはＩＤ応答手段１０８が生成、登録する。フィールド３１７は、ＩＤ応答手段１０８がデータ結合手段１０９からの個人データ利用の要求に応じた年月日である。フィールド３１８は、ＩＤ応答手段１０８がデータ結合手段１０９から通知された利用目的を記録したものである。
【００３６】
データ４０１は、ポイント管理手段２０６の出力データであり、典型的な利用例ではレシートに印刷される。各レコードは匿名ＩＤ、累計ポイント、利用ポイント、加算ポイントを表すフィールド３０６、４０４、４０５、４０６からなる。フィールド４０４は商品購買後の保有ポイントを表す。フィールド４０５は商品購買の割引に利用したポイントを表す。フィールド４０６は、商品購買により新たに加算されたポイントを表す。
【００３７】
データ４０２は、購買傾向分析手段２０７の出力データであり、典型的な利用例ではＤＭの宛名シールへの印刷データとなる。各レコードはＤＭ発送処理に必要な個人データを表すフィールドと、分析結果を表すフィールドからなる。フィールド３０６、３１３、３１４はそれぞれ個人ＩＤ、氏名、住所を表し、フィールド４０７は肉類の商品案内に対する応答率予測値を表す。フィールド４０７のような分析結果を表すフィールドは２個以上であっても良い。データ４０２の利用例としては、肉類の商品案内のＤＭをある人数の会員に発送する場合に、購買行動の誘発を期待できる会員を優先的に選択する等である。
【００３８】
以上が第１の実施形態の構成、内部データ、入力データ及び出力データである。次にシーケンス図により処理手順を説明する。各シーケンス図において、終点が黒塗りの三角形は手続き呼び出しを表し、例えば処理７０１が該当する。手続き呼び出しでは処理が完了するまで呼び出し側（始点側）が次の処理を実行しないことを表す。終点が棒状の矢線は非同期型の通信を表し、例えば処理７１４が該当する。非同期型の通信では処理が並列に実行され、送信側（始点側）は通信処理完了を待つことなく次の処理を実行することを表す。
【００３９】
会員カード２０１と業務データ生成サーバ２０２に跨って発生する処理は、会員カード２０１と業務データサーバ２０２の相互認証が完了した後に起動し、また処理の間、会員カード２０１と業務データ生成サーバ２０２の通信経路は、物理的、暗号的な適切なセキュリティ機構により保護する。相互認証、通信経路保護の手段には公知の技術を用いる。
【００４０】
シーケンス５００は、匿名ＩＤをシステム２００に登録する処理の流れを示している。匿名ＩＤの登録処理は、会員カードを新規に発行した際と、ＩＤ応答手段１０８が匿名ＩＤに関連づけられる個人ＩＤを応答する際に実行される。会員カードがカードリーダに接続され、相互認証及び通信経路確立が完了すると、処理５０１において匿名ＩＤ登録手段１０６がランダムな正の整数値ｒを生成し、匿名ＩＤ発行手段１０５に対してｒと共に匿名ＩＤの発行を要求する。
【００４１】
次に処理５０２において匿名ＩＤ発行手段１０５が、フィールド３０６、３０７、３０８、３０９からなるレコードデータm個を生成する。フィールド３０７、３０８にはレコードデータ３１９の値が格納され、全てのレコードについて値が同じである。フィールド３０６の匿名IDの値は、MD5等のハッシュ関数h(i+r+m)により得られる、互いに異なるM個のハッシュ値である。ここでiはデータ３２１の個人ＩＤ、mは１以上のM以下の連続する整数（m=1,2,...,M-1）である。Mはカード発行時に与える１以上の整数をとる任意のパラメータであり、会員カード発行の際に会員が許諾した利用条件、及び購買実績データの利用形態によって予め決定しておく。本実施形態においてはポイント管理のためにM=1となるが、例えば課金の目的のみで購買実績データを利用する場合等は、M>=2であってもよい。
【００４２】
このようにハッシュ関数のキーが乱数値rを有する事、匿名ＩＤ発行手段１０５は耐タンパデバイスに格納されている事により、システム２００を利用する小売店が個人ＩＤを決定している場合であっても、個人ＩＤからの匿名ＩＤの推測を防ぐ事ができる。
【００４３】
処理５０２が終了すると、匿名ＩＤ発行手段１０５は処理５０１の手続き呼び出しの戻り値として、処理５０２で新たに生成したレコードデータと、過去に発行した匿名ＩＤであるデータ３２０を匿名ＩＤ登録手段１０６に送信する。過去に発行した匿名ＩＤが無くデータ３２０が空である場合には、欠損を示すコードをデータ３２０の代わりに送信する。
【００４４】
続いて、登録要求された匿名ＩＤが１０７に登録済みの匿名ＩＤと衝突するかを匿名ＩＤ登録手段１０６が判定し、衝突を検出した場合には処理５０１からやり直す。予め決めた回数以上に達した場合に、システムは例外を放出してシーケンス５００を終了する。ただし計算方法に初期値敏感性の不可逆な一方向関数を含むMD5のようなハッシュ関数では、ハッシュ値が衝突する可能性は極めてまれであり、実装上は本実施形態の手続きで十分に機能する事が期待できる。衝突が検出されなければ処理５０３に進み、匿名ＩＤ登録手段１０６が匿名ＩＤ発行手段１０５に生成したＩＤを受け付けた事を通知する。
【００４５】
処理５０４において匿名ＩＤ発行手段１０５は、生成したレコードデータを匿名ＩＤデータベース１０３に追加する。匿名ＩＤデータベース１０３に格納済みのレコードデータは必要に応じて削除しても良い。
【００４６】
次に処理５０５に進み、匿名ＩＤ登録手段１０６が、処理５０１の戻り値として受信したレコードデータを管理用匿名ＩＤデータベース１０７に追加する。
【００４７】
処理５０６で匿名ＩＤ登録手段１０６は、いったん待ち状態にはいる。次の会員カードが接続された場合には対して処理５０１実行する。待ち状態に入ってからT秒以上経過するか、もしくは会員カードから受信済みで未登録の新規の匿名ＩＤがK・M個未満である場合には、処理５０７の実行に移る。ここでKは１以上の整数値をとる任意のパラメータであり、処理５０７で一度に複数個の会員カードの匿名ＩＤを処理させたい場合に、望む会員カードの個数をKに指定する。Tはタイムアウトのパラメータであり、０より大きい実数値を秒単位で指定する。
【００４８】
処理５０７において匿名ＩＤ登録手段１０６は、処理５０３で受け取った過去の発行済み匿名ＩＤを分割格納個人データベースから検索し、新たに生成した匿名ＩＤで置き換える。M>=2である場合には、置換対象のレコードごとに新たな匿名ＩＤをランダムに選択する。
【００４９】
以上がシーケンス５００の処理である。
【００５０】
シーケンス６００は、匿名ＩＤを用いた購買実績記録の処理とそれに続くポイント更新の処理の流れを示している。購買実績記録手段２０５、ポイント管理手段２０６はレジスタから呼び出されるプログラムであり、典型的な例ではシーケンス６００はレジスタでの会計で合計額が算出された後に起動する。以下では、会員カードがシステム２００の外部にあるレジスタ６０６を通じてシステム２００に接続しており、またレジスタ６０６には精算中の商品のＩＤが一時的に保持されているものとする。
【００５１】
処理６０１では、まず購買実績記録手段２０５が会員カード２０１に匿名ＩＤを要求する。続いて会員カード２０１にある匿名ＩＤ送信手段１０１が、匿名ＩＤデータベース１０３を参照してm個の匿名ＩＤからランダムに１個を取り出し、レジスタ６０６に送信する。
【００５２】
処理６０２ではレジスタ６０６が一時的に保持している商品のＩＤと、処理６０１で受信した匿名ＩＤを購買実績記録手段２０５に送信する。
【００５３】
処理６０３では購買実績記録手段２０５がデータ３０４の形式の新規レコードデータを成し、分割格納個人データベース１０７に格納する。
【００５４】
購買実績の記録が完了すると、レジスタ６０６は処理６０４により、ポイント管理手段２０６へ、処理６０１で受信した匿名ＩＤを送信し、ポイント計算処理を起動する。
【００５５】
処理６０５ではポイント管理手段２０６が、受信した匿名ＩＤをキーとして分割格納個人データベース１１０に格納されたデータ３０４を検索し、累計ポイントを算出する。ポイント計算の方法は様々であるが、例えば過去の利用ポイントの合計と、最近１年間の購買品の金額合計に基づいて利用可能な累計ポイントを算出する。処理６０５が終了すると、処理６０４の手続き呼び出しの結果としてレジスタ６０６が累計ポイントを得る。
【００５６】
処理６０７でレジスタ６０６は累計ポイント、会計中の商品データ、ポイント利用の有無のデータに基づいてをデータ４０１を生成し、レシートやレジスタの画面に出力する。
【００５７】
以上がシーケンス６００の処理である。
【００５８】
シーケンス７００は、個人ＩＤで管理されるデータ３０３と、匿名ＩＤで管理されるデータ３０４を結合して利用する場合の処理の流れを示しており、購買傾向分析手段２０７を用いてＤＭ宛先リスト生成する際に起動される。シーケンス７７００では、購買傾向分析手段２０７が分析用の個人データを要求すると、次に利用許諾が得られている会員を匿名ＩＤで判定し、データ結合手段が会員カード接続待ち状態に入る。この状態で当該匿名ＩＤを持つ会員カードが接続すると、個人ＩＤを特定する処理が起動し、購買傾向分析手段２０７は分析用データを得る。シーケンス７００の詳細は以下の通りである。
【００５９】
まず購買傾向分析手段２０７が処理７０１で分析データを要求する。具体的には、購買傾向分析手段２０７は業務データ生成サーバ内のアクセス制御手段２０９に対し、ＤＭ発送リスト作成に要するデータ名（テーブル名、フィールド名）を引数として与えて処理７０１を呼び出す。ＤＭ発送リスト作成ではデータ３０３、３０４のデータ名及びフィールド名を要求する。
【００６０】
続いて処理７０２に進み、アクセス制御手段２０９が分析データを要求したプログラムの種別から個人データの利用目的を判定する。要求プログラムは購買傾向分析手段２０７なので、利用目的＝ＤＭ発送と決定する。またここで決定した利用目的を用いて、要求されたデータ名を利用しても良いかをアクセス制御手段２０９が判定し、利用を拒否する場合には処理７０１の戻り値として偽の値を購買傾向分析手段２０７に返す。許可する場合には処理７０３によりデータ結合要求を送信し、戻り値として真値を購買傾向分析手段２０７に返す。
【００６１】
処理７０３でデータ結合手段１０９は会員カードとの通信の待ち状態に入る。処理７０４、７０５、７０６は、データ結合手段１０９が待ち状態に入ってからＸ秒以内に接続した全ての会員カードに対して１回ずつ実行される。以下では説明の便宜上、１個の会員カードに対する処理の流れを説明する。
【００６２】
会員カードがシステム２００に接続して通信経路が確立されると、処理７０４が起動し、データ結合手段１０９はまずＩＤ応答手段１０８から匿名ＩＤを受け取り、管理用匿名ＩＤデータベース１０７に格納されたデータ３０２を参照して利用許諾の判定を行う。ＤＭ発送がＯＫの場合には処理７０５に進み、ＮＧの場合は何もしないでデータ結合手段１０９は再び待ち状態にはいる。
【００６３】
処理７０５では、データ結合手段１０９がＩＤ応答手段１０８に利用目的を送信し、個人ＩＤを要求する。
【００６４】
処理７０６では、ＩＤ応答手段１０８が匿名ＩＤデータベース１０６に格納されている利用許諾を用いて、受信した利用目的が許容されているものかを判定し、次にＩＤ応答手段１０８が匿名ＩＤ発行手段１０５に個人ＩＤが要求されている事を伝達する。次に利用履歴データベース１１１に格納されたデータ３１６に新たなレコードを追加する。続いて匿名ＩＤ発行手段１０５は匿名ＩＤ登録手段１０６に匿名ＩＤの更新を要求する。
【００６５】
処理７０７から７１１では、シーケンス５００における処理５０１から５０５と同様の処理が実行され、分割格納個人データベース１１０に新たな匿名ＩＤが登録される。
【００６６】
処理７１２では、データ結合手段１０９が処理７０５で要求されていた個人ＩＤと、処理７０５の時点で使われていたM個の匿名ＩＤを送信し、次にデータ結合手段１０９は分割個人データベース７１６を変更するための待機状態に入る。
【００６７】
処理７１３では、処理７１２で受け取った個人ＩＤ、匿名ＩＤを用いてデータ結合手段１０９が分析用データを生成する。分割格納個人データベースのデータ３０３に格納された当該個人ＩＤを有するレコードを抽出する。またデータ３０４に格納された当該匿名ＩＤを有するレコードを抽出し、各レコードの匿名ＩＤを対応する個人ＩＤに置換する。
【００６８】
処理７１４では、データ結合手段１０９が、処理７１３で生成した分析用データを非同期で購買傾向分析手段２０７に送信する。
【００６９】
処理７１５、７１６ではシーケンス５００の処理５０６、５０７と同様の処理を実行し、分割格納個人データベース１０９に格納されている匿名ＩＤを更新する。
【００７０】
一方、購買傾向分析手段２０７は、処理７１４により分析用データを受信した予め指定しておいたデータ量を受信した時点で分析処理を起動し、処理７１８で分析結果としてデータ４０２を出力する。
【００７１】
このように、利用履歴データベース１１１に個人データの利用記録が残ることが本発明の特徴であり、本実施形態においては店舗内の端末や、ＰＣに接続されたカードリーダに会員カードを読み取らせることで、参照することができる。
【００７２】
なお、図２における個人データ利用プログラム２０４は、典型的には業務データサーバ２０２とネットワークで結合された計算機に格納される。
【００７３】
ここで、図２は、機能ブロックを用いて説明しているが、これらの機能ブロックを用いた処理は、ハードウェア、ソフトウェア、またはそれらの組合せによって実現される。
【００７４】
つまり、図中における計算機、サーバ、カード等は、ハードウェアとしては、少なくとも、任意のCPUとメモリ、他のLSIのいずれかを有し、例えば、メモリにロードされた購買実績記録手段２０５、ポイント管理手段２０６、購買傾向分析手段２０７等のプログラムがCPUで実行されることで処理が実現される。また、個人データ利用プログラム２０４は、業務データ生成サーバ２０２と同一の計算機に格納されても良い。
【実施例２】
【００７５】
次に図８にある本発明の第２の実施形態を説明する。図８のシステム８００は、匿名ＩＤ発行処理、利用履歴記録処理を、会員カード外部のシステムで代理させる場合の構成である。会員カード２０１は個人ＩＤデータベース１０４のみからなり、ＩＤ管理代理サーバ８０１は、匿名ＩＤ送信手段１０１、匿名ＩＤデータベース１０３、匿名ＩＤ発行手段１０５、ＩＤ応答手段１０８からなり、ＩＤ応答手段１０８には有効ＩＤ判定手段８０２が組み込まれている。利用履歴管理サーバは利用履歴データベース１１１、利用履歴出力手段８０３からなり、利用履歴表示端末８０４が接続されている。業務データ生成サーバ２０２、個人データ利用プログラムはシステム２００と同様である。
【００７６】
データ９００は匿名ＩＤデータベース１０５に格納されるデータであり、有効期限を表すフィールド９０４以外はデータ３０１と同様である。有効期限のフィールド値には、匿名ＩＤ発行手段１０５がデータ９００を生成する際に、会員の指定値か会員カード発行時のデフォルト値が与えられる。データ９０１は、匿名管理ＩＤデータベース１０７に格納されるデータであり、９００と同様のフィールドからなる。これ以外のデータはシステム２００と同様である。
【００７７】
システム８００は、匿名ＩＤ発行処理、利用履歴記録処理を代理サーバに任せているため、会員カードがシステムに接続されていない場合であっても、ポイント計算やＤＭ宛先リスト作成が可能である。ただし有効ＩＤ判定手段８０２が、匿名ＩＤの有効期限や有効利用回数を判定する機能を備えており、来店しなくなった会員の個人データが勝手に使われ続ける事態を防止する事ができる。
【００７８】
以上の実施形態におけるシステム２００、８００は小売店における会員カード利用システムへの適用を前提にしているが、会員カードはＩＣチップにメモリ、プロセッサを搭載したものであり、原理上はＰＤＡ、携帯電話等で代替する事が可能である。従って本発明は小売店向けの会員カード利用システムに限るものではない。また業務データ生成サーバ、２０２、個人データ利用プログラム２０４はネットワーク経由で接続されていても良く、従って本発明をネットワークを介した個人データ利用業務の委託に適用する事が可能である。例えばシステム２００あるいは８００における業務データ生成サーバ２０２を委託企業、個人データ利用プログラム２０４を受託企業に配置する事で、委託企業が受託企業の個人データ利用を監視し、コントロールする事が可能になる。
【００７９】
なお、図８における個人データ利用プログラム２０４は、典型的には業務データサーバ２０２とネットワークで結合された計算機に格納される。
【００８０】
ここで、図８は、機能ブロックを用いて説明しているが、これらの機能ブロックを用いた処理は、ハードウェア、ソフトウェア、またはそれらの組合せによって実現される。
【００８１】
つまり、図中における計算機、サーバ、カード等は、ハードウェアとしては、少なくとも、任意のCPUとメモリ、他のLSIのいずれかを有し、例えば、メモリにロードされた購買実績記録手段２０５、ポイント管理手段２０６、購買傾向分析手段２０７等のプログラムがCPUで実行されることで処理が実現される。また、個人データ利用プログラム２０４は、業務データ生成サーバ２０２と同一の計算機に格納されても良い。
【実施例３】
【００８２】
次に図１１にある本発明の第３の実施形態を説明する。システム１１００は、会員カード１１０１、管理用カード１１０２、業務データ生成サーバ１１０６、アクセス制御サーバ２０８、個人データ利用プログラム２０４を備える。小売店において、消費者が会員カード１１０１を所持し、個人データ管理者が管理用カード１１０２を所持する場合の構成例である。消費者は商品購買時に会員カード１１０１を用いてポイントを蓄積もしくは使用する。消費者のポイントの蓄積・使用の際は、個人データ利用プログラム２０４にある購買実績記録手段、ポイント管理手段は、匿名ＩＤで管理されるデータのみを処理する。
【００８３】
なお、図１１における個人データ利用プログラム２０４は、典型的には業務データサーバ１１０６とネットワークで結合された計算機に格納される。
【００８４】
ここで、図１１は、機能ブロックを用いて説明しているが、これらの機能ブロックを用いた処理は、ハードウェア、ソフトウェア、またはそれらの組合せによって実現される。
【００８５】
つまり、図中における計算機、サーバ、カード等は、ハードウェアとしては、少なくとも、任意のCPUとメモリ、他のLSIのいずれかを有し、例えば、メモリにロードされた購買実績記録手段２０５、ポイント管理手段２０６、購買傾向分析手段２０７等のプログラムがCPUで実行されることで処理が実現される。また、個人データ利用プログラム２０４は、業務データ生成サーバ１１０６と同一の計算機に格納されても良い。
【００８６】
購買傾向分析手段２０７は、匿名ＩＤで管理されるデータと、個人ＩＤで管理される氏名、住所等のデータと用いるが、管理用カード１１０２の適切な応答があったときのみこれらのデータを関連づけて利用することができる。
【００８７】
会員カード１１０１は、複製匿名ＩＤデータベース１００３、匿名ＩＤ通信手段１００２からなる。管理用カード１０３はＩＤデータ応答手段１００５からなり、個人ＩＤデータベース１０４、匿名ＩＤデータベース１０３はシステム２００と同様のものである。業務データ生成サーバ１１０６は、耐タンパデバイスに格納された匿名ＩＤ同期手段１００１、匿名ＩＤ更新履歴データベース１００４、匿名ＩＤ登録手段１０６、管理用匿名ＩＤデータベース１０７、データ結合手段１０９、分割格納個人データベース１１０からなる。
【００８８】
匿名ＩＤ更新履歴データベース１００４は、管理用カードの保有者のみアクセスできるような形態であればよく、管理用カードに保存された暗号鍵で暗号化して、耐タンパデバイスの外に設置することも可能である。
【００８９】
匿名ＩＤ登録手段１０６、管理用匿名ＩＤデータベース１０７、データ結合手段１０９、分割格納個人データベース１１０、アクセス制御サーバ２０８、個人データ利用プログラム２０４の構成はシステム２００と同様のものである。
【００９０】
図１２は、システム１１００で用いるデータ構造を示している。テーブル１２００は、匿名ＩＤ更新履歴データベース１００４に格納される。各行のレコードデータが１回の更新履歴を表しており、フィールド１２０１は更新前の匿名ＩＤ、フィールド１２０２は更新後の匿名ＩＤである。図の例では、A1001は個人ＩＤ「1001」に対して初めて発行された匿名ＩＤであり、A1002はその次に発行された匿名ＩＤであることを表している。レコードの並び順は、更新が発生した順である。
【００９１】
本実施形態では、テーブル１２００があれば全体の処理は可能であるが、テーブル１２００のレコード件数が極めて多いと、匿名ＩＤ同期手段１００１の処理効率が実用上問題になることがある。これを回避するための実現手段の一つは、同期ＩＤ同期手段１００１に予めテーブル１２００をデータベースから読み込ませ、１２０３に示すデータ構造でメモリ上に展開しておくことである。テーブルに含まれているデータは、高速アクセス領域１２０４、シーケンシャルアクセス領域１２０５に分割して保持される。典型的な例では、高速アクセス領域１２０４には２分ツリー、ハッシュテーブルなどの検索時間コストに優れたデータ構造を与え、シーケンシャルアクセス領域１２０５には線形リスト、配列などのメモリコストに優れたデータ構造を与えておく。
【００９２】
図１３に示すシーケンス１３００は、分割格納個人データベース１１０にある個人ＩＤで管理されるデータ３０３と、匿名ＩＤで管理されるデータ３０４を結合し、この結合データを購買傾向分析手段２０７にて利用する場合の処理の流れを示している。
【００９３】
まず購買傾向分析手段２０７が処理７０１で分析データを要求して、シーケンス１３００が開始する。処理７０１、７０２、７０３、７０４についてはシーケンス７００と同様である。
【００９４】
処理７０４に続いて、データ結合手段１０９が処理１３０１で管理用カード１１０２に対してＩＤ対応データを要求する。要求を受け取った管理用カード１１０２は処理１３０２で匿名ＩＤ登録手段１０６に対して匿名ＩＤ更新を要求する。匿名ＩＤ登録手段１０６は処理１３０３で乱数を生成し、処理１３０４で管理用カードに乱数を送信する。管理用カード１１０２は処理１３０５で処理７０８と同様の処理を実行し、乱数と個人ＩＤをキーとして匿名ＩＤを発行する。続いて管理用カード１１０２は、処理１３０６で匿名ＩＤ登録手段１０６に発行した匿名ＩＤを送信し、匿名ＩＤ管理手段１０６は既存の匿名ＩＤと重複が無ければ受信した匿名ＩＤを、匿名ＩＤ更新履歴データベース１００４に登録する。管理用カード１１０２は、処理１３０８で更新完了の通知を匿名ＩＤ登録手段１０６から受け取ると、処理１３０９で発行した匿名ＩＤを匿名ＩＤデータベース１０３に格納する。
【００９５】
以上で匿名ＩＤの更新処理が終了し、管理用カード１１０２は処理１３１０で、更新前の匿名ＩＤと個人ＩＤのＩＤ対応データをデータ結合手段１０９に返す。ＩＤ対応データは配列か、もしくは一塊のビット列にパディングされた１個のデータなど、管理用カードが扱えるデータ形式で匿名ＩＤと更新前の匿名ＩＤを格納したものである。続いてデータ結合手段１０９は、シーケンス７００と同様の処理７１３を実行し、分析用のデータを抽出する。
【００９６】
次に、データ結合手段１０９は処理１３１１で匿名ＩＤ登録手段に分割格納個人データベースの更新を要求し、匿名ＩＤ登録手段１０６は、シーケンス７００と同様の処理７１６を実行し、システムは処理１３１２に移行する。
【００９７】
ただし管理用カード１１０２の処理能力と、分割格納個人データベース１１０の処理能力のバランスによっては、更新要求に対して何もせずにいったん７１６処理を先送りにしおき、いくつかの更新要求をまとめて遅延実行した方が時間効率に優れる場合がある。本発明の原理上、このような処理に対応させることは原理上容易である。この場合は処理７１３において、匿名ＩＤ匿名更新データベース１００４中の更新履歴を参照して、ある個人ＩＤに対応する過去の匿名ＩＤそれぞれに関してＩＤ対応データを作成し、結合処理を行う。また処理７１６では、システム利用者が予め決めておいた個数の受信要求を受けるまでは何もせずに次の処理１３１２に移る。この個数に達した場合は匿名ＩＤ更新履歴データベースを参照して、未だ分割格納個人データベース１１０で更新される必要がある匿名ＩＤをチェックし、ＩＤ更新処理を実行した後に、処理１３１２に移る。
【００９８】
処理１３１２では、データ結合手段１０９が、処理７１３で抽出したデータをアクセス制御サーバ２０８に送信する。続いてアクセス制御サーバ２０８は、購買傾向分析手段２０７に受信した結合データを、処理７０１で要求されていた分析データとして送信する。続いて購買傾向分析手段２０７は、シーケンス７００と同様の処理７１７、７１８を実行し、分析結果を出力する。
【００９９】
続いて、会員カードを用いる場合のシーケンスを図１４に示す。シーケンス１４００は、シーケンス６００と同様の匿名ＩＤを用いた購買実績の記録を行う場合に、会員カード１１０１がレジスタ６０６に応答する匿名ＩＤを得るための処理を示している。処理１４０１でレジスタは匿名ＩＤ同期手段１００１に匿名ＩＤを要求し、続いて匿名ＩＤ同期手段１００１が、処理１４０２、処理１４０３で会員カード１１０１に格納されている匿名ＩＤを得る。処理１４０４では、匿名ＩＤ同期手段１００１が匿名ＩＤ更新履歴データベース１００４中のテーブル１２００をオンメモリに展開したデータ１２０３を確認する。テーブル１２００を直接確認する場合は、処理１４０３で得た匿名ＩＤをキーにレコード検索してチェックする。データ１２０３を用いる場合は、まず高速アクセス領域を用いて古い匿名ＩＤに該当するかを確認し、続いてシーケンシャルアクセス領域を確認することで処理を実現する。
【０１００】
更新履歴ＩＤデータベース１００４に新しい匿名ＩＤが存在するならば、処理１４０５、１４０６で会員カード１１０１中に新しい匿名ＩＤを複製Ｉ匿名ＩＤデータベース１００３に上書き格納する。続いて匿名ＩＤ同期手段１００１は、処理１４０８で匿名ＩＤ更新履歴データから不要な履歴データを削除し、処理１０４９でレジスタに最新の匿名ＩＤを返す。
【０１０１】
以上が、本発明の第３の実施形態である。このように匿名ＩＤ同期手段１００１を用いることによって、データの結合権限を有する管理用カードと、匿名ＩＤの複製権を有する会員カードを併用しつつ、実施形態１、２に述べたたようなデータ結合の制御が容易になる。
【０１０２】
なお、本発明の第３の実施形態では、システム１１００で全てのＩＤ対応データを暗号化して業務データサーバ１１０６に持たせる構成を取ることにより、同様の効果を得ることも容易である。この場合、管理用カード１１０２は共通鍵を持ち、個人ＩＤデータベース１０４、匿名ＩＤデータベース１０３は不要である。管理用カード内のＩＤ対応データ応答手段１００５は、ＩＤ対応データの代わりに共通鍵を応答するようにし、匿名ＩＤ発行手段１０５を業務データ生成サーバ１１０６に持たせる。このような構成をとる場合、処理１３０２で暗号鍵を渡し、処理１３０３で匿名ＩＤ登録手段１０６がＩＤ対応データを復号した後に、一連の処理を行う。処理１３０７では匿名ＩＤ登録手段１０６が更新済みの匿名ＩＤを新たなＩＤ対応データとして構成、共通鍵で暗号化した後に保存する。処理１３１０では更新前のＩＤ対応データを応答する。
【産業上の利用可能性】
【０１０３】
電子化された個人情報、医療情報、公文書等の秘匿性の高いデータを扱うデータベースシステムに適用できる。
【図面の簡単な説明】
【０１０４】
【図１】本発明の基本構成である。
【図２】本発明の第１の実施の形態である。
【図３】第１の実施の形態の入力データ、内部データである。
【図４】第１の実施の形態の出力データである。
【図５】会員カードが匿名ＩＤをシステムに登録する処理である。
【図６】匿名ＩＤを用いたポイント計算の処理である。
【図７】購買傾向分析手段が使用する結合データの生成処理である。
【図８】本発明の第２の実施の形態である。
【図９】第２の実施の形態が用いる内部データである。
【図１０】本発明の基本構成の代替案である。
【図１１】本発明の第３の実施の形態である。
【図１２】本発明の第３の実施の形態の内部データである。
【図１３】管理用カード用いて、匿名ＩＤ対応データの更新をおよび分割格納個人データベースからのデータ抽出を表すシーケンスである。
【図１４】会員カードを匿名ＩＤの複製をサーバから取得する際のシーケンスである。
【符号の説明】
【０１０５】
１０１・・・匿名ＩＤ送信手段、１０２・・・匿名ＩＤ、１０３・・・匿名ＩＤデータベース、１０４・・・個人ＩＤデータベース、１０５・・・匿名ＩＤ発行手段、１０６・・・匿名ＩＤ登録手段、１０７・・・管理用匿名ＩＤデータベース、１０８・・・ＩＤ応答手段、１０９・・・データ結合手段、１１０・・・分割格納個人データベース、１１１・・・利用履歴データベース、１１２・・・結合済みデータ。
【図１】
2005301978.tif 000003
【図２】
2005301978.tif 000004
【図３】
2005301978.tif 000005
【図４】
2005301978.tif 000006
【図５】
2005301978.tif 000007
【図６】
2005301978.tif 000008
【図７】
2005301978.tif 000009
【図８】
2005301978.tif 000010
【図９】
2005301978.tif 000011
【図１０】
2005301978.tif 000012
【図１１】
2005301978.tif 000013
【図１２】
2005301978.tif 000014
【図１３】
2005301978.tif 000015
【図１４】
2005301978.tif 000016