仮名化システム
【課題】利用履歴に含まれる仮名IDの追跡を困難にすると共に、利用履歴の分析を効率良く行う。
【解決手段】利用者のサービス履歴データを生成する時に実名IDを仮名化する仮名化システムにおいて、利用者のサービス利用状況に応じて、異なる仮名IDに仮名化する仮名化部と、サービス履歴データを分析するサービス履歴分析部と、異なる仮名IDを含む複数のサービス履歴データを分析する時に、異なる仮名ID同士が同一利用者か判定する仮名ID照合部と、仮名化部による仮名化と同じサービス利用状況を管理する仮名化変更管理部と、を備え、サービス履歴分析部が、同じ仮名IDが出現するサービス利用状況を対象とする場合は、所定のサービス履歴分析を行い、異なる仮名IDが出現するサービス利用状況を対象とする場合は、仮名ID照合部により、異なる仮名ID同士を同一利用者と見なして、所定のサービス履歴分析を行う。
【解決手段】利用者のサービス履歴データを生成する時に実名IDを仮名化する仮名化システムにおいて、利用者のサービス利用状況に応じて、異なる仮名IDに仮名化する仮名化部と、サービス履歴データを分析するサービス履歴分析部と、異なる仮名IDを含む複数のサービス履歴データを分析する時に、異なる仮名ID同士が同一利用者か判定する仮名ID照合部と、仮名化部による仮名化と同じサービス利用状況を管理する仮名化変更管理部と、を備え、サービス履歴分析部が、同じ仮名IDが出現するサービス利用状況を対象とする場合は、所定のサービス履歴分析を行い、異なる仮名IDが出現するサービス利用状況を対象とする場合は、仮名ID照合部により、異なる仮名ID同士を同一利用者と見なして、所定のサービス履歴分析を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書で開示される主題は、利用者IDのプライバシー保護技術、および、プライバシー保護を実現する仮名化システムに関する。
【背景技術】
【0002】
近年、企業活動や社会生活へのIT普及に伴い、電子商取引サービスや公共サービスなどの各種ITサービスを利用する上で、利用者と紐付けられたIDを提示することが増えている。例えば、クレジットカード番号であれば16桁の数字からなるIDを使って利用者との紐付けを行い、住民基本台帳カードであれば11桁の数字をIDとして使って利用者との紐付けを行う。その他にも、パスポート番号、免許証番号、企業が割り振る従業員番号、学校が割り振る学生番号など、IDの具体例は多岐に及ぶ。システムから見ると、IDを受け付けることで、利用者を一意に特定でき、利用者それぞれに適したサービスを提供することができる。
【0003】
一方、こうしたサービスを提供する上では、いつ、どこで、誰に、どんなサービスを提供したという利用履歴が残されることが多い。さらに「誰に」を示すにはIDが使われることが多い。サービス提供側は利用履歴を残すことで、その利用者に課金する場合のエビデンスとすることや、サービス向上のためのマーケティング分析などに活用することが多い。特に近年、過去の利用履歴を分析することで、利用者の傾向や、季節や地域などに応じたきめ細かいサービスを提供することも増えている。
【0004】
利用履歴の分析は、ストレージ容量や計算量の点で多くのリソースを必要とすることから、自社内のリソースだけでは分析できないという理由で、外部に委託して分析する機会も増えつつあり、ビジネス・インテリジェンス・サービスや、データ・ウェア・ハウス・サービスなどと呼ばれるサービスの利用も増えている。しかし外部に委託してしまうと、自社から見てセキュリティのコントロールが届きにくくなり、漏洩リスクが増すため、利用履歴に含まれるIDのプライバシー保護が問題となっている。
【0005】
特許文献1によれば、IDとしてクレジットカード番号を対象に、クレジットカードを読み取るPOS端末上でそのクレジットカード番号を仮名化し、以降、仮名化されたクレジット番号を使って利用履歴(ログ)を記録することが記載されている。さらに仮名化されたクレジットカード番号と実名のクレジットカード番号との対応関係を管理するサーバを有することで、必要に応じて仮名から実名へと変換できることが記載されている。特許文献1によるIDの仮名化により、利用履歴に含まれるIDだけを見ても、そのIDが誰のものか調べることができなくなる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】国際公開第2008/144555号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、利用履歴は時間の経過と共に大量に蓄積されていくため、一件の利用履歴からはそのIDが誰のものか調べることはできなかったとしても、大量の利用履歴を照合することで、その仮名IDがどのようにサービスを利用したのかを追跡することは可能となる。それにより、あらかじめ想定されるような特徴的なサービスの利用方法を追跡することで、仮名IDが誰のものか判ってしまうおそれがある。
【0008】
前記特許文献1の段落0116には、仮名IDを生成する時に、連続的な数字を付加することや、仮名IDを、日時、取引番号などを使って、ランダムに、あるいは、連続的に、あるいは、それらを組み合わせたアルゴリズム的な方法で生成することが述べられている。しかし、ランダムに、連続的に、あるいはアルゴリズム的な方法で仮名IDを生成したとしても、利用履歴の分析にとって適したものであるかどうかは不明であり、最悪の場合、せっかく仮名化したIDを、利用履歴を分析するたびにすべて実名に変換するという時間と手間がかかってしまう。
【課題を解決するための手段】
【0009】
本明細書では、利用履歴に含まれる仮名IDの追跡を困難にすると共に、利用履歴の分析を効率良く行うことが可能な仮名化システムが開示される。
【0010】
開示される仮名化システムは、例えば、利用者のサービス履歴データを生成する時に実名IDの仮名化を行う仮名化システムであって、利用者がサービスを利用する状況に応じて、異なる仮名IDに仮名化する仮名化部と、サービス履歴データを分析するサービス履歴分析部と、異なる仮名IDを含む複数のサービス履歴データを分析する時に、異なる仮名ID同士が同じものであるかどうかを判定する仮名ID照合部と、サービス利用状況に応じて異なる仮名IDを、サービス利用状況と対応付けて管理する仮名化変更管理部と、を備え、
サービス履歴分析部は、同じ仮名IDが出現するサービス利用状況を対象とする場合に、所定のサービス履歴分析を行い、
異なる仮名IDが出現するサービス利用状況を対象とする場合に、仮名ID照合部が、同一の利用者と見なした異なる仮名IDについて、所定のサービス履歴分析を行うことを特徴とする。
【0011】
また、仮名化部が、サービス利用時の日時、サービス利用時の地域、サービス利用時の利用者属性、のいずれか1つ以上の組み合わせにより、異なる仮名IDに仮名化しても良い。
【0012】
また、仮名化変更管理部が、サービス履歴分析部で分析する分析範囲に応じて、分析範囲と近いサービス利用状況を求め、サービス利用状況で出現する仮名IDの部分集合を用意し、仮名ID照合部が、分析範囲と近い順に、仮名IDの部分集合と順番に照合してもよい。
【0013】
さらに、仮名ID照合部が、分析範囲と近い順に、仮名IDの部分集合と順番に照合する時に、順番の最後として、仮名IDの全体集合と照合する、あるいは、仮名IDの部分集合と順番に照合していく時に途中で中止してもよい。
【0014】
また、サービス履歴データは、日時、地域、利用者属性のいずれか1つ以上の組み合わせと、ユーザIDと、サービス利用明細と、を含んでもよい。
【0015】
なお、上記仮名化システムが、サービス端末と、分析サーバと、仮名化管理サーバと、を備える場合、
サービス端末が、上記仮名化部と、上記仮名IDを使って上記サービス履歴データを生成するサービス履歴生成部を備えるものであり、
分析サーバが、上記サービス履歴分析部と、上記仮名ID照合部と、を有し、さらに、上記仮名ID照合部が同一の利用者と見なした異なる仮名IDについて、上記サービス履歴分析部が、上記サービス履歴データを分析し、分析結果を表示するものであり、
仮名化管理サーバが、上記仮名化変更管理部を有し、上記仮名化変更管理部は、利用者によるサービス利用状況に応じて異なる仮名IDの全て、あるいは、その一部を、上記サービス利用状況と対応付けて管理するものであってもよい。
【発明の効果】
【0016】
開示される内容によれば、仮名化システムにおいて、利用履歴に含まれるIDのプライバシー保護を実現できると共に、利用履歴の分析を効率良く行うことができるようになる。
【図面の簡単な説明】
【0017】
【図1】仮名化システムの全体構成を例示した図である。
【図2】サービス端末のブロック図を例示した図である。
【図3】サービス履歴データのデータ図を例示した図である。
【図4】仮名化および仮名ID照合処理の全体シーケンス図を例示した図である。
【図5】サービス履歴分析の画面インタフェース例を示した図である。
【図6】仮名ID(期間による変更)の照合処理の一例を示した図である。
【図7】仮名IDの照合優先度の一例を示した図である。
【図8】仮名ID(地域による変更)の照合処理の一例を示した図である。
【図9】仮名IDの照合優先度の一例を示した図である。
【図10】仮名ID(利用者属性による変更)の照合処理の一例を示した図である。
【発明を実施するための形態】
【0018】
以下に例示する仮名化システムは、サービス端末において、利用者に所定のサービスを提供しつつ、利用者の実名IDを含まないように利用履歴を生成すると共に、分析サーバにおける利用履歴の分析時に、異なる仮名ID同士の紐付けを効率良く行うシステムである。以下、図面を参照しつつ、仮名化システムの実施形態について説明する。
【0019】
なお、本明細書における「追跡」とは、行動履歴が同一人物のものと識別することを意味し、「リンク」ともいう。たとえば、特定の仮名による書き込みは同一人物と判別できるために、追跡(リンク)可能な状態となり、リンクできない状態と比較して匿名性は低下する。(第1実施例)
図1を使って仮名化システム100の全体構成を説明する。仮名化システム100は、サービス端末1a〜1d(サービス端末1と総称することがある)、分析サーバ2、仮名化変更管理サーバ3を含んで構成され、サービス端末1と分析サーバ2がネットワーク5で接続され、分析サーバ2と仮名化変更管理サーバ3がネットワーク6で接続された構成をとる。サービス端末1aとサービス端末1bは所定の地域4aに設置され、サービス端末1cとサービス端末1dは所定の地域4bに設置されているとする。利用者7は所定のサービスを利用するために、サービス端末1a〜1dのいずれを使っても構わない。
【0020】
サービス端末1は、仮名化Seed変更部11と、仮名化部12と、サービス履歴生成部13と、サービス履歴データ14と、仮名化Seed15とを含む。仮名化Seed変更部11は、実名IDを仮名化する時に使う仮名化Seed15を所定のルールで変更する役割をもつ。仮名化部12は、仮名化Seed15を使って実名IDを仮名化する役割をもつ。サービス履歴生成部13は、サービス履歴データ14を、仮名IDを使って生成する役割をもつ。
【0021】
分析サーバ2は、分析者8が利用するコンピュータである。分析サーバ2は、サービス履歴分析部21と、仮名ID照合部22を含む。サービス履歴分析部21は、サービス端末1からサービス履歴データ14を収集すると共に、サービス履歴データ14を分析する役割をもつ。仮名ID照合部22は、所定のルールで生成された異なる仮名ID同士をふたたび紐付ける役割をもつ。
【0022】
仮名化変更管理サーバ3は、仮名化変更管理部31と、照合優先度判定部32を含む。仮名化変更管理部31は、所定のルールで変更される仮名化Seed15を管理する役割をもつ。照合優先度判定部32は、仮名ID照合部22と連携し、一つの実名IDから生成された異なる仮名ID同士を紐付ける照合を効率化する役割をもつ。
【0023】
次に図2を使って、サービス端末1のブロック図を説明する。サービス端末1は、入力部201、出力部202、CPU203、メモリ204、記憶装置205、セキュリティチップ206、通信部207、電源部208などが、バスなどの内部通信線209で接続された構成の計算機上に実現することができる。
【0024】
入力部201は、利用者7が入力するためのインタフェースであり、例えば、カードリーダ、タッチパネル、キーボード、音声入力などである。出力部202は、利用者7にフィードバックを与えるためのインタフェースであり、例えば、画面表示、音声表示、印字などである。
【0025】
CPU203は、中央演算処理装置であり、記憶装置205に格納されたプログラムを実行することにより、以下に説明する、仮名化部12とサービス履歴生成部13の処理を実現する。メモリ204は、CPU203がプログラムを実行するときに利用する主記憶装置である。記憶装置205は、CPU203への入力データや出力データ、上述のプログラム、サービス履歴データ14を保存するための補助記憶装置である。
【0026】
セキュリティチップ206は、耐タンパ性を備えた補助演算処理および補助記憶装置であり、仮名化Seed変更部11の処理を行い、仮名化Seed15を保存する。通信部207は、外部ノードとの通信を行う通信装置であり、分析サーバ2と通信を行う。電源部208は、サービス端末1に電源を供給する装置であり、電源コンセント等と接続される。
【0027】
分析サーバ2、仮名化変更管理サーバ3は、図2のサービス端末1のブロック図と同様に、入力部201、出力部202、CPU203、メモリ204、記憶装置205、通信部207、電源部208、バスなどの内部通信線209を含んで構成される計算機上に実現することができる。
【0028】
さらに図3を使って、サービス履歴データ14のデータ構造を説明する。サービス履歴データ14は、日時301、地域302、利用者属性303、ユーザID304、サービス利用明細305を項目に含む1つのレコードを、1つ以上含んで構成されるデータ構造をもつ。利用者7がサービス端末1でサービス利用を受けるたびに、サービス履歴生成部13がサービス履歴データ14に1つ以上のレコードを追加していく。サービス利用明細305は、電子商取引サービスを例に取ると、購入アイテムや購入金額などが含まれる。ここで、日時301、地域302、利用者属性303は、少なくとも1つ以上、あるいは、それらの組み合わせを含んでいれば良い。説明を簡単にするため、第1実施例では、日時301だけを含むとする。
【0029】
以上説明してきたシステム構成図およびデータ構造を用いつつ、次に図4を使って、サービス端末1、分析サーバ2、仮名化変更管理サーバ3が連携して、仮名化処理および仮名ID照合処理を行う全体シーケンスを説明する。全体シーケンスは、大きく、仮名化Seed変更定義400、サービス提供410、サービス履歴分析420の3つのフェーズを含む。
【0030】
仮名化Seed変更定義フェーズ400では、まず、サービス端末1と仮名化変更管理サーバ3が連携して、仮名化Seed15の変更ルールを決め合う(ステップ401、ステップ402)。例えば、サービス端末1の出荷前に、変更ルールとして仮名化Seed変更部11と仮名化Seed15を、セキュリティチップ206に格納し、出荷後はセキュリティチップ206の耐タンパ性を活用することで、仮名化Seed変更部11と仮名化Seed15を不正に改ざん、破壊、削除などをできないようにする。
【0031】
第1実施例では、変更ルールの一例として、毎月、仮名化Seedを変更することとする。
【0032】
ステップ401、ステップ402は、必ずしも、サービス端末1と仮名化変更管理サーバ3が行わなくてもよく、人手による処理であっても良い。あるいは、ステップ401、ステップ402は、仮名化Seed15を変更する必要があるかどうかを、サービス端末1が仮名化変更管理サーバ3にネットワーク5およびネットワーク6を通じて問い合わせるものであっても良い。仮名化変更管理サーバ3では、変更ルールに従って変更されていく仮名化Seed15をすべて記録する(ステップ403)。
【0033】
続いて、サービス提供フェーズ410では、サービス端末1が、利用者7に対してサービス提供を待っている状態から開始する(ステップ411)。サービス端末1が利用者7にサービス提供を開始すると、例えばカードを読み取るなどして、入力部201が実名IDを受け付ける(ステップ412)。受け付けた実名IDは、仮名化部12が仮名IDへと仮名化する(ステップ413)。ここで、仮名化の一例として、実名IDと仮名化Seed15とを組み合わせ、一方向性関数を通すことで、仮名IDを生成する。仮名化Seed15が毎月変わることで、同じ実名IDであっても、ある月の仮名IDと翌月の仮名IDとは異なるものとなる。サービス履歴生成部13は、仮名IDを使ってサービス履歴データ14に、日時301、ユーザID304、サービス利用履歴305を含む1つ以上のレコードを追加する。サービス端末1は、ふたたび、ステップ411のサービス提供を待っている状態へと戻る(ステップ414)。
【0034】
サービス提供フェーズ410では、さらに定期的あるいは分析者8の操作に応じて、分析サーバ2がサービス端末1からサービス履歴データ14を収集する(ステップ415)。収集が確認できた後は、サービス端末1の記憶装置205から、サービス履歴データ14を削除しても良い。
【0035】
サービス履歴分析フェーズ420では、まず分析者8がサービス履歴データ14のうち、どの範囲を分析するのかを指定する(ステップ421)。
【0036】
分析範囲を指定するインタフェースの一例を、図5を使って説明する。画面500は、期間を指定するチェックボックス501、地域を指定するチェックボックス502、利用者属性を指定するチェックボックス503、分析ボタン504から構成される。第1実施例では、地域を指定するチェックボックス502、利用者属性を指定するチェックボックス503は使用しない。分析者8は、期間を指定するチェックボックス501で、分析範囲とする月のチェックボックス501に印をつけ、分析ボタン504を押下して、分析を開始する。
【0037】
サービス履歴分析フェーズ420の次のステップでは、分析範囲を仮名化変更管理部31に問い合わせ、分析範囲が、同一の仮名化Seed15で生成される仮名IDだけが含まれるのか、そうでないのかを確認する(ステップ422)。ステップ422の確認結果に応じて、続く処理を分岐する(ステップ423)。
【0038】
ステップ423で、分析範囲に、もし同一の仮名化Seed15で生成される仮名IDだけが含まれるのならば、サービス履歴分析部21が、サービス履歴データ14を分析し、分析結果を表示する(ステップ424)。
【0039】
分析結果を表示するインタフェースの一例を、図5を使って説明する。画面510は、指定された期間における、利用頻度の分析結果を示すリストボックス511と、利用合計額の分析結果を示すリストボックス512と、印刷ボタン513と、閉じるボタン514から構成される。分析者8は、利用頻度のリストボックス511を参照して、どの仮名IDが何度サービスを利用したのかを知ることができる。また利用合計額のリストボックス512を参照して、どの仮名IDがいくらサービスを利用したのかを知ることができる。
【0040】
ふたたびサービス履歴分析フェーズ420において、ステップ423で、分析範囲に、もし同一の仮名化Seed15で生成される仮名IDだけが含まれないのであれば、仮名ID照合部22は、仮名化変更管理部31に問い合わせて、ある月の仮名IDが、違う月の仮名IDと同じであるかどうかを調べる(ステップ425、ステップ426)。同じ仮名ID同士を紐付けした上で、サービス履歴分析部21が、サービス履歴データ14を分析する(ステップ424)。
【0041】
以上述べてきた全体シーケンス図をさらに具体的に説明するため、図6を使って具体例を交えつつ説明する。
【0042】
図6では、1月にサービス端末1を利用した結果により生成された1月分のサービス履歴データ601と、2月にサービス端末1を利用した結果により生成された2月分のサービス履歴データ602があるとする。利用者7の実名IDを「A」であるとして、1月分のサービス履歴データ601では「A1」に仮名化され、2月分のサービス履歴データ602では「A2」に仮名化されているとする。
【0043】
分析者8は、これらサービス履歴データ601、602をインプットとして、3種類の分析を行うこととする。
・1月分のサービス履歴データの分析603
・2月分のサービス履歴データの分析604
・1〜2月分のサービス履歴データの分析605
上記分析の切り替えは、分析者8が図5に示した期間のチェックボックス501で指定することができる。
【0044】
分析603では、実名ID「A」によるサービス履歴はすべて仮名ID「A1」として記録されているので、仮名ID「A1」に関する利用頻度や利用合計額などを、サービス履歴データ601をそのまま分析することで計算できる。説明のため、利用頻度がX回であったとする。
【0045】
同様に分析604も、実名ID「A」によるサービス履歴はすべて仮名ID「A2」として記録されているので、仮名ID「A2」に関する利用頻度や利用合計額などを、サービス履歴データ602をそのまま分析することで計算できる。説明のため、利用頻度がY回であったとする。
【0046】
最後に分析605では、実名ID「A」によるサービス履歴は仮名ID「A1」と「A2」が混在している。しかし、図3に示したサービス履歴データ14によると、ユーザID304と日時301とがペアになって記録されているため、日時301を確認すれば1月にはユーザID「A1」が2月にはユーザID「A2」が出てくることが予想される。ここで、1月にユーザID「A2」が出ること、2月にユーザID「A1」が出ることは、エラーとして処理しても良い。1月に出てきたユーザID「A1」と2月に出てきたユーザID「A2」が同一利用者であるかどうかは、仮名化変更管理サーバ3に問い合わせることで確認できる。このようにして、仮名ID「A1」の利用者が、1〜2月にZ(=X+Y)回サービスを利用していることが計算できる。
【0047】
さて図7を使って、仮名化変更管理サーバ3の照合優先度判定部32の処理を説明する。ここでは分析範囲が1〜2月であるとして、2月分のサービス履歴データ700に含まれる仮名IDを、1月分の仮名IDの全体集合710と照合することとする。
【0048】
単純に照合するには、サービス履歴データ700に含まれる仮名IDが、2月分の仮名IDの全体集合701のどれにあたるかを検索し、2月分の全体集合701と対応付け740で紐付けられた実名IDの全体集合730から実名IDを検索し、さらに全体集合730と対応付け741で紐付けられた1月分の仮名IDの全体集合710から仮名IDを検索する方法であっても良い。
【0049】
照合優先度判定部32はさらに、1月分の仮名IDの全体集合710から、1月分のサービス履歴データに出現していた仮名IDの部分集合711を作っておき、前記部分集合711と紐付けられた、2月分の仮名IDの部分集合712を作っておく。2月分のサービス履歴データ700との照合は、前記部分集合712とを第1の優先度で行う。
【0050】
同様に、前年12月分の仮名IDの全体集合720から、前年12月分のサービス履歴データに出現していた仮名IDの部分集合721を作っておき、前記部分集合721と紐付けられた2月分の仮名IDの部分集合722を作っておく。2月分のサービス履歴データ700との照合は、前記部分集合722とを第2の優先度で行う。
【0051】
以下、順に過去にさかのぼりつつ、2月分の仮名IDの部分集合を作っておき、サービス履歴データ700との照合を行う。最終的には、2月分の仮名IDの全体集合701との照合を行う。あるいは、順に過去にさかのぼる途中で照合を中止するものであっても良い。
【0052】
このように照合優先度判定部32が優先度を判定して部分集合ごとに順に検索を行うことで、仮名IDの全体集合をくまなく探すことに比べて、よりヒットしやすい仮名IDを効率良く見つけてくることができる。
【0053】
以上、第1の実施例による仮名化システム100を述べてきた。仮名化システム100により、サービス履歴データに含まれる仮名IDを、長期間にわたって追跡(リンク)することを困難にすると共に、長期間にわたるサービス履歴データの分析であっても効率良く行うことができる。
(第2実施例)
第2実施例における仮名化システムは、図1に示した仮名化システム100と同じシステム構成をとる。第1実施例との違いは、図3のサービス履歴データ14において、地域302の列と、ユーザID304の組み合わせを必ず含むことと、図4の仮名化Seed変更定義401において、図1に示した地域4aおよび地域4bに応じて仮名化Seed15を異なるものとすることである。
【0054】
図8を使って、第2実施例における仮名IDの照合処理の具体例を説明する。図8では、日本でサービス端末1を利用した結果により生成された日本分のサービス履歴データ801と、米国でサービス端末1を利用した結果による米国分のサービス履歴データ802があるとする。利用者7の実名IDを「A」であるとして、日本分のサービス履歴データ801では「A1」に仮名化され、米国分のサービス履歴データ802では「A2」に仮名化されているとする。
【0055】
分析者8は、これらサービス履歴データ801、802をインプットとして、3種類の分析を行うこととする。
・日本分のサービス履歴データの分析803
・米国分のサービス履歴データの分析804
・日本と米国分を合わせたサービス履歴データの分析805
上記分析の切り替えは、分析者8が図5に示した地域のチェックボックス502で指定することができる。
【0056】
分析803では、実名ID「A」によるサービス履歴はすべて仮名ID「A1」として記録されているので、仮名ID「A1」に関する利用頻度や利用合計額などを、サービス履歴データ801をそのまま分析することで計算できる。説明のため、利用頻度がX回であったとする。
【0057】
同様に分析804も、実名ID「A」によるサービス履歴はすべて仮名ID「A2」として記録されているので、仮名ID「A2」に関する利用頻度や利用合計額などを、サービス履歴データ802をそのまま分析することで計算できる。説明のため、利用頻度がY回であったとする。
【0058】
最後に分析805では、実名ID「A」によるサービス履歴は仮名ID「A1」と「A2」が混在している。しかし、図3に示したサービス履歴データ14によると、ユーザID304と地域302とがペアで記録されているため、地域302を確認すれば日本ではユーザID「A1」が米国ではユーザID「A2」が出てくることが予想される。ここで、日本にユーザID「A2」が出ること、米国にユーザID「A1」が出ることは、エラーとして処理しても良い。日本に出てきたユーザID「A1」と米国に出てきたユーザID「A2」が同一利用者であるかどうかは、仮名化変更管理サーバ3に問い合わせることで確認できる。このようにして、仮名ID「A1」の利用者が、日本と米国でZ(=X+Y)回サービスを利用していることが計算できる。
【0059】
次に図9を使って、仮名化変更管理サーバ3の照合優先度判定部32の処理を説明する。ここでは分析範囲が日本と米国であるとして、日本分のサービス履歴データ900に含まれる仮名IDを、米国分の仮名IDの全体集合910と照合することとする。
【0060】
照合優先度判定部32は、米国分の仮名IDの全体集合910から、米国分のサービス履歴データに出現していた仮名IDの部分集合911を作っておき、前記部分集合911と紐付けられた、日本分の仮名IDの部分集合912を作っておく。日本分のサービス履歴データ900との照合は、前記部分集合912とを第1の優先度で行う。
【0061】
同様に、中国分の仮名IDの全体集合920から、中国分のサービス履歴データに出現していた仮名IDの部分集合921を作っておき、前記部分集合921と紐付けられた日本分の仮名IDの部分集合922を作っておく。日本分のサービス履歴データ900との照合は、前記部分集合922とを第2の優先度で行う。
【0062】
以下、日本と近い地域の順に、日本分の仮名IDの部分集合を作っておき、サービス履歴データ900との照合を行う。最終的には、日本分の仮名IDの全体集合901との照合を行う。あるいは、日本と近い地域の順に照合を途中で中止するものであっても良い。
【0063】
このように照合優先度判定部32が優先度を判定して部分集合ごとに順に検索を行うことで、仮名IDの全体集合をくまなく探すことに比べて、よりヒットしやすい仮名IDを優先的に見つけてくることができる。
【0064】
以上述べてきた第2の実施例により、サービス履歴データに含まれる仮名IDを、地域をまたがって追跡(リンク)することを困難にすると共に、地域をまたがるサービス履歴データの分析であっても効率良く行うことができる。
(第3実施例)
第3実施例における仮名化システムは、図1に示した仮名化システム100と同じシステム構成をとる。第1実施例との違いは、図3のサービス履歴データ14において、利用者属性303の列と、ユーザID304の組み合わせを必ず含むことと、図4の仮名化Seed変更定義401において、前記利用者属性303に応じて仮名化Seed15を異なるものとすることである。なお、利用者属性とは、年代、性別、趣味、購入金額などであり、利用者7が入力するものであっても、(図示していない)店員が入力するものであっても良い。
【0065】
図10を使って、第3実施例における仮名IDの照合処理の具体例を説明する。図10では、20代としてサービス端末1を利用した結果により生成された20代分のサービス履歴データ1001と、30代としてサービス端末1を利用した結果による30代分のサービス履歴データ1002があるとする。利用者7の実名IDを「A」であるとして、20代分のサービス履歴データ1001では「A1」に仮名化され、30代分のサービス履歴データ1002では「A2」に仮名化されているとする。
【0066】
分析者8は、これらサービス履歴データ1001、1002をインプットとして、3種類の分析を行うこととする。
・20代分のサービス履歴データの分析1003
・30代分のサービス履歴データの分析1004
・20〜30代分のサービス履歴データの分析1005
上記分析の切り替えは、分析者8が図5に示した利用者属性のチェックボックス503で指定することができる。
【0067】
分析1003では、実名ID「A」によるサービス履歴はすべて仮名ID「A1」として記録されているので、仮名ID「A1」に関する利用頻度や利用合計額などを、サービス履歴データ1001をそのまま分析することで計算できる。説明のため、利用頻度がX回であったとする。
【0068】
同様に分析1004も、実名ID「A」によるサービス履歴はすべて仮名ID「A2」として記録されているので、仮名ID「A2」に関する利用頻度や利用合計額などを、サービス履歴データ1002をそのまま分析することで計算できる。説明のため、利用頻度がY回であったとする。
【0069】
最後に分析1005では、実名ID「A」によるサービス履歴は仮名ID「A1」と「A2」が混在しているかもしれない。しかし、図3に示したサービス履歴データ14によると、ユーザID304と利用者属性303とがペアで記録されているため、利用者属性303を確認すれば20代ではユーザID「A1」が、30代ではユーザID「A2」が出てくることが予想される。ここで、20代にユーザID「A2」が出ること、30代にユーザID「A1」が出ることは、エラーとして処理しても良い。20代に出てきたユーザID「A1」と30代に出てきたユーザID「A2」が同一利用者であるかどうかは、仮名化変更管理サーバ3に問い合わせることで確認できる。このようにして、仮名ID「A1」の利用者が、日本と米国でZ(=X+Y)回サービスを利用していることが計算できる。
【0070】
以上述べてきた第3の実施例により、サービス履歴データに含まれる仮名IDを、利用者属性を越えて追跡(リンク)することを困難にできる。
【0071】
以上、本発明の実施形態を具体的に説明したが、本発明は、これらの実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【0072】
1:サービス端末
2:分析サーバ
3:仮名化変更管理サーバ
4:地域
5:ネットワーク
6:ネットワーク
7:利用者
8:分析者
11:仮名化Seed変更部
12:仮名化部
13:サービル履歴生成部
14:サービス履歴データ
15:仮名化Seed
21:サービス履歴分析部
22:仮名ID照合部
31:仮名化変更管理部
32:照合優先度判定部
100:仮名化システム
201:入力部
202:出力部
203:CPU
204:メモリ
205:記憶装置
206:セキュリティチップ
207:通信部
208:電源部
【技術分野】
【0001】
本明細書で開示される主題は、利用者IDのプライバシー保護技術、および、プライバシー保護を実現する仮名化システムに関する。
【背景技術】
【0002】
近年、企業活動や社会生活へのIT普及に伴い、電子商取引サービスや公共サービスなどの各種ITサービスを利用する上で、利用者と紐付けられたIDを提示することが増えている。例えば、クレジットカード番号であれば16桁の数字からなるIDを使って利用者との紐付けを行い、住民基本台帳カードであれば11桁の数字をIDとして使って利用者との紐付けを行う。その他にも、パスポート番号、免許証番号、企業が割り振る従業員番号、学校が割り振る学生番号など、IDの具体例は多岐に及ぶ。システムから見ると、IDを受け付けることで、利用者を一意に特定でき、利用者それぞれに適したサービスを提供することができる。
【0003】
一方、こうしたサービスを提供する上では、いつ、どこで、誰に、どんなサービスを提供したという利用履歴が残されることが多い。さらに「誰に」を示すにはIDが使われることが多い。サービス提供側は利用履歴を残すことで、その利用者に課金する場合のエビデンスとすることや、サービス向上のためのマーケティング分析などに活用することが多い。特に近年、過去の利用履歴を分析することで、利用者の傾向や、季節や地域などに応じたきめ細かいサービスを提供することも増えている。
【0004】
利用履歴の分析は、ストレージ容量や計算量の点で多くのリソースを必要とすることから、自社内のリソースだけでは分析できないという理由で、外部に委託して分析する機会も増えつつあり、ビジネス・インテリジェンス・サービスや、データ・ウェア・ハウス・サービスなどと呼ばれるサービスの利用も増えている。しかし外部に委託してしまうと、自社から見てセキュリティのコントロールが届きにくくなり、漏洩リスクが増すため、利用履歴に含まれるIDのプライバシー保護が問題となっている。
【0005】
特許文献1によれば、IDとしてクレジットカード番号を対象に、クレジットカードを読み取るPOS端末上でそのクレジットカード番号を仮名化し、以降、仮名化されたクレジット番号を使って利用履歴(ログ)を記録することが記載されている。さらに仮名化されたクレジットカード番号と実名のクレジットカード番号との対応関係を管理するサーバを有することで、必要に応じて仮名から実名へと変換できることが記載されている。特許文献1によるIDの仮名化により、利用履歴に含まれるIDだけを見ても、そのIDが誰のものか調べることができなくなる。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】国際公開第2008/144555号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかし、利用履歴は時間の経過と共に大量に蓄積されていくため、一件の利用履歴からはそのIDが誰のものか調べることはできなかったとしても、大量の利用履歴を照合することで、その仮名IDがどのようにサービスを利用したのかを追跡することは可能となる。それにより、あらかじめ想定されるような特徴的なサービスの利用方法を追跡することで、仮名IDが誰のものか判ってしまうおそれがある。
【0008】
前記特許文献1の段落0116には、仮名IDを生成する時に、連続的な数字を付加することや、仮名IDを、日時、取引番号などを使って、ランダムに、あるいは、連続的に、あるいは、それらを組み合わせたアルゴリズム的な方法で生成することが述べられている。しかし、ランダムに、連続的に、あるいはアルゴリズム的な方法で仮名IDを生成したとしても、利用履歴の分析にとって適したものであるかどうかは不明であり、最悪の場合、せっかく仮名化したIDを、利用履歴を分析するたびにすべて実名に変換するという時間と手間がかかってしまう。
【課題を解決するための手段】
【0009】
本明細書では、利用履歴に含まれる仮名IDの追跡を困難にすると共に、利用履歴の分析を効率良く行うことが可能な仮名化システムが開示される。
【0010】
開示される仮名化システムは、例えば、利用者のサービス履歴データを生成する時に実名IDの仮名化を行う仮名化システムであって、利用者がサービスを利用する状況に応じて、異なる仮名IDに仮名化する仮名化部と、サービス履歴データを分析するサービス履歴分析部と、異なる仮名IDを含む複数のサービス履歴データを分析する時に、異なる仮名ID同士が同じものであるかどうかを判定する仮名ID照合部と、サービス利用状況に応じて異なる仮名IDを、サービス利用状況と対応付けて管理する仮名化変更管理部と、を備え、
サービス履歴分析部は、同じ仮名IDが出現するサービス利用状況を対象とする場合に、所定のサービス履歴分析を行い、
異なる仮名IDが出現するサービス利用状況を対象とする場合に、仮名ID照合部が、同一の利用者と見なした異なる仮名IDについて、所定のサービス履歴分析を行うことを特徴とする。
【0011】
また、仮名化部が、サービス利用時の日時、サービス利用時の地域、サービス利用時の利用者属性、のいずれか1つ以上の組み合わせにより、異なる仮名IDに仮名化しても良い。
【0012】
また、仮名化変更管理部が、サービス履歴分析部で分析する分析範囲に応じて、分析範囲と近いサービス利用状況を求め、サービス利用状況で出現する仮名IDの部分集合を用意し、仮名ID照合部が、分析範囲と近い順に、仮名IDの部分集合と順番に照合してもよい。
【0013】
さらに、仮名ID照合部が、分析範囲と近い順に、仮名IDの部分集合と順番に照合する時に、順番の最後として、仮名IDの全体集合と照合する、あるいは、仮名IDの部分集合と順番に照合していく時に途中で中止してもよい。
【0014】
また、サービス履歴データは、日時、地域、利用者属性のいずれか1つ以上の組み合わせと、ユーザIDと、サービス利用明細と、を含んでもよい。
【0015】
なお、上記仮名化システムが、サービス端末と、分析サーバと、仮名化管理サーバと、を備える場合、
サービス端末が、上記仮名化部と、上記仮名IDを使って上記サービス履歴データを生成するサービス履歴生成部を備えるものであり、
分析サーバが、上記サービス履歴分析部と、上記仮名ID照合部と、を有し、さらに、上記仮名ID照合部が同一の利用者と見なした異なる仮名IDについて、上記サービス履歴分析部が、上記サービス履歴データを分析し、分析結果を表示するものであり、
仮名化管理サーバが、上記仮名化変更管理部を有し、上記仮名化変更管理部は、利用者によるサービス利用状況に応じて異なる仮名IDの全て、あるいは、その一部を、上記サービス利用状況と対応付けて管理するものであってもよい。
【発明の効果】
【0016】
開示される内容によれば、仮名化システムにおいて、利用履歴に含まれるIDのプライバシー保護を実現できると共に、利用履歴の分析を効率良く行うことができるようになる。
【図面の簡単な説明】
【0017】
【図1】仮名化システムの全体構成を例示した図である。
【図2】サービス端末のブロック図を例示した図である。
【図3】サービス履歴データのデータ図を例示した図である。
【図4】仮名化および仮名ID照合処理の全体シーケンス図を例示した図である。
【図5】サービス履歴分析の画面インタフェース例を示した図である。
【図6】仮名ID(期間による変更)の照合処理の一例を示した図である。
【図7】仮名IDの照合優先度の一例を示した図である。
【図8】仮名ID(地域による変更)の照合処理の一例を示した図である。
【図9】仮名IDの照合優先度の一例を示した図である。
【図10】仮名ID(利用者属性による変更)の照合処理の一例を示した図である。
【発明を実施するための形態】
【0018】
以下に例示する仮名化システムは、サービス端末において、利用者に所定のサービスを提供しつつ、利用者の実名IDを含まないように利用履歴を生成すると共に、分析サーバにおける利用履歴の分析時に、異なる仮名ID同士の紐付けを効率良く行うシステムである。以下、図面を参照しつつ、仮名化システムの実施形態について説明する。
【0019】
なお、本明細書における「追跡」とは、行動履歴が同一人物のものと識別することを意味し、「リンク」ともいう。たとえば、特定の仮名による書き込みは同一人物と判別できるために、追跡(リンク)可能な状態となり、リンクできない状態と比較して匿名性は低下する。(第1実施例)
図1を使って仮名化システム100の全体構成を説明する。仮名化システム100は、サービス端末1a〜1d(サービス端末1と総称することがある)、分析サーバ2、仮名化変更管理サーバ3を含んで構成され、サービス端末1と分析サーバ2がネットワーク5で接続され、分析サーバ2と仮名化変更管理サーバ3がネットワーク6で接続された構成をとる。サービス端末1aとサービス端末1bは所定の地域4aに設置され、サービス端末1cとサービス端末1dは所定の地域4bに設置されているとする。利用者7は所定のサービスを利用するために、サービス端末1a〜1dのいずれを使っても構わない。
【0020】
サービス端末1は、仮名化Seed変更部11と、仮名化部12と、サービス履歴生成部13と、サービス履歴データ14と、仮名化Seed15とを含む。仮名化Seed変更部11は、実名IDを仮名化する時に使う仮名化Seed15を所定のルールで変更する役割をもつ。仮名化部12は、仮名化Seed15を使って実名IDを仮名化する役割をもつ。サービス履歴生成部13は、サービス履歴データ14を、仮名IDを使って生成する役割をもつ。
【0021】
分析サーバ2は、分析者8が利用するコンピュータである。分析サーバ2は、サービス履歴分析部21と、仮名ID照合部22を含む。サービス履歴分析部21は、サービス端末1からサービス履歴データ14を収集すると共に、サービス履歴データ14を分析する役割をもつ。仮名ID照合部22は、所定のルールで生成された異なる仮名ID同士をふたたび紐付ける役割をもつ。
【0022】
仮名化変更管理サーバ3は、仮名化変更管理部31と、照合優先度判定部32を含む。仮名化変更管理部31は、所定のルールで変更される仮名化Seed15を管理する役割をもつ。照合優先度判定部32は、仮名ID照合部22と連携し、一つの実名IDから生成された異なる仮名ID同士を紐付ける照合を効率化する役割をもつ。
【0023】
次に図2を使って、サービス端末1のブロック図を説明する。サービス端末1は、入力部201、出力部202、CPU203、メモリ204、記憶装置205、セキュリティチップ206、通信部207、電源部208などが、バスなどの内部通信線209で接続された構成の計算機上に実現することができる。
【0024】
入力部201は、利用者7が入力するためのインタフェースであり、例えば、カードリーダ、タッチパネル、キーボード、音声入力などである。出力部202は、利用者7にフィードバックを与えるためのインタフェースであり、例えば、画面表示、音声表示、印字などである。
【0025】
CPU203は、中央演算処理装置であり、記憶装置205に格納されたプログラムを実行することにより、以下に説明する、仮名化部12とサービス履歴生成部13の処理を実現する。メモリ204は、CPU203がプログラムを実行するときに利用する主記憶装置である。記憶装置205は、CPU203への入力データや出力データ、上述のプログラム、サービス履歴データ14を保存するための補助記憶装置である。
【0026】
セキュリティチップ206は、耐タンパ性を備えた補助演算処理および補助記憶装置であり、仮名化Seed変更部11の処理を行い、仮名化Seed15を保存する。通信部207は、外部ノードとの通信を行う通信装置であり、分析サーバ2と通信を行う。電源部208は、サービス端末1に電源を供給する装置であり、電源コンセント等と接続される。
【0027】
分析サーバ2、仮名化変更管理サーバ3は、図2のサービス端末1のブロック図と同様に、入力部201、出力部202、CPU203、メモリ204、記憶装置205、通信部207、電源部208、バスなどの内部通信線209を含んで構成される計算機上に実現することができる。
【0028】
さらに図3を使って、サービス履歴データ14のデータ構造を説明する。サービス履歴データ14は、日時301、地域302、利用者属性303、ユーザID304、サービス利用明細305を項目に含む1つのレコードを、1つ以上含んで構成されるデータ構造をもつ。利用者7がサービス端末1でサービス利用を受けるたびに、サービス履歴生成部13がサービス履歴データ14に1つ以上のレコードを追加していく。サービス利用明細305は、電子商取引サービスを例に取ると、購入アイテムや購入金額などが含まれる。ここで、日時301、地域302、利用者属性303は、少なくとも1つ以上、あるいは、それらの組み合わせを含んでいれば良い。説明を簡単にするため、第1実施例では、日時301だけを含むとする。
【0029】
以上説明してきたシステム構成図およびデータ構造を用いつつ、次に図4を使って、サービス端末1、分析サーバ2、仮名化変更管理サーバ3が連携して、仮名化処理および仮名ID照合処理を行う全体シーケンスを説明する。全体シーケンスは、大きく、仮名化Seed変更定義400、サービス提供410、サービス履歴分析420の3つのフェーズを含む。
【0030】
仮名化Seed変更定義フェーズ400では、まず、サービス端末1と仮名化変更管理サーバ3が連携して、仮名化Seed15の変更ルールを決め合う(ステップ401、ステップ402)。例えば、サービス端末1の出荷前に、変更ルールとして仮名化Seed変更部11と仮名化Seed15を、セキュリティチップ206に格納し、出荷後はセキュリティチップ206の耐タンパ性を活用することで、仮名化Seed変更部11と仮名化Seed15を不正に改ざん、破壊、削除などをできないようにする。
【0031】
第1実施例では、変更ルールの一例として、毎月、仮名化Seedを変更することとする。
【0032】
ステップ401、ステップ402は、必ずしも、サービス端末1と仮名化変更管理サーバ3が行わなくてもよく、人手による処理であっても良い。あるいは、ステップ401、ステップ402は、仮名化Seed15を変更する必要があるかどうかを、サービス端末1が仮名化変更管理サーバ3にネットワーク5およびネットワーク6を通じて問い合わせるものであっても良い。仮名化変更管理サーバ3では、変更ルールに従って変更されていく仮名化Seed15をすべて記録する(ステップ403)。
【0033】
続いて、サービス提供フェーズ410では、サービス端末1が、利用者7に対してサービス提供を待っている状態から開始する(ステップ411)。サービス端末1が利用者7にサービス提供を開始すると、例えばカードを読み取るなどして、入力部201が実名IDを受け付ける(ステップ412)。受け付けた実名IDは、仮名化部12が仮名IDへと仮名化する(ステップ413)。ここで、仮名化の一例として、実名IDと仮名化Seed15とを組み合わせ、一方向性関数を通すことで、仮名IDを生成する。仮名化Seed15が毎月変わることで、同じ実名IDであっても、ある月の仮名IDと翌月の仮名IDとは異なるものとなる。サービス履歴生成部13は、仮名IDを使ってサービス履歴データ14に、日時301、ユーザID304、サービス利用履歴305を含む1つ以上のレコードを追加する。サービス端末1は、ふたたび、ステップ411のサービス提供を待っている状態へと戻る(ステップ414)。
【0034】
サービス提供フェーズ410では、さらに定期的あるいは分析者8の操作に応じて、分析サーバ2がサービス端末1からサービス履歴データ14を収集する(ステップ415)。収集が確認できた後は、サービス端末1の記憶装置205から、サービス履歴データ14を削除しても良い。
【0035】
サービス履歴分析フェーズ420では、まず分析者8がサービス履歴データ14のうち、どの範囲を分析するのかを指定する(ステップ421)。
【0036】
分析範囲を指定するインタフェースの一例を、図5を使って説明する。画面500は、期間を指定するチェックボックス501、地域を指定するチェックボックス502、利用者属性を指定するチェックボックス503、分析ボタン504から構成される。第1実施例では、地域を指定するチェックボックス502、利用者属性を指定するチェックボックス503は使用しない。分析者8は、期間を指定するチェックボックス501で、分析範囲とする月のチェックボックス501に印をつけ、分析ボタン504を押下して、分析を開始する。
【0037】
サービス履歴分析フェーズ420の次のステップでは、分析範囲を仮名化変更管理部31に問い合わせ、分析範囲が、同一の仮名化Seed15で生成される仮名IDだけが含まれるのか、そうでないのかを確認する(ステップ422)。ステップ422の確認結果に応じて、続く処理を分岐する(ステップ423)。
【0038】
ステップ423で、分析範囲に、もし同一の仮名化Seed15で生成される仮名IDだけが含まれるのならば、サービス履歴分析部21が、サービス履歴データ14を分析し、分析結果を表示する(ステップ424)。
【0039】
分析結果を表示するインタフェースの一例を、図5を使って説明する。画面510は、指定された期間における、利用頻度の分析結果を示すリストボックス511と、利用合計額の分析結果を示すリストボックス512と、印刷ボタン513と、閉じるボタン514から構成される。分析者8は、利用頻度のリストボックス511を参照して、どの仮名IDが何度サービスを利用したのかを知ることができる。また利用合計額のリストボックス512を参照して、どの仮名IDがいくらサービスを利用したのかを知ることができる。
【0040】
ふたたびサービス履歴分析フェーズ420において、ステップ423で、分析範囲に、もし同一の仮名化Seed15で生成される仮名IDだけが含まれないのであれば、仮名ID照合部22は、仮名化変更管理部31に問い合わせて、ある月の仮名IDが、違う月の仮名IDと同じであるかどうかを調べる(ステップ425、ステップ426)。同じ仮名ID同士を紐付けした上で、サービス履歴分析部21が、サービス履歴データ14を分析する(ステップ424)。
【0041】
以上述べてきた全体シーケンス図をさらに具体的に説明するため、図6を使って具体例を交えつつ説明する。
【0042】
図6では、1月にサービス端末1を利用した結果により生成された1月分のサービス履歴データ601と、2月にサービス端末1を利用した結果により生成された2月分のサービス履歴データ602があるとする。利用者7の実名IDを「A」であるとして、1月分のサービス履歴データ601では「A1」に仮名化され、2月分のサービス履歴データ602では「A2」に仮名化されているとする。
【0043】
分析者8は、これらサービス履歴データ601、602をインプットとして、3種類の分析を行うこととする。
・1月分のサービス履歴データの分析603
・2月分のサービス履歴データの分析604
・1〜2月分のサービス履歴データの分析605
上記分析の切り替えは、分析者8が図5に示した期間のチェックボックス501で指定することができる。
【0044】
分析603では、実名ID「A」によるサービス履歴はすべて仮名ID「A1」として記録されているので、仮名ID「A1」に関する利用頻度や利用合計額などを、サービス履歴データ601をそのまま分析することで計算できる。説明のため、利用頻度がX回であったとする。
【0045】
同様に分析604も、実名ID「A」によるサービス履歴はすべて仮名ID「A2」として記録されているので、仮名ID「A2」に関する利用頻度や利用合計額などを、サービス履歴データ602をそのまま分析することで計算できる。説明のため、利用頻度がY回であったとする。
【0046】
最後に分析605では、実名ID「A」によるサービス履歴は仮名ID「A1」と「A2」が混在している。しかし、図3に示したサービス履歴データ14によると、ユーザID304と日時301とがペアになって記録されているため、日時301を確認すれば1月にはユーザID「A1」が2月にはユーザID「A2」が出てくることが予想される。ここで、1月にユーザID「A2」が出ること、2月にユーザID「A1」が出ることは、エラーとして処理しても良い。1月に出てきたユーザID「A1」と2月に出てきたユーザID「A2」が同一利用者であるかどうかは、仮名化変更管理サーバ3に問い合わせることで確認できる。このようにして、仮名ID「A1」の利用者が、1〜2月にZ(=X+Y)回サービスを利用していることが計算できる。
【0047】
さて図7を使って、仮名化変更管理サーバ3の照合優先度判定部32の処理を説明する。ここでは分析範囲が1〜2月であるとして、2月分のサービス履歴データ700に含まれる仮名IDを、1月分の仮名IDの全体集合710と照合することとする。
【0048】
単純に照合するには、サービス履歴データ700に含まれる仮名IDが、2月分の仮名IDの全体集合701のどれにあたるかを検索し、2月分の全体集合701と対応付け740で紐付けられた実名IDの全体集合730から実名IDを検索し、さらに全体集合730と対応付け741で紐付けられた1月分の仮名IDの全体集合710から仮名IDを検索する方法であっても良い。
【0049】
照合優先度判定部32はさらに、1月分の仮名IDの全体集合710から、1月分のサービス履歴データに出現していた仮名IDの部分集合711を作っておき、前記部分集合711と紐付けられた、2月分の仮名IDの部分集合712を作っておく。2月分のサービス履歴データ700との照合は、前記部分集合712とを第1の優先度で行う。
【0050】
同様に、前年12月分の仮名IDの全体集合720から、前年12月分のサービス履歴データに出現していた仮名IDの部分集合721を作っておき、前記部分集合721と紐付けられた2月分の仮名IDの部分集合722を作っておく。2月分のサービス履歴データ700との照合は、前記部分集合722とを第2の優先度で行う。
【0051】
以下、順に過去にさかのぼりつつ、2月分の仮名IDの部分集合を作っておき、サービス履歴データ700との照合を行う。最終的には、2月分の仮名IDの全体集合701との照合を行う。あるいは、順に過去にさかのぼる途中で照合を中止するものであっても良い。
【0052】
このように照合優先度判定部32が優先度を判定して部分集合ごとに順に検索を行うことで、仮名IDの全体集合をくまなく探すことに比べて、よりヒットしやすい仮名IDを効率良く見つけてくることができる。
【0053】
以上、第1の実施例による仮名化システム100を述べてきた。仮名化システム100により、サービス履歴データに含まれる仮名IDを、長期間にわたって追跡(リンク)することを困難にすると共に、長期間にわたるサービス履歴データの分析であっても効率良く行うことができる。
(第2実施例)
第2実施例における仮名化システムは、図1に示した仮名化システム100と同じシステム構成をとる。第1実施例との違いは、図3のサービス履歴データ14において、地域302の列と、ユーザID304の組み合わせを必ず含むことと、図4の仮名化Seed変更定義401において、図1に示した地域4aおよび地域4bに応じて仮名化Seed15を異なるものとすることである。
【0054】
図8を使って、第2実施例における仮名IDの照合処理の具体例を説明する。図8では、日本でサービス端末1を利用した結果により生成された日本分のサービス履歴データ801と、米国でサービス端末1を利用した結果による米国分のサービス履歴データ802があるとする。利用者7の実名IDを「A」であるとして、日本分のサービス履歴データ801では「A1」に仮名化され、米国分のサービス履歴データ802では「A2」に仮名化されているとする。
【0055】
分析者8は、これらサービス履歴データ801、802をインプットとして、3種類の分析を行うこととする。
・日本分のサービス履歴データの分析803
・米国分のサービス履歴データの分析804
・日本と米国分を合わせたサービス履歴データの分析805
上記分析の切り替えは、分析者8が図5に示した地域のチェックボックス502で指定することができる。
【0056】
分析803では、実名ID「A」によるサービス履歴はすべて仮名ID「A1」として記録されているので、仮名ID「A1」に関する利用頻度や利用合計額などを、サービス履歴データ801をそのまま分析することで計算できる。説明のため、利用頻度がX回であったとする。
【0057】
同様に分析804も、実名ID「A」によるサービス履歴はすべて仮名ID「A2」として記録されているので、仮名ID「A2」に関する利用頻度や利用合計額などを、サービス履歴データ802をそのまま分析することで計算できる。説明のため、利用頻度がY回であったとする。
【0058】
最後に分析805では、実名ID「A」によるサービス履歴は仮名ID「A1」と「A2」が混在している。しかし、図3に示したサービス履歴データ14によると、ユーザID304と地域302とがペアで記録されているため、地域302を確認すれば日本ではユーザID「A1」が米国ではユーザID「A2」が出てくることが予想される。ここで、日本にユーザID「A2」が出ること、米国にユーザID「A1」が出ることは、エラーとして処理しても良い。日本に出てきたユーザID「A1」と米国に出てきたユーザID「A2」が同一利用者であるかどうかは、仮名化変更管理サーバ3に問い合わせることで確認できる。このようにして、仮名ID「A1」の利用者が、日本と米国でZ(=X+Y)回サービスを利用していることが計算できる。
【0059】
次に図9を使って、仮名化変更管理サーバ3の照合優先度判定部32の処理を説明する。ここでは分析範囲が日本と米国であるとして、日本分のサービス履歴データ900に含まれる仮名IDを、米国分の仮名IDの全体集合910と照合することとする。
【0060】
照合優先度判定部32は、米国分の仮名IDの全体集合910から、米国分のサービス履歴データに出現していた仮名IDの部分集合911を作っておき、前記部分集合911と紐付けられた、日本分の仮名IDの部分集合912を作っておく。日本分のサービス履歴データ900との照合は、前記部分集合912とを第1の優先度で行う。
【0061】
同様に、中国分の仮名IDの全体集合920から、中国分のサービス履歴データに出現していた仮名IDの部分集合921を作っておき、前記部分集合921と紐付けられた日本分の仮名IDの部分集合922を作っておく。日本分のサービス履歴データ900との照合は、前記部分集合922とを第2の優先度で行う。
【0062】
以下、日本と近い地域の順に、日本分の仮名IDの部分集合を作っておき、サービス履歴データ900との照合を行う。最終的には、日本分の仮名IDの全体集合901との照合を行う。あるいは、日本と近い地域の順に照合を途中で中止するものであっても良い。
【0063】
このように照合優先度判定部32が優先度を判定して部分集合ごとに順に検索を行うことで、仮名IDの全体集合をくまなく探すことに比べて、よりヒットしやすい仮名IDを優先的に見つけてくることができる。
【0064】
以上述べてきた第2の実施例により、サービス履歴データに含まれる仮名IDを、地域をまたがって追跡(リンク)することを困難にすると共に、地域をまたがるサービス履歴データの分析であっても効率良く行うことができる。
(第3実施例)
第3実施例における仮名化システムは、図1に示した仮名化システム100と同じシステム構成をとる。第1実施例との違いは、図3のサービス履歴データ14において、利用者属性303の列と、ユーザID304の組み合わせを必ず含むことと、図4の仮名化Seed変更定義401において、前記利用者属性303に応じて仮名化Seed15を異なるものとすることである。なお、利用者属性とは、年代、性別、趣味、購入金額などであり、利用者7が入力するものであっても、(図示していない)店員が入力するものであっても良い。
【0065】
図10を使って、第3実施例における仮名IDの照合処理の具体例を説明する。図10では、20代としてサービス端末1を利用した結果により生成された20代分のサービス履歴データ1001と、30代としてサービス端末1を利用した結果による30代分のサービス履歴データ1002があるとする。利用者7の実名IDを「A」であるとして、20代分のサービス履歴データ1001では「A1」に仮名化され、30代分のサービス履歴データ1002では「A2」に仮名化されているとする。
【0066】
分析者8は、これらサービス履歴データ1001、1002をインプットとして、3種類の分析を行うこととする。
・20代分のサービス履歴データの分析1003
・30代分のサービス履歴データの分析1004
・20〜30代分のサービス履歴データの分析1005
上記分析の切り替えは、分析者8が図5に示した利用者属性のチェックボックス503で指定することができる。
【0067】
分析1003では、実名ID「A」によるサービス履歴はすべて仮名ID「A1」として記録されているので、仮名ID「A1」に関する利用頻度や利用合計額などを、サービス履歴データ1001をそのまま分析することで計算できる。説明のため、利用頻度がX回であったとする。
【0068】
同様に分析1004も、実名ID「A」によるサービス履歴はすべて仮名ID「A2」として記録されているので、仮名ID「A2」に関する利用頻度や利用合計額などを、サービス履歴データ1002をそのまま分析することで計算できる。説明のため、利用頻度がY回であったとする。
【0069】
最後に分析1005では、実名ID「A」によるサービス履歴は仮名ID「A1」と「A2」が混在しているかもしれない。しかし、図3に示したサービス履歴データ14によると、ユーザID304と利用者属性303とがペアで記録されているため、利用者属性303を確認すれば20代ではユーザID「A1」が、30代ではユーザID「A2」が出てくることが予想される。ここで、20代にユーザID「A2」が出ること、30代にユーザID「A1」が出ることは、エラーとして処理しても良い。20代に出てきたユーザID「A1」と30代に出てきたユーザID「A2」が同一利用者であるかどうかは、仮名化変更管理サーバ3に問い合わせることで確認できる。このようにして、仮名ID「A1」の利用者が、日本と米国でZ(=X+Y)回サービスを利用していることが計算できる。
【0070】
以上述べてきた第3の実施例により、サービス履歴データに含まれる仮名IDを、利用者属性を越えて追跡(リンク)することを困難にできる。
【0071】
以上、本発明の実施形態を具体的に説明したが、本発明は、これらの実施例に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【符号の説明】
【0072】
1:サービス端末
2:分析サーバ
3:仮名化変更管理サーバ
4:地域
5:ネットワーク
6:ネットワーク
7:利用者
8:分析者
11:仮名化Seed変更部
12:仮名化部
13:サービル履歴生成部
14:サービス履歴データ
15:仮名化Seed
21:サービス履歴分析部
22:仮名ID照合部
31:仮名化変更管理部
32:照合優先度判定部
100:仮名化システム
201:入力部
202:出力部
203:CPU
204:メモリ
205:記憶装置
206:セキュリティチップ
207:通信部
208:電源部
【特許請求の範囲】
【請求項1】
利用者のサービス履歴データを生成する時に実名IDの仮名化を行う仮名化システムにおいて、
利用者がサービスを利用する状況に応じて、異なる仮名IDに仮名化する仮名化部と、
サービス履歴データを分析するサービス履歴分析部と、
異なる仮名IDを含む複数のサービス履歴データを分析する時に、異なる仮名ID同士が同じものであるかどうかを判定する仮名ID照合部と、
サービス利用状況に応じて異なる仮名IDを、前記サービス利用状況と対応付けて管理する仮名化変更管理部と、
を備え、
前記サービス履歴分析部は、
同じ仮名IDが出現するサービス利用状況を対象とする場合に、所定のサービス履歴分析を行い、
異なる仮名IDが出現するサービス利用状況を対象とする場合に、前記仮名ID照合部が、同一の利用者と見なした異なる仮名IDについて、所定のサービス履歴分析を行う、
ことを特徴とする仮名化システム。
【請求項2】
請求項1に記載の仮名化システムにおいて、
前記仮名化部が、サービス利用時の日時、サービス利用時の地域、サービス利用時の利用者属性、のいずれか1つ以上の組み合わせにより、異なる仮名IDに仮名化する
ことを特徴とする仮名化システム。
【請求項3】
請求項1または2に記載の仮名化システムにおいて、
前記仮名化変更管理部が、前記サービス履歴分析部で分析する分析範囲に応じて、前記分析範囲と近いサービス利用状況を求め、前記サービス利用状況で出現する仮名IDの部分集合を用意し、
前記仮名ID照合部が、前記分析範囲と近い順に、前記仮名IDの部分集合と順番に照合する
ことを特徴とする仮名化システム。
【請求項4】
請求項3に記載の仮名化システムにおいて、
前記仮名ID照合部が、前記分析範囲と近い順に、前記仮名IDの部分集合と順番に照合する時に、順番の最後として、仮名IDの全体集合と照合する、あるいは、前記仮名IDの部分集合と順番に照合していく時に途中で中止する
ことを特徴とする仮名化システム。
【請求項5】
請求項1から4のいずれか一に記載の仮名化システムにおいて、
前記サービス履歴データは、日時、地域、利用者属性のいずれか1つ以上の組み合わせと、ユーザIDと、サービス利用明細と、を含む
ことを特徴とする仮名化システム。
【請求項6】
請求項1から5のいずれか一に記載の仮名化システムに用いるサービス端末であって、 前記仮名化部を有し、さらに、
前記仮名IDを使って前記サービス履歴データを生成するサービス履歴生成部を備える
、ことを特徴とするサービス端末。
【請求項7】
請求項1から6のいずれか一に記載の仮名化システムに用いる分析サーバであって、
前記サービス履歴分析部と、前記仮名ID照合部と、を有し、
前記仮名ID照合部が同一の利用者と見なした異なる仮名IDについて、前記サービス履歴分析部が、前記サービス履歴データを分析し、分析結果を表示する
、ことを特徴とする分析サーバ。
【請求項8】
請求項1から7のいずれか一に記載の仮名化システムに用いる仮名化管理サーバであって、
前記仮名化変更管理部を有し、
前記仮名化変更管理部は、利用者によるサービス利用状況に応じて異なる仮名IDの全て、あるいは、その一部を、前記サービス利用状況と対応付けて管理する
ことを特徴とする仮名化管理サーバ。
【請求項1】
利用者のサービス履歴データを生成する時に実名IDの仮名化を行う仮名化システムにおいて、
利用者がサービスを利用する状況に応じて、異なる仮名IDに仮名化する仮名化部と、
サービス履歴データを分析するサービス履歴分析部と、
異なる仮名IDを含む複数のサービス履歴データを分析する時に、異なる仮名ID同士が同じものであるかどうかを判定する仮名ID照合部と、
サービス利用状況に応じて異なる仮名IDを、前記サービス利用状況と対応付けて管理する仮名化変更管理部と、
を備え、
前記サービス履歴分析部は、
同じ仮名IDが出現するサービス利用状況を対象とする場合に、所定のサービス履歴分析を行い、
異なる仮名IDが出現するサービス利用状況を対象とする場合に、前記仮名ID照合部が、同一の利用者と見なした異なる仮名IDについて、所定のサービス履歴分析を行う、
ことを特徴とする仮名化システム。
【請求項2】
請求項1に記載の仮名化システムにおいて、
前記仮名化部が、サービス利用時の日時、サービス利用時の地域、サービス利用時の利用者属性、のいずれか1つ以上の組み合わせにより、異なる仮名IDに仮名化する
ことを特徴とする仮名化システム。
【請求項3】
請求項1または2に記載の仮名化システムにおいて、
前記仮名化変更管理部が、前記サービス履歴分析部で分析する分析範囲に応じて、前記分析範囲と近いサービス利用状況を求め、前記サービス利用状況で出現する仮名IDの部分集合を用意し、
前記仮名ID照合部が、前記分析範囲と近い順に、前記仮名IDの部分集合と順番に照合する
ことを特徴とする仮名化システム。
【請求項4】
請求項3に記載の仮名化システムにおいて、
前記仮名ID照合部が、前記分析範囲と近い順に、前記仮名IDの部分集合と順番に照合する時に、順番の最後として、仮名IDの全体集合と照合する、あるいは、前記仮名IDの部分集合と順番に照合していく時に途中で中止する
ことを特徴とする仮名化システム。
【請求項5】
請求項1から4のいずれか一に記載の仮名化システムにおいて、
前記サービス履歴データは、日時、地域、利用者属性のいずれか1つ以上の組み合わせと、ユーザIDと、サービス利用明細と、を含む
ことを特徴とする仮名化システム。
【請求項6】
請求項1から5のいずれか一に記載の仮名化システムに用いるサービス端末であって、 前記仮名化部を有し、さらに、
前記仮名IDを使って前記サービス履歴データを生成するサービス履歴生成部を備える
、ことを特徴とするサービス端末。
【請求項7】
請求項1から6のいずれか一に記載の仮名化システムに用いる分析サーバであって、
前記サービス履歴分析部と、前記仮名ID照合部と、を有し、
前記仮名ID照合部が同一の利用者と見なした異なる仮名IDについて、前記サービス履歴分析部が、前記サービス履歴データを分析し、分析結果を表示する
、ことを特徴とする分析サーバ。
【請求項8】
請求項1から7のいずれか一に記載の仮名化システムに用いる仮名化管理サーバであって、
前記仮名化変更管理部を有し、
前記仮名化変更管理部は、利用者によるサービス利用状況に応じて異なる仮名IDの全て、あるいは、その一部を、前記サービス利用状況と対応付けて管理する
ことを特徴とする仮名化管理サーバ。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【公開番号】特開2012−226505(P2012−226505A)
【公開日】平成24年11月15日(2012.11.15)
【国際特許分類】
【出願番号】特願2011−92627(P2011−92627)
【出願日】平成23年4月19日(2011.4.19)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成24年11月15日(2012.11.15)
【国際特許分類】
【出願日】平成23年4月19日(2011.4.19)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]