(57)【要約】  本技術は、匿名性を向上させることができるようにする情報処理装置および方法、並びにプログラムに関する。取得部は、ユーザを特定するユーザ識別IDと、ユーザに関するユーザデータとを取得する。派生ID生成部は、記録部に記録されているユーザデータの数の増加に応じて、ユーザ識別IDから得られるデータに一方向関数を用いた演算を行うことで、派生IDを生成する。記録制御部は、生成された派生IDと、取得されたユーザデータとを対応付けて記録部に記録させる。このように、記録済みのユーザデータ数の増加に応じて派生IDを生成し、その派生IDに対応付けてユーザデータを記録することで、ユーザデータのK-匿名性を向上させることができる。本技術はサーバに適用することができる。
2016117354.tif 000002
【特許請求の範囲】
【請求項１】
ユーザを特定する個人識別情報および記録対象データを取得する取得部と、
既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成する派生識別情報生成部と、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる記録制御部と
を備える情報処理装置。
【請求項２】
前記派生識別情報生成部は、前記個人識別情報に対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
請求項１に記載の情報処理装置。
【請求項３】
前記派生識別情報生成部は、既に記録されている前記記録済データと前記個人識別情報から前記派生識別情報を生成する
請求項１に記載の情報処理装置。
【請求項４】
前記派生識別情報生成部は、所定数の前記記録対象データが前記記録済データとして記録されるごとに、新たな前記派生識別情報を生成する
請求項１に記載の情報処理装置。
【請求項５】
前記所定数は前記記録済データの個数に応じて変化する
請求項４に記載の情報処理装置。
【請求項６】
前記記録制御部は、生成された前記派生識別情報に対応付けられて記録されている前記記録済データの個数と、前記個人識別情報に対応付けられて記録されている前記記録済データの個数とに基づき、前記記録対象データを前記個人識別情報、または生成された前記派生識別情報に対応付けて記録させる
請求項１に記載の情報処理装置。
【請求項７】
ユーザを特定する個人識別情報および記録対象データを取得する取得部と、
前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成する派生識別情報生成部と、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる記録制御部と
を備える情報処理装置。
【請求項８】
前記派生識別情報生成部は、既に記録されている記録済データと前記個人識別情報から前記派生識別情報を生成する
請求項７に記載の情報処理装置。
【請求項９】
前記派生識別情報生成部は、最後に記録された前記記録済データと、前記個人識別情報とから得られるデータに対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
請求項８に記載の情報処理装置。
【請求項１０】
前記派生識別情報生成部は、前記記録対象データの種別または記録日時に基づいて、前記派生識別情報を生成する
請求項７に記載の情報処理装置。
【請求項１１】
前記派生識別情報生成部は、前記取得部より取得した前記記録対象データが、所定の記録対象データとは異なる場合、前記派生識別情報を生成する
請求項７に記載の情報処理装置。
【請求項１２】
前記記録制御部は、前記記録対象データに基づき、前記記録対象データを前記個人識別情報または前記派生識別情報に対応付けて記録させる
請求項７に記載の情報処理装置。
【請求項１３】
ユーザを特定する個人識別情報および記録対象データを取得し、
既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む情報処理方法。
【請求項１４】
ユーザを特定する個人識別情報および記録対象データを取得し、
既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項１５】
ユーザを特定する個人識別情報および記録対象データを取得し、
前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む情報処理方法。
【請求項１６】
ユーザを特定する個人識別情報および記録対象データを取得し、
前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む処理をコンピュータに実行させるプログラム。
【請求項１７】
既に記録されている記録データの数に基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置であって、
前記個人識別情報から前記派生識別情報を生成する派生識別情報生成部と、
生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データを読み出す読み出し部と
を備える情報処理装置。
【請求項１８】
前記派生識別情報生成部は、前記個人識別情報に対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
請求項１７に記載の情報処理装置。
【請求項１９】
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報から前記派生識別情報を生成する
請求項１７に記載の情報処理装置。
【請求項２０】
前記派生識別情報生成部は、所定の数と前記個人識別情報から前記派生識別情報を生成する
請求項１７に記載の情報処理装置。
【請求項２１】
前記派生識別情報生成部は、前記所定の数を一定間隔または不定間隔で変化させる
請求項２０に記載の情報処理装置。
【請求項２２】
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データの数に基づいて、前記派生識別情報を生成する
請求項１７に記載の情報処理装置。
【請求項２３】
記録対象とされた記録データに基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置であって、
前記個人識別情報から前記派生識別情報を生成する派生識別情報生成部と、
生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データを読み出す読み出し部と
を備える情報処理装置。
【請求項２４】
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報とから前記派生識別情報を生成する
請求項２３に記載の情報処理装置。
【請求項２５】
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報とから得られるデータに対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
請求項２４に記載の情報処理装置。
【請求項２６】
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データの種別または記録日時に基づいて、前記派生識別情報を生成する
請求項２３に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は情報処理装置および方法、並びにプログラムに関し、特に、匿名性を向上させることができるようにした情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
従来、複数のユーザのデータを管理するサーバなどにおいては、それらの管理対象となるデータがどのユーザに関するものであるかを第三者が特定することができないようにするために、データの匿名化が行われている。【０００３】
例えば、ユーザIDにより特定されるユーザに対して、サービスごとにサービスIDを生成し、ユーザIDとサービスIDを対応付けて記録するとともに、各サービスに関するデータをサービスIDに対応付けて記録する技術が提案されている（例えば、特許文献１参照）。【０００４】
また、ユーザを特定する個人ID番号に対して一方向関数を適用して匿名化番号を生成した後、個人ID番号と匿名化番号との対応表を破棄する技術も提案されている（例えば、特許文献２参照）。【０００５】
ユーザ個人のデータを、このようなサービスIDや匿名化番号に対応付けて記録しておけば、それらのデータやサービスID、匿名化番号からは、各データがどのユーザのものであるかを特定することは困難となる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２６６１９４号公報
【特許文献２】国際公開第WO２００８／０６９０１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら上述した技術では、サービスIDや匿名化番号に対応付けられて記録されるデータの数が多くなると、それらのデータの組み合わせから考えられるユーザの数が少なくなるため、匿名性、特にK-匿名性が低下してしまう。【０００８】
また、特許文献１に記載の技術では、サービスごとにサービスIDを生成し、それらのサービスIDとデータとを対応付けて記録している。しかし、悪意の第三者が互いに対応付けられて記録されているユーザIDとサービスIDを入手した場合には、各サービスIDがどのユーザIDに関するものであるかを特定することが可能となってしまうため、十分な匿名化が行われているとはいえなかった。【０００９】
本技術は、このような状況に鑑みてなされたものであり、匿名性を向上させることができるようにするものである。
【課題を解決するための手段】
【００１０】
本技術の第１の側面の情報処理装置は、ユーザを特定する個人識別情報および記録対象データを取得する取得部と、既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成する派生識別情報生成部と、前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる記録制御部とを備える。【００１１】
前記派生識別情報生成部には、前記個人識別情報に対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成させることができる。【００１２】
前記派生識別情報生成部には、既に記録されている前記記録済データと前記個人識別情報から前記派生識別情報を生成させることができる。【００１３】
前記派生識別情報生成部には、所定数の前記記録対象データが前記記録済データとして記録されるごとに、新たな前記派生識別情報を生成させることができる。【００１４】
前記所定数を前記記録済データの個数に応じて変化させることができる。【００１５】
前記記録制御部には、生成された前記派生識別情報に対応付けられて記録されている前記記録済データの個数と、前記個人識別情報に対応付けられて記録されている前記記録済データの個数とに基づき、前記記録対象データを前記個人識別情報、または生成された前記派生識別情報に対応付けて記録させることができる。【００１６】
本技術の第２の側面の情報処理装置は、ユーザを特定する個人識別情報および記録対象データを取得する取得部と、前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成する派生識別情報生成部と、前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる記録制御部とを備える。【００１７】
前記派生識別情報生成部には、既に記録されている記録済データと前記個人識別情報から前記派生識別情報を生成させることができる。【００１８】
前記派生識別情報生成部には、最後に記録された前記記録済データと、前記個人識別情報とから得られるデータに対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成させることができる。【００１９】
前記派生識別情報生成部には、前記記録対象データの種別または記録日時に基づいて、前記派生識別情報を生成させることができる。【００２０】
前記派生識別情報生成部には、前記取得部より取得した前記記録対象データが、所定の記録対象データとは異なる場合、前記派生識別情報を生成させることができる。【００２１】
前記記録制御部には、前記記録対象データに基づき、前記記録対象データを前記個人識別情報または前記派生識別情報に対応付けて記録させることができる。【００２２】
本技術の第１の側面の情報処理方法またはプログラムは、ユーザを特定する個人識別情報および記録対象データを取得し、既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成し、前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させるステップを含む。【００２３】
本技術の第１の側面においては、ユーザを特定する個人識別情報および記録対象データが取得され、既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報と、前記記録対象データとが対応付けられて記録される。【００２４】
本技術の第２の側面の情報処理方法またはプログラムは、ユーザを特定する個人識別情報および記録対象データを取得し、前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成し、前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させるステップを含む。【００２５】
本技術の第２の側面においては、ユーザを特定する個人識別情報および記録対象データが取得され、前記記録対象データに基づいて、前記個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報と、前記記録対象データとが対応付けられて記録される。【００２６】
本技術の第３の側面の情報処理装置は、既に記録されている記録データの数に基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置であって、前記個人識別情報から前記派生識別情報を生成する派生識別情報生成部と、生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データを読み出す読み出し部とを備える。【００２７】
前記派生識別情報生成部には、前記個人識別情報に対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成させることができる。【００２８】
前記派生識別情報生成部には、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報から前記派生識別情報を生成させることができる。【００２９】
前記派生識別情報生成部には、所定の数と前記個人識別情報から前記派生識別情報を生成させることができる。【００３０】
前記派生識別情報生成部には、前記所定の数を一定間隔または不定間隔で変化させることができる。【００３１】
前記派生識別情報生成部には、前記個人識別情報に対応付けられて記録されている前記記録データの数に基づいて、前記派生識別情報を生成させることができる。【００３２】
本技術の第３の側面においては、既に記録されている記録データの数に基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置において、前記個人識別情報から前記派生識別情報が生成され、生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データが読み出される。【００３３】
本技術の第４の側面の情報処理装置は、記録対象とされた記録データに基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置であって、前記個人識別情報から前記派生識別情報を生成する派生識別情報生成部と、生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データを読み出す読み出し部とを備える。【００３４】
前記派生識別情報生成部には、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報とから前記派生識別情報を生成させることができる。【００３５】
前記派生識別情報生成部には、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報とから得られるデータに対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成させることができる。【００３６】
前記派生識別情報生成部には、前記個人識別情報に対応付けられて記録されている前記記録データの種別または記録日時に基づいて、前記派生識別情報を生成させることができる。【００３７】
本技術の第４の側面においては、記録対象とされた記録データに基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置において、前記個人識別情報から前記派生識別情報が生成され、生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データが読み出される。
【発明の効果】
【００３８】
本技術の第１の側面乃至第４の側面によれば、匿名性を向上させることができる。【００３９】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載された何れかの効果であってもよい。
【図面の簡単な説明】
【００４０】
【図１】データ管理装置の構成例を示す図である。
【図２】ユーザデータの記録について説明する図である。
【図３】データ記録処理を説明するフローチャートである。
【図４】読み出し処理を説明するフローチャートである。
【図５】ユーザデータの記録について説明する図である。
【図６】データ記録処理を説明するフローチャートである。
【図７】読み出し処理を説明するフローチャートである。
【図８】ユーザデータの記録について説明する図である。
【図９】データ記録処理を説明するフローチャートである。
【図１０】読み出し処理を説明するフローチャートである。
【図１１】ユーザデータの記録について説明する図である。
【図１２】データ記録処理を説明するフローチャートである。
【図１３】読み出し処理を説明するフローチャートである。
【図１４】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【００４１】
以下、図面を参照して、本技術を適用した実施の形態について説明する。
【００４２】
〈第１の実施の形態〉
〈データ管理装置の構成例〉
本技術は、ユーザの預託データを管理するにあたり、その預託データの匿名性を向上させることができるようにするものである。
【００４３】
例えば所定のユーザを特定するユーザ識別IDに対応付けて、そのユーザに関するデータを記録していくと、ユーザ識別IDが匿名性の高い情報であっても、ユーザ識別IDに対応付けられたデータが蓄積されていくほどK-匿名性が低下してしまう。
【００４４】
そこで本技術では、ユーザに関するデータを管理する際に、データの数の増加に応じて、何らかのアルゴリズムを利用して派生IDを適宜生成し、その派生IDにデータを対応付けて記録することで、匿名性を向上させることができるようにした。
【００４５】
特に、アルゴリズムを知っているデータの管理側のみが、各派生IDがどのユーザのものであるかを特定でき、悪意の第三者は各派生IDとユーザとを対応付けることができないようにすることで、K-匿名性を向上させることができる。
【００４６】
続いて、本技術を適用した実施の形態について、より具体的に説明する。図１は、本技術を適用したデータ管理装置の一実施の形態の構成例を示す図である。
【００４７】
図１に示すデータ管理装置１１は、例えば複数のユーザのデータを管理するサーバなどの情報処理装置である。このデータ管理装置１１は、各ユーザを特定するユーザ識別IDに基づいて、そのユーザに関するデータ（以下、ユーザデータと称する）を管理する。
【００４８】
データ管理装置１１は、例えばユーザが所有する情報端末装置や、ユーザにサービスを提供するサービス提供者の情報端末装置などからユーザデータの記録依頼を受けると、その情報端末装置からユーザ識別IDとユーザデータを取得して、ユーザデータを記録する。
【００４９】
また、例えばデータ管理装置１１は、情報端末装置からユーザデータの読み出し依頼を受けると、その情報端末装置からユーザ識別IDを取得してユーザデータを検索し、その検索結果として得られたユーザデータを情報端末装置に出力する。
【００５０】
ここで、ユーザ識別IDは、一意にユーザを特定することができる識別情報であるが、他人がユーザ識別IDを入手しただけでは、一般的にはそのユーザ識別IDにより識別されるユーザ個人を特定することができない（困難である）情報とされる。ここでは、ユーザ識別IDは、例えば数字や記号などからなる所定ビット数の情報であるとする。
【００５１】
また、ユーザデータは、ユーザが受けるサービスに関するデータなど、どのようなデータであってもよい。例えば、ユーザデータは血液検査などの健康に関する検査結果を示すデータや、フィットネスクラブ等で測定された運動などに関するデータ、ユーザが服薬する薬剤などの医療に関するデータなどとされる。
【００５２】
さらに、以下においては、データ管理装置１１に記録されているユーザデータを特に記録済みユーザデータとも称し、記録依頼を受けた、これからデータ管理装置１１に記録されるユーザデータを記録対象ユーザデータとも称することとする。
【００５３】
データ管理装置１１は、取得部２１、制御部２２、記録部２３、および出力部２４を有している。
【００５４】
取得部２１は、ネットワークを介して接続された情報端末装置から、必要に応じてユーザ識別IDやユーザデータを取得して制御部２２に供給する。
【００５５】
制御部２２は、取得部２１から供給されたユーザ識別IDやユーザデータに基づいて、ユーザデータを記録部２３に記録したり、記録部２３からユーザデータを読み出して出力部２４に供給したりする。制御部２２は、派生ID生成部３１、記録制御部３２、および検索部３３を有している。なお、これらの派生ID生成部３１乃至検索部３３は、相互に情報の授受が可能となっている。
【００５６】
派生ID生成部３１は、ユーザ識別IDにより特定されるユーザの記録済みユーザデータの数の増加に応じて、少なくともユーザ識別IDを用いて派生IDを生成する。ここで、派生IDは、ユーザデータを記録する際にユーザ識別IDの代わりとして使用されるものであり、十分に匿名性の高い情報とされる。つまり、派生IDは、記録されているユーザデータが、どのユーザのデータであるかを特定するために用いられる。
【００５７】
記録制御部３２は、派生IDおよびユーザデータを記録部２３に供給し、ユーザデータの記録を制御する。すなわち、記録制御部３２は、派生IDとユーザデータとを対応付けて記録部２３に記録させる。
【００５８】
検索部３３は、派生ID生成部３１により生成された派生IDに基づいて、その派生IDに対応付けられて記録部２３に記録されているユーザデータを検索し、必要に応じて検索により得られたユーザデータを記録部２３から読み出す。
【００５９】
記録部２３は、制御部２２から供給されたユーザデータ等の各種のデータを記録するとともに、要求に応じて、記録しているユーザデータ等を制御部２２に供給する。出力部２４は、制御部２２から供給されたユーザデータを、ネットワークを介して接続されている情報端末装置に送信する。
【００６０】
〈ユーザデータの記録について〉
また、記録部２３には、例えば図２に示すようにユーザデータが記録される。
【００６１】
すなわち図２に示す例では、記録部２３には、矢印A11に示すようにユーザ識別IDと、そのユーザ識別IDにより特定されるユーザの記録済みユーザデータの個数を示す記録済みデータ数xとが対応付けられて記録されている。そして、矢印A12に示すように、記録済みデータ数xの値に応じて派生IDが生成され、その派生IDと新たなユーザデータとが対応付けられて記録部２３に記録される。
【００６２】
この例では、特定のユーザのユーザ識別IDである「aaa」と、そのユーザの全記録済みユーザデータの個数を示す記録済みデータ数「x」とが対応付けられて記録されている。
【００６３】
例えば記録済みデータ数x＝0である状態で、記録対象ユーザデータとして「ユーザデータ0」の記録が要求された場合、派生ID生成部３１は、ユーザ識別ID「aaa」と記録済みデータ数「x＝0」とに基づいて派生IDを生成する。
【００６４】
具体的には、例えば派生ID生成部３１は、ユーザ識別IDの最後尾に記録済みデータ数xの値を付加することで得られる値「aaa0」を引数として所定の一方向関数Fに代入し、その結果得られた値F(aaa0)を派生IDとする。そして、記録制御部３２は、得られた派生ID「F(aaa0)」と、記録対象ユーザデータである「ユーザデータ0」とを対応付けて記録させ、その後、記録済みデータ数xの値を更新する。
【００６５】
ここで、派生IDの生成に用いられる一方向関数Fは、例えばSHA(Secure Hash Algorithm)-256等の一方向ハッシュ関数など、演算結果からもとの引数を得ることが困難な関数であれば、どのような関数であってもよい。また、ここではユーザ識別IDと記録済みデータ数xとを結合して得られる値を一方向関数Fの引数とする例について説明するが、一方向関数Fの引数とされる値は、ユーザ識別IDと記録済みデータ数xから得られるものであれば、どのようなものであってもよい。
【００６６】
このようにデータ管理装置１１は、ユーザデータの記録依頼を受けるごとに、記録しているユーザ識別IDと記録済みデータ数xとに基づいて派生IDを生成し、ユーザデータを記録する。すなわち、ユーザ識別IDの末尾に連番が付与されて派生IDが算出されていく。
【００６７】
したがって、この例では各ユーザデータは、互いに異なる派生IDに対応付けられて記録されることになる。換言すれば、派生IDはユーザデータごとに生成される。矢印A12に示す例では、各派生ID「F(aaa0)」乃至「F(aaa(x-1))」に対して、ユーザデータとして「ユーザデータ0」乃至「ユーザデータ(x-1)」が対応付けられて記録されている。
【００６８】
このように記録済みユーザデータの数の増加に応じて新たに派生IDを生成し、その派生IDに対応付けてユーザデータを記録していくことで、ユーザデータの匿名性を向上させることができる。
【００６９】
特に、データ管理装置１１では、同じ派生IDに必要以上に多くのユーザデータが対応付けられて記録されることはないため、記録済みユーザデータの数が増えたとしてもK-匿名性が低下してしまうようなことはない。
【００７０】
しかもデータ管理装置１１では、ユーザ識別IDと各派生IDとの対応付けを示す情報を記録しておらず、また一方向関数による演算によって派生IDが生成される。そのため、派生IDの生成アルゴリズムを知らない第三者は、ユーザ識別IDと派生IDの対応関係、つまり、どの派生IDが同じユーザのものであるかを特定することができない。これにより、管理するデータの匿名性を向上させることができ、その結果、データ管理上の安全性を向上させることができる。
【００７１】
〈データ記録処理の説明〉
次に、データ管理装置１１の動作について説明する。
【００７２】
まず、図３のフローチャートを参照して、データ管理装置１１がユーザやサービス提供者の情報端末装置からユーザデータの記録依頼を受けたときに行われるデータ記録処理について説明する。
【００７３】
ステップＳ１１において、取得部２１は、記録依頼を受けた情報端末装置から、ユーザのユーザ識別IDと、そのユーザについての記録対象のユーザデータとを取得して、制御部２２に供給する。例えば取得部２１は、情報端末装置からインターネット等のネットワークを介して送信されてきたユーザ識別IDとユーザデータを受信することで、ユーザ識別IDとユーザデータを取得する。
【００７４】
ステップＳ１２において、制御部２２の派生ID生成部３１は、取得部２１から供給されたユーザ識別IDと、そのユーザ識別IDに対応付けられて記録部２３に記録されている記録済みデータ数xとに基づいて、派生IDを生成する。
【００７５】
例えば図２を参照して説明した例では、派生ID生成部３１は、ユーザ識別IDと記録済みデータ数xとを結合して得られるデータを引数とし、その引数を一方向関数Fに代入して演算を行うことで、派生IDを生成する。
【００７６】
ステップＳ１３において、記録制御部３２は、ステップＳ１２の処理で生成された派生ID、およびステップＳ１１の処理で取得されたユーザデータを記録部２３に供給して、それらの派生IDとユーザデータとを対応付けて記録させる。
【００７７】
ステップＳ１４において、記録制御部３２は、今回ユーザデータを記録したユーザのユーザ識別ID、つまりステップＳ１１の処理で取得されたユーザ識別IDに対応付けられて記録部２３に記録されている記録済みデータ数xを更新する。すなわち、記録済みデータ数xの値が１だけインクリメントされる。そして、記録済みデータ数xが更新されると、データ記録処理は終了する。
【００７８】
以上のようにして、データ管理装置１１は、ユーザデータの記録処理を行うたびに、記録対象となるユーザデータに対して、ユーザ識別IDと記録済みデータ数xから新たに派生IDを生成し、その派生IDにユーザデータを対応付けて記録する。これにより、ユーザデータの匿名性、特にK-匿名性を向上させることができる。
【００７９】
〈読み出し処理の説明〉
また、例えばデータ管理装置１１がユーザやサービス提供者の情報端末装置からユーザデータの読み出し依頼を受けると、データ管理装置１１は記録部２３からユーザデータを読み出して、情報端末装置に出力する読み出し処理を行う。以下、図４のフローチャートを参照して、データ管理装置１１による読み出し処理について説明する。
【００８０】
ステップＳ４１において、取得部２１は、読み出し依頼を受けた情報端末装置から、ユーザのユーザ識別IDを取得して制御部２２に供給する。例えば取得部２１は、情報端末装置からインターネット等のネットワークを介して送信されてきたユーザ識別IDを受信することで、ユーザ識別IDを取得する。
【００８１】
ステップＳ４２において、派生ID生成部３１は、派生ID生成時の記録済みデータ数として用いる値（数値）を示すカウンタiの値をi=0とする。
【００８２】
ステップＳ４３において、派生ID生成部３１は、取得部２１から供給されたユーザ識別IDと、カウンタiの値とに基づいて派生IDを生成する。
【００８３】
例えば図２を参照して説明した例では、派生ID生成部３１は、カウンタiの値が記録済みデータ数xの値であるものとし、ユーザ識別IDとカウンタiの値とを結合して得られたデータを引数とする。そして、派生ID生成部３１は、得られた引数を一方向関数Fに代入して演算を行うことで、派生IDを生成する。
【００８４】
ステップＳ４４において、検索部３３は、ステップＳ４３の処理で生成された派生IDに対応付けられて記録部２３に記録されているユーザデータを検索する。
【００８５】
ステップＳ４５において、検索部３３は、派生IDに対応付けられているユーザデータがあるか否かを判定する。すなわち、ステップＳ４４における検索の結果として、派生IDに対応付けられているユーザデータがあったかが判定される。
【００８６】
ステップＳ４５においてユーザデータがあると判定された場合、ステップＳ４６において検索部３３は、検索結果として見つかった、派生IDに対応付けられているユーザデータを記録部２３から読み出して一時的に保持する。
【００８７】
ステップＳ４７において、派生ID生成部３１はカウンタiの値を１だけインクリメントする。そして、その後、処理はステップＳ４３に戻り、上述した処理が繰り返し行われる。したがって、ステップＳ４７の処理が行われると、新たなカウンタiの値が用いられて派生IDが生成され、その派生IDに対応付けられているユーザデータが読み出されることになる。
【００８８】
これらの一連の処理では、派生ID生成部３１は、ユーザ識別IDの最後尾に付加する数値、つまりカウンタiの値を１ずつ変化させながら、ユーザ識別IDとカウンタiの値とから得られるデータに対して一方向関数Fを用いた演算を行い、複数の派生IDを生成する。これにより、ユーザ識別IDに対して生成されたであろう派生IDが順番に生成されていき、それらの派生IDに対応付けられて記録されているユーザデータが読み出されていく。
【００８９】
また、ステップＳ４５においてユーザデータがないと判定された場合、処理はステップＳ４８へと進む。
【００９０】
この場合、ユーザ識別IDについて、データ記録処理で実際に生成された全ての派生IDがステップＳ４３の処理により生成され、それらの派生IDに対応付けられて記録されているユーザデータが読み出されたことになる。すなわち、ユーザ識別IDにより特定されるユーザについて、記録部２３に記録されている全てのユーザデータが読み出されたことになる。
【００９１】
ステップＳ４８において、検索部３３は、検索結果として得られた全ユーザデータ、つまりステップＳ４６の処理で読み出した全てのユーザデータをマージして（一つにまとめて）、出力部２４に供給する。
【００９２】
ステップＳ４９において、出力部２４は、検索部３３から供給された、マージされたユーザデータを、ユーザデータの読み出しを依頼してきた情報端末装置に出力し、読み出し処理は終了する。例えば、出力部２４はネットワークを介して情報端末装置にマージされたユーザデータを送信する。
【００９３】
なお、ユーザデータはマージして情報端末装置に出力する他、検索により得られたユーザデータの一覧を情報端末装置に出力した後、情報端末装置からの指示に応じて、情報端末装置において一覧から選択されたユーザデータのみを情報端末装置に送信してもよい。
【００９４】
以上のようにしてデータ管理装置１１は、予め定められたアルゴリズムに従って、ユーザ識別IDに基づいて派生IDを生成し、その派生IDに対応付けられて記録されているユーザデータを読み出す。
【００９５】
この場合、上述したように、派生IDの生成アルゴリズムを知らない第三者は、どの派生IDが同じユーザのものであるかを特定することができない。このようにユーザデータの管理側のみがユーザ識別IDについて記録されている全ユーザデータを読み出すことができるようにすることで、ユーザデータの匿名性を向上させることができる。
【００９６】
なお、図４を参照して説明した読み出し処理では、カウンタiの値を更新しながら順番に派生IDを生成していく場合について説明した。
【００９７】
しかし、記録部２３には、記録済みデータ数xが記録されているので、派生ID生成部３１は、その記録済みデータ数xを参照すれば、ユーザ識別IDに対してこれまでに生成された全ての派生IDを特定することが可能である。
【００９８】
したがって、派生ID生成部３１が、ユーザ識別IDと記録済みデータ数xに基づいて、全ての派生IDを一度に生成し、検索部３３がそれらの派生IDに対応付けられているユーザデータを記録部２３から読み出すようにしてもよい。
【００９９】
〈第２の実施の形態〉
〈ユーザデータの記録について〉
また、第１の実施の形態に示した例では、ユーザデータごとに異なる派生IDが生成される。そのため、ユーザデータを読み出す際には、ユーザデータごとに派生IDを生成して検索を行い、その後、各派生IDに対応付けられたユーザデータをまとめる（マージする）処理が必要となるので、ユーザデータ数が多くなると処理量が多くなってしまう。
【０１００】
そこで、１つのユーザデータに対して１つの派生IDを生成するのではなく、ユーザデータがm回（以下、間隔mと称する）記録されるごとに１つの派生IDが生成されるようにしてもよい。派生IDを生成する間隔mが適度に小さければ、ユーザデータのK-匿名性を確保しつつ、ユーザデータの読み出し時の処理量を削減することができる。
【０１０１】
間隔mは一定値（固定値）でも可変値でもよいが、以下では間隔mが一定値であり、その値が間隔m＝2である場合について説明する。そのような場合、記録部２３には、例えば図５に示すようにユーザデータ等が記録される。
【０１０２】
すなわち、この例では図２における場合と同様に、図５の矢印A21に示すように記録部２３にはユーザ識別ID「aaa」と記録済みデータ数「x」とが対応付けられて記録されている。
【０１０３】
また、記録部２３には、矢印A22に示すように間隔m＝2で生成された各派生IDであるF(aaap)（但し、p=0,2,4,…）と、ユーザデータであるユーザデータq（但し、q=0,1,2,…）とが対応付けられて記録されている。
【０１０４】
このような例では、記録済みデータ数xが、間隔m=2と０以上の整数kとからなる数mkである場合、つまり記録済みデータ数x＝0,2,4,6,…である場合に、新たな派生IDが生成される。
【０１０５】
換言すれば、記録済みデータ数xの値を引数として、その記録済みデータ数xの値を超えない最大の偶数値を出力する関数を関数G(x)とすると、新たにユーザデータを記録しようとする場合に、ユーザ識別IDと関数G(x)の値とに基づいて派生IDが生成される。具体的には、ユーザ識別IDの最後尾に関数G(x)の値を付加した値が引数とされ、その引数が一方向関数Fに代入されて得られた値が派生IDとされる。
【０１０６】
ここで、関数G(x)は間隔mにより定まる関数である。この例では間隔mは固定値である「２」であるので、関数G(x)は偶数値を出力する関数となっている。なお、ここでは関数G(x)が偶数値を出力する関数である例について説明するが、関数G(x)は間隔mで記録済みデータ数xに応じた値を出力する関数であれば、どのような関数であってもよい。
【０１０７】
例えば記録済みデータ数x＝0である状態で、記録対象ユーザデータとして「ユーザデータ0」の記録が要求された場合、関数G(x)の値は「0」となる。したがって、派生ID生成部３１は、ユーザ識別ID「aaa」と関数G(x)の値「0」とを結合して一方向関数Fに代入し、その結果得られた値「F(aaa0)」を派生IDとする。
【０１０８】
そして、記録制御部３２は、得られた派生ID「F(aaa0)」と、記録対象ユーザデータである「ユーザデータ0」とを対応付けて記録させ、その後、記録済みデータ数xをx＝1に更新する。
【０１０９】
また、この状態でさらに記録対象ユーザデータとして「ユーザデータ1」の記録が要求された場合、記録済みデータ数x＝1であるから、関数G(x)の値は「0」となる。したがって、ユーザデータである「ユーザデータ1」は、ユーザ識別ID「aaa」と関数G(x)の値「0」とから得られる派生ID「F(aaa0)」に対応付けられて記録され、その後、記録済みデータ数xはx＝2に更新される。
【０１１０】
そして、さらに記録済みデータ数x＝2である状態で、ユーザデータとして「ユーザデータ2」の記録が要求された場合、関数G(x)の値は「2」となるから、ユーザ識別ID「aaa」と関数G(x)の値「2」とから派生ID「F(aaa2)」が生成される。そして、その派生ID「F(aaa2)」にユーザデータである「ユーザデータ2」が対応付けられて記録され、記録済みデータ数xがx＝3に更新される。
【０１１１】
このように、間隔mで、つまりユーザデータをm回記録するごとに、新たに派生IDを生成することで、ユーザデータの匿名性を向上させつつ、ユーザデータ読み出し時の処理量を削減することができる。
【０１１２】
〈データ記録処理の説明〉
次に、図６のフローチャートを参照して、一定の間隔mで派生IDが生成される場合にデータ管理装置１１により行われるデータ記録処理について説明する。なお、ステップＳ７１の処理は図３のステップＳ１１の処理と同様であるので、その説明は省略する。
【０１１３】
ステップＳ７２において、派生ID生成部３１は、取得部２１から供給されたユーザ識別ID、そのユーザ識別IDに対応付けられて記録部２３に記録されている記録済みデータ数x、および予め定められた間隔mに基づいて、派生IDを生成する。
【０１１４】
例えば図５を参照して説明した例では、派生ID生成部３１は、間隔mにより定まる関数G(x)に記録済みデータ数xを代入し、その結果得られた関数G(x)の値とユーザ識別IDとを結合して得られるデータを引数とする。そして、派生ID生成部３１は、得られた引数を一方向関数Fに代入して演算を行うことで、派生IDを生成する。
【０１１５】
派生IDが生成されると、その後、ステップＳ７３およびステップＳ７４の処理が行われてデータ記録処理は終了するが、これらの処理は図３のステップＳ１３およびステップＳ１４の処理と同様であるので、その説明は省略する。
【０１１６】
以上のようにして、データ管理装置１１は、間隔mに基づいて、一定数のユーザデータが記録されるたびに新たに派生IDを生成し、その派生IDにユーザデータを対応付けて記録する。これにより、ユーザデータの匿名性、特にK-匿名性を向上させることができる。
【０１１７】
〈読み出し処理の説明〉
続いて、図６を参照して説明したデータ記録処理によりユーザデータが記録された場合に行われる読み出し処理について説明する。
【０１１８】
すなわち、以下、図７のフローチャートを参照して、データ管理装置１１により行われる読み出し処理について説明する。
【０１１９】
なお、ステップＳ１０１およびステップＳ１０２の処理は図４のステップＳ４１およびステップＳ４２の処理と同様であるので、その説明は省略する。但し、ここではカウンタiの値は、派生IDの生成時にユーザ識別IDに付加する数値を定めるために用いられる。
【０１２０】
ステップＳ１０３において、派生ID生成部３１は、取得部２１から供給されたユーザ識別ID、カウンタiの値、および予め定められた間隔mに基づいて派生IDを生成する。
【０１２１】
例えば派生ID生成部３１は、間隔mにカウンタiの値を乗じて得られる値miが記録済みデータ数xの値であるものとして、ユーザ識別IDとmiの値とを結合して得られたデータを引数とし、その引数を一方向関数Fに代入して演算を行うことで、派生IDを生成する。
【０１２２】
派生IDが生成されると、その後、ステップＳ１０４乃至ステップＳ１０９の処理が行われて読み出し処理は終了するが、これらの処理は図４のステップＳ４４乃至ステップＳ４９の処理と同様であるので、その説明は省略する。
【０１２３】
この場合、例えばステップＳ１０６でユーザデータが読み出されると、その後、ステップＳ１０７でカウンタiの値が１だけインクリメントされて新たな派生IDが生成される。
【０１２４】
したがって、ステップＳ１０３乃至ステップＳ１０７の処理が繰り返し行われると、ユーザ識別IDに対して生成されたであろう派生IDが順番に生成されていき、それらの派生IDに対応付けられて記録されているユーザデータが読み出されていくことになる。
【０１２５】
すなわち、これらの一連の処理では、派生ID生成部３１は、ユーザ識別IDの最後尾に付加する数値、つまりmiの値を一定の間隔mで変化させながら、ユーザ識別IDとmiの値とから得られるデータに対して一方向関数Fを用いた演算を行い、複数の派生IDを生成する。
【０１２６】
また、この場合においても、記録済みデータ数xを参照すればユーザ識別IDに対してこれまでに生成された全ての派生IDを特定することが可能であるから、全ての派生IDを一度に生成して、ユーザデータを読み出すようにしてもよい。
【０１２７】
以上のようにしてデータ管理装置１１は、ユーザ識別IDに基づいて間隔mで派生IDを生成し、その派生IDに対応付けられて記録されているユーザデータを読み出す。
【０１２８】
この場合においても、派生IDの生成アルゴリズムを知らない第三者は、どの派生IDが同じユーザのものであるかを特定することができない。このようにユーザデータの管理側のみがユーザ識別IDについて記録されている全ユーザデータを読み出すことができるようにすることで、ユーザデータの匿名性を向上させることができる。
【０１２９】
特に、この例では一定数のユーザデータが同じ派生IDに対応付けられて記録されるごとに新たな派生IDが生成される。したがって、記録済みユーザデータが増えるほど、各派生IDに対応付けられて記録されているユーザデータの組み合わせとして、類似する組み合わせが増えるので、K-匿名性を向上させることができる。
【０１３０】
なお、以上においては、間隔mが常に間隔m=2であり、一定間隔で派生IDが生成される場合について説明したが、間隔mは不定間隔でもよいし、間隔mがどのようにして定められてもよい。
【０１３１】
例えば間隔mが常に一定である場合には、各派生IDには必ずm個のユーザデータが対応付けられるという規則性が生じてしまう。そこで、匿名性を向上させつつ、このような規則性が生じないようにし、より安全性を高めるために、記録済みユーザデータの数、つまり記録済みデータ数xの値が大きくなるにつれて、間隔mも大きくなるようにしてもよい。そのような例としては、例えば記録済みデータ数xの平方根を間隔mとしたり、記録済みデータ数xの対数値を間隔mとしたりすることなどが考えられる。
【０１３２】
〈第３の実施の形態〉
〈ユーザデータの記録について〉
ところで、第１の実施の形態および第２の実施の形態では、データ管理装置１１が記録済みデータ数xをテーブル等により管理する必要がある。このように記録済みデータ数xをデータ管理装置１１で管理すると、管理するデータの量が増えてしまうとともに、第三者に各ユーザの記録済みデータ数xが知られてしまう可能性もある。
【０１３３】
そこで、特定の種別の記録済みユーザデータを用いて派生IDを生成することで、記録済みデータ数xを必要とせずにユーザデータを管理できるようにしてもよい。
【０１３４】
そのような場合、記録部２３では、例えば図８に示すようにしてユーザデータの記録が行われる。図８の例では、ユーザ識別IDである「aaa」に対応付けられて、記録済みユーザデータとして「薬歴1」、「薬歴2」、および「薬歴3」が記録されている。
【０１３５】
この例では、特定の種別の記録済みユーザデータとして、ユーザの薬歴のデータが用いられて派生IDが生成される。なお、派生IDの生成に用いられるユーザデータの種別は１つであってもよいし、複数であってもよいが、以下では１つの種別が派生IDの生成に用いられるものとして説明を続ける。また、以下では、派生IDの生成に用いられるユーザデータの種別を、特にID生成対象種別とも称することとする。
【０１３６】
さらに、この例では、ID生成対象種別のユーザデータである「薬歴1」と、ユーザ識別ID「aaa」とから派生ID「derY1」が生成され、その派生ID「derY1」に対応付けられてID生成対象種別ではない他の種別のユーザデータ「血圧1」が記録されている。
【０１３７】
同様に、ID生成対象種別のユーザデータである「薬歴2」と、ユーザ識別ID「aaa」とから派生ID「derY2」が生成され、その派生ID「derY2」に対応付けられてID生成対象種別ではない他の種別のユーザデータ「検査値1」、「フィットネス1」、および「検査値2」が記録されている。また、ID生成対象種別のユーザデータである「薬歴3」と、ユーザ識別ID「aaa」とから派生ID「derY3」が生成され、その派生ID「derY3」に対応付けられてID生成対象種別ではない他の種別のユーザデータ「フィットネス2」が記録されている。
【０１３８】
このようにID生成対象種別のユーザデータはユーザ識別IDに対応付けられて記録され、ID生成対象種別ではない他の種別のユーザデータは派生IDに対応付けられて記録される場合、新たにユーザデータを記録するときには、そのユーザデータがID生成対象種別のデータであるかが判定される。
【０１３９】
そして、記録しようとするユーザデータがID生成対象種別のデータである場合には、そのユーザデータがユーザ識別IDに対応付けられて記録される。
【０１４０】
これに対して、記録しようとするユーザデータがID生成対象種別とは異なる種別のデータである場合には、最後に記録されたID生成対象種別のユーザデータと、ユーザ識別IDとから派生IDが生成され、その派生IDに対応付けられてユーザデータが記録される。
【０１４１】
したがって、予め定められたID生成対象種別のユーザデータが記録されるごとに、より詳細には、ID生成対象種別のユーザデータが記録され、次にID生成対象種別とは異なる種別のユーザデータが記録される場合に、新たな派生IDが生成されることになる。
【０１４２】
具体的には、図８の例ではユーザデータとして最初に「薬歴1」が記録され、その後、「血圧1」が記録される。そして、さらにユーザデータとして「薬歴2」が記録された後、「検査値1」、「フィットネス1」、および「検査値2」が記録され、続いて「薬歴3」が記録され、最後に「フィットネス2」が記録される。
【０１４３】
このような手順（アルゴリズム）でユーザデータを記録していくことで、匿名性を確保することができるだけでなく、記録済みデータ数xを必要とせずにユーザデータを管理でき、安全性をさらに向上させることができる。
【０１４４】
〈データ記録処理の説明〉
次に、図９のフローチャートを参照して、特定種別のユーザデータから派生IDが生成される場合にデータ管理装置１１により行われるデータ記録処理について説明する。なお、ステップＳ１３１の処理は図３のステップＳ１１の処理と同様であるので、その説明は省略する。
【０１４５】
ステップＳ１３２において、派生ID生成部３１は、ステップＳ１３１の処理で取得部２１により取得されたユーザデータが、予め定められた特定種別、すなわちID生成対象種別のユーザデータであるか否かを判定する。例えば図８の例では、ユーザデータが薬歴のデータである場合、特定種別のユーザデータであると判定される。
【０１４６】
なお、ユーザデータの種別は、例えばユーザデータの先頭部分に、そのユーザデータの種別を示すフラグ等の情報が付加されているなど、ユーザデータのデータ形式等から識別することができるようにすればよい。
【０１４７】
その他、例えば取得部２１が情報端末装置から、ユーザ識別IDとユーザデータを取得する際に、そのユーザデータの種別を示す情報等を取得するようにしてもよい。また、ユーザデータの取得元である情報端末装置ごとに、予めユーザデータの種別が定められていてもよい。
【０１４８】
ステップＳ１３２において、予め定められた特定種別のユーザデータであると判定された場合、処理はステップＳ１３３に進む。
【０１４９】
ステップＳ１３３において、記録制御部３２は、ステップＳ１３１の処理で取得されたユーザ識別IDとユーザデータを記録部２３に供給して、それらのユーザ識別IDとユーザデータとを対応付けて記録させる。このようにしてユーザデータが記録されると、データ記録処理は終了する。
【０１５０】
これに対して、ステップＳ１３２において、予め定められた特定種別のユーザデータでないと判定された場合、処理はステップＳ１３４に進む。
【０１５１】
ステップＳ１３４において、検索部３３は、ステップＳ１３１の処理で取得されたユーザ識別IDに対応付けられて記録部２３に記録されているユーザデータのうち、最後に記録されたユーザデータを検索（特定）する。そして、検索部３３は、その検索の結果得られたユーザデータを記録部２３から読み出す。
【０１５２】
例えば検索部３３は、ユーザデータのメタデータ等に含まれている更新日時等から、記録部２３に記録された日時が最も新しいユーザデータを検索することで、ユーザ識別IDに対応付けられている、最後に記録されたユーザデータを得る。また、例えばユーザ識別IDに対応付けられたユーザデータが、記録順に並べられて記録されている場合には、検索部３３は、それらのユーザデータの記録位置から、最後に記録されたユーザデータを特定することができる。
【０１５３】
例えば図８に示した例では、ユーザ識別ID「aaa」に対応付けられて記録されているユーザデータ「薬歴1」乃至「薬歴3」のうち、最後に記録されたユーザデータ「薬歴3」が、ステップＳ１３４の処理で検索される。
【０１５４】
このような処理によって、ID生成対象種別のユーザデータのうちの最新のユーザデータ、つまり最後に記録されたユーザデータを得ることができる。
【０１５５】
ステップＳ１３５において、派生ID生成部３１は、ステップＳ１３１で取得されたユーザ識別IDと、ステップＳ１３４の処理で検索結果として得られたユーザデータとに基づいて、派生IDを生成する。
【０１５６】
例えば派生ID生成部３１は、ユーザ識別IDとユーザデータとを結合して得られるデータを引数とし、その引数を一方向関数Fに代入して演算を行うことで、派生IDを生成する。
【０１５７】
ステップＳ１３６において、記録制御部３２は、ステップＳ１３５の処理で生成された派生ID、およびステップＳ１３１の処理で取得されたユーザデータを記録部２３に供給して、それらの派生IDとユーザデータとを対応付けて記録させる。このようにしてユーザデータが記録されると、データ記録処理は終了する。
【０１５８】
以上のようにして、データ管理装置１１は、記録対象ユーザデータの種別に応じて派生IDを生成し、その派生IDにユーザデータを対応付けて記録するか、またはユーザ識別IDにユーザデータを対応付けて記録する。これにより、ユーザデータの匿名性、特にK-匿名性を向上させることができる。
【０１５９】
しかも、データ管理装置１１では、記録済みデータ数xを用いずに、ユーザデータを用いて派生IDを生成するので、管理するデータの量を削減することができるだけでなく、ユーザデータ管理の安全性も向上させることができる。
【０１６０】
さらに、ユーザ識別IDと派生IDとを、例えば64文字の文字列など、同じ大きさの情報とすれば、第三者はユーザ識別IDと派生IDを区別することはできないし、どのIDがどのユーザのものであるかも特定することができない。したがって、管理するデータの匿名性をさらに向上させることができる。
【０１６１】
なお、この実施の形態では、ID生成対象種別のユーザデータについては、ユーザ識別IDに対応付けられて記録されるが、そもそもユーザ識別IDは匿名性の高い情報であるから、ユーザデータをユーザ識別IDと対応付けて記録しても匿名性が低下することはない。
【０１６２】
〈読み出し処理の説明〉
続いて、図９を参照して説明したデータ記録処理によりユーザデータが記録された場合に行われる読み出し処理について説明する。
【０１６３】
すなわち、以下、図１０のフローチャートを参照して、データ管理装置１１により行われる読み出し処理について説明する。なお、ステップＳ１６１の処理は図４のステップＳ４１の処理と同様であるので、その説明は省略する。
【０１６４】
ステップＳ１６２において、検索部３３は、ステップＳ１６１の処理で取得されたユーザ識別IDに対応付けられて記録部２３に記録されているユーザデータを検索するとともに、検索の結果得られたユーザデータを記録部２３から全て読み出して一時的に保持する。
【０１６５】
ステップＳ１６３において、派生ID生成部３１は、ステップＳ１６２の処理で読み出された全ユーザデータについて、それらの各ユーザデータと、ステップＳ１６１の処理で取得されたユーザ識別IDとに基づいて、派生IDを生成する。
【０１６６】
例えば派生ID生成部３１は、ユーザ識別IDとユーザデータとを結合して得られたデータを引数とし、その引数を一方向関数Fに代入して演算を行うことで、派生IDを生成する。
【０１６７】
これにより、ステップＳ１６２の処理で読み出されたユーザデータの数だけ派生IDが得られる。例えば図８に示した例では、ステップＳ１６２で、ユーザデータとして「薬歴1」、「薬歴2」、および「薬歴3」が読み出され、ステップＳ１６３では、それらの「薬歴1」乃至「薬歴3」に対して、派生ID「derY1」、「derY2」、および「derY3」が生成される。
【０１６８】
ステップＳ１６４において、検索部３３は、ステップＳ１６３の処理で生成された各派生IDに対応付けられて記録部２３に記録されているユーザデータを検索するとともに、検索の結果得られたユーザデータを記録部２３から全て読み出して一時的に保持する。
【０１６９】
ステップＳ１６５において、検索部３３は、検索結果として得られた全ユーザデータ、つまりステップＳ１６２およびステップＳ１６４の処理で読み出した全てのユーザデータをマージして、出力部２４に供給する。
【０１７０】
そして、その後、ステップＳ１６６の処理が行われて読み出し処理は終了するが、ステップＳ１６６の処理は図４のステップＳ４９の処理と同様であるので、その説明は省略する。
【０１７１】
以上のようにしてデータ管理装置１１は、ユーザ識別IDに基づいて特定種別のユーザデータを読み出すとともに、読み出したユーザデータとユーザ識別IDに基づいて派生IDを生成し、その派生IDに対応付けられて記録されているユーザデータを読み出す。
【０１７２】
この場合においても、派生IDの生成アルゴリズムを知らない第三者は、どの派生IDが同じユーザのものであるかを特定することができないし、ユーザ識別IDと派生IDを区別することもできない。このようにユーザデータの管理側のみがユーザ識別IDについて記録されている全ユーザデータを読み出すことができるようにすることで、ユーザデータの匿名性を向上させることができる。
【０１７３】
〈第４の実施の形態〉
〈ユーザデータの記録について〉
さらに、記録済みデータ数xを必要とせずに、ユーザデータの増加に応じて合理的な数の派生IDを階層的に生成してユーザデータを管理する方法として、例えば図１１に示すようにユーザデータを管理する方法も考えられる。
【０１７４】
図１１に示す例では、記録部２３にはユーザ識別IDである「h01」、派生IDである「hasei1」、「hasei2」、または「hasei3」の何れかに対応付けられて、ユーザデータである「ユーザデータ0」乃至「ユーザデータ9」が記録されている。
【０１７５】
この例では、以下のようなアルゴリズムで派生IDが生成され、ユーザデータが記録されていく。
【０１７６】
すなわち、まずはユーザデータがユーザ識別IDに対応付けられて記録される。図１１では、ユーザ識別ID「h01」に対応付けられて、ユーザデータ「ユーザデータ0」が記録されている。
【０１７７】
続いて、ユーザ識別IDに対応付けられて記録されているユーザデータの個数nと、ユーザ識別IDとから派生IDが生成され、その派生IDにユーザデータが対応付けられて記録される。ここでは、ユーザ識別ID「h01」と個数n=1とから生成された派生ID「hasei1」にユーザデータ「ユーザデータ1」が対応付けられて記録されている。
【０１７８】
その後、最後に生成された派生IDに対応付けられて記録されているユーザデータの個数hnが、上述した個数nと等しくなるまで、以降に記録されるユーザデータはその派生IDに対応付けられて記録される。
【０１７９】
そして、個数hnが個数nと等しくなった時点で、新たなユーザデータはユーザ識別IDに対応付けられて記録される。さらに、その次のユーザデータについては、新たに派生IDが生成されて、その派生IDにユーザデータが対応付けられて記録され、個数hnが個数nと等しくなるまで、新たに生成された派生IDにユーザデータが対応付けられて記録されるといった処理が繰り返される。
【０１８０】
例えばユーザデータ「ユーザデータ1」が記録された時点では、ユーザ識別IDに対応付けられて記録されているユーザデータの個数nは１であり、また派生ID「hasei1」に対応付けられて記録されているユーザデータの個数hnは１となっている。
【０１８１】
この場合、個数n＝1と個数hn＝1は等しいから、ユーザデータ「ユーザデータ1」に続く「ユーザデータ2」は、ユーザ識別ID「h01」に対応付けられて記録される。
【０１８２】
そして、それ以降は、新たに派生ID「hasei2」が生成され、その派生ID「hasei2」に対応付けられて記録されているユーザデータの個数hnが、この時点における個数n=2と等しくなるまで、ユーザデータが派生ID「hasei2」に対応付けられて記録される。
【０１８３】
ここでは、派生ID「hasei2」に対応付けられて、ユーザデータとして「ユーザデータ3」および「ユーザデータ4」が記録されている。
【０１８４】
また、それ以降は同様にして、ユーザ識別ID「h01」に対応付けられてユーザデータ「ユーザデータ5」が記録され、派生ID「hasei3」が生成されて、その派生ID「hasei3」に対応付けられてユーザデータ「ユーザデータ6」乃至「ユーザデータ8」が記録される。さらに、その後はユーザ識別ID「h01」に対応付けられてユーザデータ「ユーザデータ9」が記録される。
【０１８５】
以上のようにして、ユーザデータがn+1個記録されるごとに新たに派生IDを生成し、その派生IDに対応付けてユーザデータを記録していくことで、ユーザデータの匿名性を向上させることができる。
【０１８６】
特に、この例では、記録済みユーザデータの数が増えるほど、すなわちユーザ識別IDに対応付けられて記録されているユーザデータの個数nが多くなるほど、新たに生成された派生IDに対応付けられて記録されるユーザデータの個数hnも多くなる。そのため、規則性を特定することが困難である。さらに、記録部２３にはユーザ識別IDと記録済みデータ数xとを対応付けたテーブル等も記録されない。したがって、各派生IDやユーザ識別IDの対応関係を把握し得ない第三者には、ユーザデータを記録するアルゴリズムを特定することは困難である。
【０１８７】
〈データ記録処理の説明〉
次に、図１２のフローチャートを参照して、図１１を参照して説明したアルゴリズムでユーザデータが記録されていく場合にデータ管理装置１１により行われるデータ記録処理について説明する。なお、ステップＳ１９１の処理は図３のステップＳ１１の処理と同様であるので、その説明は省略する。
【０１８８】
ステップＳ１９２において、検索部３３は、ステップＳ１９１の処理で取得されたユーザ識別IDに基づいて検索を行い、そのユーザ識別IDに対応付けられて記録部２３に記録されているユーザデータの個数nを特定する。
【０１８９】
ステップＳ１９３において、派生ID生成部３１は、ステップＳ１９１の処理で取得部２１により取得されたユーザ識別IDと、ステップＳ１９２の処理で特定された個数nとに基づいて派生IDを生成する。
【０１９０】
例えば派生ID生成部３１は、ユーザ識別IDの最後尾に個数nの値を付加して得られるデータを引数とし、その引数を一方向関数Fに代入して演算を行って、その結果得られた値を派生IDとする。
【０１９１】
なお、その他、ユーザ識別IDに対応付けられて記録部２３に記録されているユーザデータのうち、最後に記録されたユーザデータを、ユーザ識別IDの最後尾に付加して引数とし、その引数を一方向関数Fに代入して派生IDを算出するようにしてもよい。
【０１９２】
ステップＳ１９４において、検索部３３は、ステップＳ１９３の処理で生成された派生IDに基づいて検索を行い、その派生IDに対応付けられて記録部２３に記録されているユーザデータの個数hnを特定する。
【０１９３】
ステップＳ１９５において、記録制御部３２は、hn＜nであるか否かを判定する。すなわち、記録制御部３２は、ステップＳ１９４で特定された個数hnが、ステップＳ１９２で特定された個数n未満であるか否かを判定する。
【０１９４】
なお、ここでは個数hnと個数nを比較する例について説明するが、派生IDに対応付けられているユーザデータの個数hnが所定数以下であるかを判定するための閾値は、個数nに限らず、個数nを所定の関数に代入して得られる値など、どのようなものであってもよい。例えば閾値は、個数nに基づいて定まる値であってもよいし、固定値であってもよい。
【０１９５】
ステップＳ１９５において、hn＜nであると判定された場合、処理はステップＳ１９６に進む。
【０１９６】
ステップＳ１９６において、記録制御部３２は、ステップＳ１９３の処理で生成された派生ID、およびステップＳ１９１の処理で取得されたユーザデータを記録部２３に供給して、それらの派生IDとユーザデータとを対応付けて記録させる。このようにしてユーザデータが記録されると、データ記録処理は終了する。
【０１９７】
これに対して、ステップＳ１９５において、hn＜nでないと判定された場合、処理はステップＳ１９７に進む。
【０１９８】
ステップＳ１９７において、記録制御部３２は、ステップＳ１９１の処理で取得されたユーザ識別IDとユーザデータを記録部２３に供給して、それらのユーザ識別IDとユーザデータとを対応付けて記録させる。このようにしてユーザデータが記録されると、データ記録処理は終了する。
【０１９９】
以上のようにして、データ管理装置１１は、ユーザ識別IDに対応付けられているユーザデータの個数nと、ユーザ識別IDとに基づいて派生IDを生成する。また、データ管理装置１１は、個数nと個数hnとを比較し、その比較結果に応じて派生IDにユーザデータを対応付けて記録するか、またはユーザ識別IDにユーザデータを対応付けて記録する。
【０２００】
これにより、ユーザデータの匿名性を向上させることができる。特に、データ管理装置１１では、記録済みユーザデータの増加に応じて、適切に派生IDが生成されていくので、K-匿名性を向上させることができる。
【０２０１】
〈読み出し処理の説明〉
続いて、図１２を参照して説明したデータ記録処理によりユーザデータが記録された場合に行われる読み出し処理について説明する。
【０２０２】
すなわち、以下、図１３のフローチャートを参照して、データ管理装置１１により行われる読み出し処理について説明する。なお、ステップＳ２２１の処理は図４のステップＳ４１の処理と同様であるので、その説明は省略する。
【０２０３】
ステップＳ２２２において、検索部３３は、ステップＳ２２１の処理で取得されたユーザ識別IDに対応付けられて記録部２３に記録されているユーザデータを検索するとともに、検索の結果得られたユーザデータを記録部２３から全て読み出して一時的に保持する。
【０２０４】
ステップＳ２２３において、検索部３３は、ステップＳ２２２の処理で読み出されたユーザデータの個数を特定することで、ユーザ識別IDに対応付けられて記録部２３に記録されているユーザデータの個数nを特定する。
【０２０５】
ステップＳ２２４において、派生ID生成部３１は、ステップＳ２２１の処理で取得部２１により取得されたユーザ識別IDと、ステップＳ２２３の処理で特定された個数nとに基づいて派生IDを生成する。
【０２０６】
例えば派生ID生成部３１は、個数nに対応するカウンタn’の値を１とし、ユーザ識別IDの最後尾にカウンタn’の値を付加して得られるデータを引数として、その引数を一方向関数Fに代入して演算を行い、その結果得られた値を派生IDとする。
【０２０７】
そして、派生ID生成部３１は、カウンタn’の値がn’=nとなるまで、カウンタn’の値を１ずつインクリメントしながら、各カウンタn’の値について派生IDを生成する。これにより、合計n個の派生IDが得られることになる。
【０２０８】
ステップＳ２２５において、検索部３３は、ステップＳ２２４の処理で生成された各派生IDに対応付けられて記録部２３に記録されているユーザデータを検索するとともに、検索の結果得られたユーザデータを記録部２３から全て読み出して一時的に保持する。
【０２０９】
ステップＳ２２６において、検索部３３は、検索結果として得られた全ユーザデータ、つまりステップＳ２２２およびステップＳ２２５の処理で読み出した全てのユーザデータをマージして、出力部２４に供給する。
【０２１０】
そして、その後、ステップＳ２２７の処理が行われて読み出し処理は終了するが、ステップＳ２２７の処理は図４のステップＳ４９の処理と同様であるので、その説明は省略する。なお、この読み出し処理では、個数nが特定された時点で、全ユーザデータ数を見積もることができるため、ユーザデータのマージ処理に必要な時間を推測することが可能となる。そこで、適切なタイミングで、ユーザ等に対して処理の待ち時間を提示するようにしてもよい。
【０２１１】
以上のようにしてデータ管理装置１１は、ユーザ識別IDに対応付けられているユーザデータを読み出すとともに、読み出したユーザデータの個数nとユーザ識別IDに基づいて派生IDを生成し、その派生IDに対応付けられているユーザデータを読み出す。
【０２１２】
この場合においても、第三者は、どの派生IDが同じユーザのものであるかを特定することができないし、ユーザ識別IDと派生IDを区別することもできない。このようにユーザデータの管理側のみがユーザ識別IDについて記録されている全ユーザデータを読み出すことができるようにすることで、ユーザデータの匿名性を向上させることができる。
【０２１３】
また、上述した第１の実施の形態乃至第４の実施の形態では、それぞれ異なるアルゴリズムに従って、派生IDの生成およびユーザデータの記録が行われているが、これらのアルゴリズムの何れかを選択して派生IDの生成およびユーザデータの記録を行うようにしてもよい。そのような場合、例えば記録部２３に選択可能なアルゴリズムを示す情報を記録しておき、ユーザごとにアルゴリズムを選択してユーザデータを記録するようにすればよい。また、この場合には、どのユーザがどのアルゴリズムを選択したかが分かるように選択結果を示す情報を記録しておけばよい。さらに、ユーザデータの種別等によって、特定のアルゴリズムが選択されるなどしてもよい。
【０２１４】
さらに、以上においては記録済みデータ数や、薬歴のデータなどの特定種別の記録済みユーザデータ等を用いて派生IDを生成する例について説明した。しかし、その他、ユーザの年齢など、ユーザに関する情報や、ユーザデータの記録日時、種別などのユーザデータに関連する情報を用いて派生IDを生成してもよい。また、週や月が変わる毎に派生IDを生成するなど、ユーザデータを記録する際の情報に応じ派生IDを生成するよう、制御してもよい。
【０２１５】
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０２１６】
図１４は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【０２１７】
コンピュータにおいて、CPU（Central Processing Unit）５０１，ROM（Read Only Memory）５０２，RAM（Random Access Memory）５０３は、バス５０４により相互に接続されている。
【０２１８】
バス５０４には、さらに、入出力インターフェース５０５が接続されている。入出力インターフェース５０５には、入力部５０６、出力部５０７、記録部５０８、通信部５０９、及びドライブ５１０が接続されている。
【０２１９】
入力部５０６は、キーボード、マウス、マイクロフォン、撮像素子などよりなる。出力部５０７は、ディスプレイ、スピーカなどよりなる。記録部５０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部５０９は、ネットワークインターフェースなどよりなる。ドライブ５１０は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア５１１を駆動する。
【０２２０】
以上のように構成されるコンピュータでは、CPU５０１が、例えば、記録部５０８に記録されているプログラムを、入出力インターフェース５０５及びバス５０４を介して、RAM５０３にロードして実行することにより、上述した一連の処理が行われる。
【０２２１】
コンピュータ（CPU５０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア５１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０２２２】
コンピュータでは、プログラムは、リムーバブルメディア５１１をドライブ５１０に装着することにより、入出力インターフェース５０５を介して、記録部５０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部５０９で受信し、記録部５０８にインストールすることができる。その他、プログラムは、ROM５０２や記録部５０８に、あらかじめインストールしておくことができる。
【０２２３】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０２２４】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【０２２５】
例えば、本技術は、１つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【０２２６】
また、上述のフローチャートで説明した各ステップは、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２２７】
さらに、１つのステップに複数の処理が含まれる場合には、その１つのステップに含まれる複数の処理は、１つの装置で実行する他、複数の装置で分担して実行することができる。
【０２２８】
さらに、本技術は、以下の構成とすることも可能である。
【０２２９】
［１］
ユーザを特定する個人識別情報および記録対象データを取得する取得部と、
既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成する派生識別情報生成部と、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる記録制御部と
を備える情報処理装置。
［２］
前記派生識別情報生成部は、前記個人識別情報に対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
［１］に記載の情報処理装置。
［３］
前記派生識別情報生成部は、既に記録されている前記記録済データと前記個人識別情報から前記派生識別情報を生成する
［１］または［２］に記載の情報処理装置。
［４］
前記派生識別情報生成部は、所定数の前記記録対象データが前記記録済データとして記録されるごとに、新たな前記派生識別情報を生成する
［１］乃至［３］の何れか一項に記載の情報処理装置。
［５］
前記所定数は前記記録済データの個数に応じて変化する
［４］に記載の情報処理装置。
［６］
前記記録制御部は、生成された前記派生識別情報に対応付けられて記録されている前記記録済データの個数と、前記個人識別情報に対応付けられて記録されている前記記録済データの個数とに基づき、前記記録対象データを前記個人識別情報、または生成された前記派生識別情報に対応付けて記録させる
［１］乃至［５］の何れか一項に記載の情報処理装置。
［７］
ユーザを特定する個人識別情報および記録対象データを取得する取得部と、
前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成する派生識別情報生成部と、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる記録制御部と
を備える情報処理装置。
［８］
前記派生識別情報生成部は、既に記録されている記録済データと前記個人識別情報から前記派生識別情報を生成する
［７］に記載の情報処理装置。
［９］
前記派生識別情報生成部は、最後に記録された前記記録済データと、前記個人識別情報とから得られるデータに対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
［８］に記載の情報処理装置。
［１０］
前記派生識別情報生成部は、前記記録対象データの種別または記録日時に基づいて、前記派生識別情報を生成する
［７］に記載の情報処理装置。
［１１］
前記派生識別情報生成部は、前記取得部より取得した前記記録対象データが、所定の記録対象データとは異なる場合、前記派生識別情報を生成する
［７］乃至［１０］の何れか一項に記載の情報処理装置。
［１２］
前記記録制御部は、前記記録対象データに基づき、前記記録対象データを前記個人識別情報または前記派生識別情報に対応付けて記録させる
［７］乃至［１１］の何れか一項に記載の情報処理装置。
［１３］
ユーザを特定する個人識別情報および記録対象データを取得し、
既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む情報処理方法。
［１４］
ユーザを特定する個人識別情報および記録対象データを取得し、
既に記録されている記録済データの数に基づき、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む処理をコンピュータに実行させるプログラム。
［１５］
ユーザを特定する個人識別情報および記録対象データを取得し、
前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む情報処理方法。
［１６］
ユーザを特定する個人識別情報および記録対象データを取得し、
前記記録対象データに基づいて、前記個人識別情報から派生識別情報を生成し、
前記派生識別情報または前記個人識別情報と、前記記録対象データとを対応付けて記録させる
ステップを含む処理をコンピュータに実行させるプログラム。
［１７］
既に記録されている記録データの数に基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置であって、
前記個人識別情報から前記派生識別情報を生成する派生識別情報生成部と、
生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データを読み出す読み出し部と
を備える情報処理装置。
［１８］
前記派生識別情報生成部は、前記個人識別情報に対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
［１７］に記載の情報処理装置。
［１９］
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報から前記派生識別情報を生成する
［１７］に記載の情報処理装置。
［２０］
前記派生識別情報生成部は、所定の数と前記個人識別情報から前記派生識別情報を生成する
［１７］に記載の情報処理装置。
［２１］
前記派生識別情報生成部は、前記所定の数を一定間隔または不定間隔で変化させる
［２０］に記載の情報処理装置。
［２２］
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データの数に基づいて、前記派生識別情報を生成する
［１７］に記載の情報処理装置。
［２３］
記録対象とされた記録データに基づき、ユーザを特定する個人識別情報から派生識別情報が生成され、前記派生識別情報または前記個人識別情報に対応付けられて記録部に記録された前記記録データを読み出す情報処理装置であって、
前記個人識別情報から前記派生識別情報を生成する派生識別情報生成部と、
生成された前記派生識別情報または前記個人識別情報に対応付けられて記録されている前記記録データを読み出す読み出し部と
を備える情報処理装置。
［２４］
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報とから前記派生識別情報を生成する
［２３］に記載の情報処理装置。
［２５］
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データと前記個人識別情報とから得られるデータに対して一方向関数を用いた演算を行うことで、前記派生識別情報を生成する
［２４］に記載の情報処理装置。
［２６］
前記派生識別情報生成部は、前記個人識別情報に対応付けられて記録されている前記記録データの種別または記録日時に基づいて、前記派生識別情報を生成する
［２３］に記載の情報処理装置。
【符号の説明】
【０２３０】
１１  データ管理装置，  ２１  取得部，  ２２  制御部，  ２３  記録部，  ３１  派生ID生成部，  ３２  記録制御部，  ３３  検索部
【図１】
2016117354.tif 000003
【図２】
2016117354.tif 000004
【図３】
2016117354.tif 000005
【図４】
2016117354.tif 000006
【図５】
2016117354.tif 000007
【図６】
2016117354.tif 000008
【図７】
2016117354.tif 000009
【図８】
2016117354.tif 000010
【図９】
2016117354.tif 000011
【図１０】
2016117354.tif 000012
【図１１】
2016117354.tif 000013
【図１２】
2016117354.tif 000014
【図１３】
2016117354.tif 000015
【図１４】
2016117354.tif 000016
【国際調査報告】
2016117354.tif 000017
2016117354.tif 000018
2016117354.tif 000019