(57)【要約】      （修正有）【課題】個人情報を特定しうるレベルを判定できる匿名化レベル判定装置を提供する。【解決手段】一のＩＤに複数項目の情報が関連付けられた一のレコードを複数含むデータテーブル内の情報の匿名化レベルを判定する匿名化レベル判定装置であって、第１抽出部４は、受付部２が受け付けた種別のデータテーブルから、受け付けたＩＤおよび項目の情報を抽出する。第２抽出部６は、受け付けた種別以外のデータテーブルから、受け付けたＩＤおよび項目の情報を抽出する。第３抽出部９は、受け付けた種別以外のデータテーブルから、受け付けたＩＤ以外のＩＤおよび項目の情報を抽出する。第１計算部７は、第１抽出部および第２抽出部の一致度を計算する。第２計算部１０は、第１抽出部および第３抽出部の一致度を計算する。判定部１１は、第１計算部および第２計算部による計算結果から、匿名化レベルを判定する。【選択図】図１
2020154481.tif 000002
【特許請求の範囲】
【請求項１】
一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得する際に、前記情報の匿名化レベルを判定する匿名化レベル判定装置であって、
データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付ける受付部と、
前記受付部が受け付けた種別のデータテーブルから、前記受付部が受け付けた識別情報を含むレコードを検索する第１検索部と、
前記第１検索部が検索したレコードから、前記受付部が受け付けた項目の情報を抽出する第１抽出部と、
前記受付部が受け付けた種別以外のデータテーブルから、前記受付部が受け付けた識別情報を含むレコードを検索する第２検索部と、
前記第２検索部が検索したレコードに含まれる情報を、項目毎に抽出する第２抽出部と、
前記第１抽出部が抽出した情報と、前記第２抽出部が抽出した情報との一致度を計算する第１計算部と、
前記受付部が受け付けた種別以外のデータテーブルから、前記受付部が受け付けた識別情報以外の識別情報を含むレコードを検索する第３検索部と、
前記第３検索部が検索したレコードに含まれる情報を、項目毎に抽出する第３抽出部と、
前記第１抽出部が抽出した情報と、前記第３抽出部が抽出した情報との一致度を計算する第２計算部と、
前記第１計算部および前記第２計算部による計算結果から、匿名化レベルを判定する判定部と、
を備えることを特徴とする匿名化レベル判定装置。
【請求項２】
請求項１に記載の匿名化レベル判定装置であって、
前記判定部は、
レベル判定基準情報を管理する管理部から前記レベル判定基準情報を取得し、取得した前記レベル判定基準情報と、前記第１計算部および前記第２計算部による計算結果とから、匿名化レベルを判定する、
ことを特徴とする匿名化レベル判定装置。
【請求項３】
請求項１または請求項２に記載の匿名化レベル判定装置であって、
前記第１抽出部が同じ情報を複数抽出した場合、前記同じ情報をグループ化にする第１グループ化部と、
前記第２抽出部が同じ情報を複数抽出した場合、前記同じ情報をグループ化にする第２グループ化部と、
をさらに備え、
前記第１計算部は、前記第１グループ化部がグループ化した情報と、前記第２グループ化部がグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定装置。
【請求項４】
請求項３に記載の匿名化レベル判定装置であって、
前記第３抽出部が同じ情報を複数抽出した場合、前記同じ情報をグループ化にする第３グループ化部、
をさらに備え、
前記第２計算部は、前記第１グループ化部がグループ化した情報と、前記第３グループ化部がグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定装置。
【請求項５】
一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得する際に、前記情報の匿名化レベルを判定する匿名化レベル判定方法であって、
（ａ）データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付けるステップと、
（ｂ）前記ステップ（ａ）で受け付けた種別のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｃ）前記ステップ（ｂ）で検索したレコードから、前記ステップ（ａ）で受け付けた項目の情報を抽出するステップと、
（ｄ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｅ）前記ステップ（ｄ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｆ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｅ）で抽出した情報との一致度を計算するステップと、
（ｇ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報以外の識別情報を含むレコードを検索するステップと、
（ｈ）前記ステップ（ｇ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｉ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｈ）で抽出した情報との一致度を計算するステップと、
（ｊ）前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果から、匿名化レベルを判定するステップと、
を備えることを特徴とする匿名化レベル判定方法。
【請求項６】
請求項５に記載の匿名化レベル判定方法であって、
前記ステップ（ｊ）では、
レベル判定基準情報を管理する管理部から前記レベル判定基準情報を取得し、取得した前記レベル判定基準情報と、前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果とから、匿名化レベルを判定する、
ことを特徴とする匿名化レベル判定方法。
【請求項７】
請求項５または請求項６に記載の匿名化レベル判定方法であって、
（ｋ）前記ステップ（ｃ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
（ｌ）前記ステップ（ｅ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
をさらに備え、
前記ステップ（ｆ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｌ）でグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定方法。
【請求項８】
請求項７に記載の匿名化レベル判定方法であって、
（ｍ）前記ステップ（ｈ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップ、
をさらに備え、
前記ステップ（ｉ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｍ）でグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定方法。
【請求項９】
コンピュータに、一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得させる際に、前記情報の匿名化レベルを判定させるプログラムであって、
前記コンピュータに、
（ａ）データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付けるステップと、
（ｂ）前記ステップ（ａ）で受け付けた種別のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｃ）前記ステップ（ｂ）で検索したレコードから、前記ステップ（ａ）で受け付けた項目の情報を抽出するステップと、
（ｄ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｅ）前記ステップ（ｄ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｆ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｅ）で抽出した情報との一致度を計算するステップと、
（ｇ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報以外の識別情報を含むレコードを検索するステップと、
（ｈ）前記ステップ（ｇ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｉ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｈ）で抽出した情報との一致度を計算するステップと、
（ｊ）前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果から、匿名化レベルを判定するステップと、
を実行させることを特徴とするプログラム。
【請求項１０】
請求項９に記載のプログラムであって、
前記ステップ（ｊ）では、
レベル判定基準情報を管理する管理部から前記レベル判定基準情報を取得し、取得した前記レベル判定基準情報と、前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果とから、匿名化レベルを判定する、
ことを特徴とするプログラム。
【請求項１１】
請求項９または請求項１０に記載のプログラムであって、
前記コンピュータに、
（ｋ）前記ステップ（ｃ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
（ｌ）前記ステップ（ｅ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
をさらに実行させ、
前記ステップ（ｆ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｌ）でグループ化した情報との一致度を計算する、
ことを特徴とするプログラム。
【請求項１２】
請求項１１に記載のプログラムであって、
前記コンピュータに、
（ｍ）前記ステップ（ｈ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップ、
をさらに実行させ、
前記ステップ（ｉ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｍ）でグループ化した情報との一致度を計算する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、指定された情報の匿名化レベルを判定する匿名化レベル判定装置および匿名化レベル判定方法に関し、さらには、それらを実現するためのプログラムに関する。
【背景技術】
【０００２】
近年、データベースに格納された個人情報、またはそれに紐づく情報を活用したサービスが提案されている。個人情報は法律により保護されているが、個人情報を利用したい事業者等は、個人を特定できないように匿名化された状態であれば、個人情報を取得することが可能である。
【０００３】
特許文献１には、ユーザから提供された個人情報が匿名化された匿名化データがどのように利用・流通されているかを把握することができる方法が開示されている。特許文献１に記載の方法では、個人情報を提供したユーザに対して、自身の個人情報の利用状況を容易に把握することを可能としている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−１０５２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
個人情報のなかには、組み合わせによっては個人が特定される情報もある。特許文献１では、匿名化データがどの程度匿名化されたものであるかの判定ができない。このため、個人情報を取得する事業者は、意図せずに、個人が特定できる情報を取得する場合もある。
【０００６】
本発明の目的の一例は、個人情報を特定しうるレベルを判定できる匿名化レベル判定装置、匿名化レベル判定方法およびプログラムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明の一側面における匿名化レベル判定装置は、
一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得する際に、前記情報の匿名化レベルを判定する匿名化レベル判定装置であって、
データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付ける受付部と、
前記受付部が受け付けた種別のデータテーブルから、前記受付部が受け付けた識別情報を含むレコードを検索する第１検索部と、
前記第１検索部が検索したレコードから、前記受付部が受け付けた項目の情報を抽出する第１抽出部と、
前記受付部が受け付けた種別以外のデータテーブルから、前記受付部が受け付けた識別情報を含むレコードを検索する第２検索部と、
前記第２検索部が検索したレコードに含まれる情報を、項目毎に抽出する第２抽出部と、
前記第１抽出部が抽出した情報と、前記第２抽出部が抽出した情報との一致度を計算する第１計算部と、
前記受付部が受け付けた種別以外のデータテーブルから、前記受付部が受け付けた識別情報以外の識別情報を含むレコードを検索する第３検索部と、
前記第３検索部が検索したレコードに含まれる情報を、項目毎に抽出する第３抽出部と、
前記第１抽出部が抽出した情報と、前記第３抽出部が抽出した情報との一致度を計算する第２計算部と、
前記第１計算部および前記第２計算部による計算結果から、匿名化レベルを判定する判定部と、
を備えることを特徴とする。
【０００８】
また、上記目的を達成するため、本発明の一側面における匿名化レベル判定方法は、
一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得する際に、前記情報の匿名化レベルを判定する匿名化レベル判定方法であって、
（ａ）データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付けるステップと、
（ｂ）前記ステップ（ａ）で受け付けた種別のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｃ）前記ステップ（ｂ）で検索したレコードから、前記ステップ（ａ）で受け付けた項目の情報を抽出するステップと、
（ｄ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｅ）前記ステップ（ｄ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｆ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｅ）で抽出した情報との一致度を計算するステップと、
（ｇ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報以外の識別情報を含むレコードを検索するステップと、
（ｈ）前記ステップ（ｇ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｉ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｈ）で抽出した情報との一致度を計算するステップと、
（ｊ）前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果から、匿名化レベルを判定するステップと、
を備えることを特徴とする。
【０００９】
更に、上記目的を達成するため、本発明の一側面におけるプログラムは、
コンピュータに、一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得させる際に、前記情報の匿名化レベルを判定させるプログラムであって、
前記コンピュータに、
（ａ）データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付けるステップと、
（ｂ）前記ステップ（ａ）で受け付けた種別のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｃ）前記ステップ（ｂ）で検索したレコードから、前記ステップ（ａ）で受け付けた項目の情報を抽出するステップと、
（ｄ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｅ）前記ステップ（ｄ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｆ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｅ）で抽出した情報との一致度を計算するステップと、
（ｇ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報以外の識別情報を含むレコードを検索するステップと、
（ｈ）前記ステップ（ｇ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｉ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｈ）で抽出した情報との一致度を計算するステップと、
（ｊ）前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果から、匿名化レベルを判定するステップと、
を実行させることを特徴とする。
【発明の効果】
【００１０】
以上のように本発明によれば、個人情報を特定しうるレベルを判定できる。
【図面の簡単な説明】
【００１１】
【図１】図１は、匿名化レベル判定装置の概略構成を示すブロック図である。
【図２】図２は、匿名化レベル判定装置の具体的構成を示すブロック図である。
【図３】図３は、ユーザ情報記憶部に記憶されるデータの一例を示す図である。
【図４】図４は、ユーザ情報記憶部に記憶されるデータの一例を示す図である。
【図５】図５は、ユーザ情報記憶部に記憶されるデータの一例を示す図である。
【図６】図６は、ユーザ情報記憶部に記憶されるデータの一例を示す図である。
【図７】図７は、第１検索部、第１抽出部および第１グループ化部による処理を説明するための図である。
【図８】図８は、第２検索部、第２抽出部および第２グループ化部による処理を説明するための図である。
【図９】図９は、第１計算部による計算方法を説明するための図である。
【図１０】図１０は、第１抽出部が複数の情報を抽出した場合の計算方法を説明するための図である。
【図１１】図１１は、第１抽出部が複数の情報を抽出した場合の計算方法を説明するための図である。
【図１２】図１２は、第３検索部、第３抽出部および第３グループ化部による処理を説明するための図である。
【図１３】図１３は、レベル判定基準情報を示す図である。
【図１４】図１４は、公開ポリシデータを示す図である。
【図１５】図１５は、匿名化レベル判定装置の動作を示すフロー図である。
【図１６】図１６は、指定情報抽出処理を示すフロー図である。
【図１７】図１７は、指定外情報抽出処理を示すフロー図である。
【図１８】図１８は、第１検索部および第１抽出部による処理を説明するための図である。
【図１９】図１９は、第２検索部および第２抽出部による処理を説明するための図である。
【図２０】図２０は、実施形態１、２における匿名化レベル判定装置を実現するコンピュータの一例を示すブロック図である。
【発明を実施するための形態】
【００１２】
（実施形態１）
以下、本発明における実施形態１の匿名化レベル判定装置および匿名化レベル判定方法について、図面を参照しつつ、説明する。
【００１３】
［装置構成］
図１は、匿名化レベル判定装置１の概略構成を示すブロック図である。
【００１４】
匿名化レベル判定装置１は、記憶部に記憶された複数のデータテーブルから、指定された情報を取得する際に、その情報の匿名化レベルを判定する装置である。データテーブルは、一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含む。匿名化レベル判定装置１は、受付部２、第１検索部３、第１抽出部４、第２検索部５、第２抽出部６、第１計算部７、第３検索部８、第３抽出部９、第２計算部１０、および判定部１１を備えている。
【００１５】
受付部２は、データテーブルの種別、データテーブルに含まれる項目、および、識別情報の指定を受け付ける。
【００１６】
第１検索部３は、受付部２が受け付けた種別のデータテーブルから、受付部２が受け付けた識別情報を含むレコードを検索する。
【００１７】
第１抽出部４は、第１検索部３が検索したレコードから、受付部２が受け付けた項目の情報を抽出する。
【００１８】
第２検索部５は、受付部２が受け付けた種別以外のデータテーブルから、受付部２が受け付けた識別情報を含むレコードを検索する。
【００１９】
第２抽出部６は、第２検索部５が検索したレコードに含まれる情報を、項目毎に抽出する。
【００２０】
第１計算部７は、第１抽出部４が抽出した情報と、第２抽出部６が抽出した情報との一致度を計算する。
【００２１】
第３検索部８は、受付部２が受け付けた種別以外のデータテーブルから、受付部２が受け付けた識別情報以外の識別情報を含むレコードを検索する。
【００２２】
第３抽出部９は、第３検索部８が検索したレコードに含まれる情報を、項目毎に抽出する。
【００２３】
第２計算部１０は、第１抽出部４が抽出した情報と、第３抽出部９が抽出した情報との一致度を計算する。
【００２４】
判定部１１は、第１計算部７および第２計算部１０による計算結果から、匿名化レベルを判定する。
【００２５】
この匿名化レベル判定装置１によれば、指定された情報が、個人情報を特定しうるレベルであるかを判定できる。
【００２６】
続いて、図２〜図１７を用いて、本実施形態の匿名化レベル判定装置１の構成について具体的に説明する。図２は、匿名化レベル判定装置１の具体的構成を示すブロック図である。
【００２７】
匿名化レベル判定装置１は、有線または無線のネットワークを介して、１または複数の端末装置（不図示）とデータ通信可能に接続されている。端末装置からは、ユーザに関する種々の情報が入力される。匿名化レベル判定装置１は、端末装置から入力された情報を記憶する。また、端末装置からは、サービス提供事業者（以下、単に事業者と言う）が取得したいユーザの情報の指定を受け付ける。匿名化レベル判定装置１は、指定された情報の匿名化レベルを判定する。そして、匿名化レベル判定装置１は、その判定結果に応じて、事業者への情報公開を許可し、または。情報公開を拒否する。
【００２８】
なお、匿名化レベル判定装置１は、キーボードなどの入力装置を備え、その入力装置を介して、ユーザから情報が直接入力される構成でもよい。また、匿名化レベル判定装置１は、その入力装置を介して、事業者から取得したい情報の指定を受け付ける構成でもよい。
【００２９】
匿名化レベル判定装置１は、上記した受付部２、第１検索部３、第１抽出部４、第２検索部５、第２抽出部６、第１計算部７、第３検索部８、第３抽出部９、第２計算部１０、および判定部１１を備えている。また、匿名化レベル判定装置１は、ユーザ情報記憶部１２、公開ポリシ管理部１３、第１グループ化部１４、第２グループ化部１５、および第３グループ化部１６をさらに備えている。
【００３０】
ユーザ情報記憶部１２は複数のデータテーブルを記憶する。データテーブルは、一の識別情報（以下、ＩＤと言う）に複数項目の情報が関連付けられた一のレコードを複数含む。このデータテーブルの各行はレコードに相当し、各列は項目に相当する。ユーザ情報記憶部１２が記憶する情報は、匿名化レベル判定装置１に通信接続される端末装置（不図示）から入力されてもよいし、匿名化レベル判定装置１が備える入力装置（不図示）から入力されてもよい。また、ユーザ情報記憶部１２に記憶される情報は、ユーザの個人情報を含む。図３、図４、図５および図６は、ユーザ情報記憶部１２に記憶されるデータテーブルの一例を示す図である。
【００３１】
図３に示すデータテーブルは、「水道検針情報」に関するデータテーブルである。このデータテーブルは、ＩＤに、「氏名」、「水道使用量」、「水道料金」および「検針月」の情報が関連付けられた一のレコードを、複数含んでいる。
【００３２】
図４に示すデータテーブルは、「国民情報」に関するデータテーブルである。このデータテーブルは、ＩＤに、「氏名」、「居住区」、および「年代」の情報が関連付けられた一のレコードを、複数含んでいる。
【００３３】
図５に示すデータテーブルは、「屋内温度情報」に関するデータテーブルである。このデータテーブルは、ＩＤに、「氏名」、「屋内温度」、および「計測日時」の情報が関連付けられた一のレコードを、複数含んでいる。
【００３４】
図６に示すデータテーブルは、「病気情報」に関するデータテーブルである。このデータテーブルは、ＩＤに、「性別」、「年齢」、および「病名」の情報が関連付けられた一のレコードを、複数含んでいる。
【００３５】
なお、ユーザ情報記憶部１２は、匿名化レベル判定装置１が備えていてもよい。また、ユーザ情報記憶部１２は、匿名化レベル判定装置１の外部に設けられていて、有線または無線の通信を通じて匿名化レベル判定装置１と接続されていてもよい。
【００３６】
受付部２は、事業者が取得したい、データテーブルの種別、そのデータテーブルに含まれる項目、および、ＩＤを受け付ける。受付部２が受け付ける情報は、匿名化レベル判定装置１に接続される端末装置（不図示）、または、匿名化レベル判定装置１が備える入力装置（不図示）から入力される。以下の説明では、受付部２は、データテーブルの種別として「水道検針情報」、項目として「氏名」、ＩＤとして「ユーザＡ」の指定を受け付けたものとして説明する。
【００３７】
第１検索部３は、受付部２が受け付けた種別のデータテーブルから、受付部２が受け付けたＩＤを含むレコードを検索する。第１抽出部４は、第１検索部３が検索したレコードから、受付部２が受け付けた項目の情報を抽出する。第１グループ化部１４は、第１抽出部４が同じ情報を複数抽出した場合、その同じ情報をグループ化にする。
【００３８】
図７は、第１検索部３、第１抽出部４および第１グループ化部１４による処理を説明するための図である。
【００３９】
第１検索部３は、「水道検針情報」のデータテーブルをユーザ情報記憶部１２から検索する（図７（Ａ））。そして、第１検索部３は、検索した「水道検針情報」データテーブルから、ＩＤ「ユーザＡ」を含むレコードを検索する（図７（Ｂ））。
【００４０】
第１抽出部４は、第１検索部３が検索した図７（Ｂ）に示すレコードから、「氏名」の項目に含まれる情報を抽出する（図７（Ｃ））。第１グループ化部１４は、第１抽出部４が抽出した同じ情報を、一の情報にまとめる（図７（Ｄ））。
【００４１】
この第１抽出部４が抽出した情報は、事業者が指定した、取得したい情報である。以下では、第１抽出部４が抽出した情報は、「指定情報」と言う。指定情報には、第１グループ化部１４によりグループ化された情報を含む。つまり、指定情報は、図７（Ｄ）に示す情報である。
【００４２】
第２検索部５は、受付部２が受け付けた種別以外のデータテーブルから、受付部２が受け付けたＩＤを含むレコードを検索する。第２抽出部６は、第２検索部５が検索したレコードに含まれる情報を、項目毎に抽出する。第２グループ化部１５は、第２抽出部６が同じ情報を複数抽出した場合、同じ情報をグループ化にする。
【００４３】
図８は、第２検索部５、第２抽出部６および第２グループ化部１５による処理を説明するための図である。
【００４４】
第２検索部５は、ユーザ情報記憶部１２から、「水道検針情報」以外のデータテーブルを検索する（図８（Ａ））。図８では、「水道検針情報」以外のデータテーブルを、図５に示す「屋内温度情報」のデータテーブルとした場合を示す。第２検索部５は、検索した「屋内温度情報」のデータテーブルから、ＩＤ「ユーザＡ」を含むレコードを検索する（図８（Ｂ））。
【００４５】
第２抽出部６は、第２検索部５が検索した図８（Ｂ）に示すレコードに含まれる情報を、項目毎に抽出する（図８（Ｃ））。第２グループ化部１５は、同じ項目に含まれる情報のうち、同じ情報を一の情報にまとめる（図８（Ｄ））。例えば、図８（Ｃ）の「屋内温度」の項目では、「１２℃」の情報が重複している。この場合、第２グループ化部１５は、図８（Ｄ）に示すように、複数の「１２℃」の情報を一つにまとめる。
【００４６】
なお、第２検索部５、第２抽出部６および第２グループ化部１５は、図４に示す「国民情報」、および、図６に示す「病気情報」の各データテーブルについても、同様の処理を行う。
【００４７】
第１計算部７は、項目毎に、指定情報と、第２抽出部６が抽出した情報とを比較して、一致度を計算する。ここで、第２抽出部６が抽出した情報には、第２グループ化部１５でグループ化された情報を含む。
【００４８】
図９は、第１計算部７による計算方法を説明するための図である。
【００４９】
第１計算部７は、指定情報「鈴木太郎」と、第２抽出部６が抽出した項目毎の情報「鈴木太郎」、「１２℃、１１℃」、「2018/12/10 11:00、2018/12/10 10:00、2018/12/10 09:00」とを比較して、一致度を計算する。一致度は、比較した情報数に対する、一致した数で表される。
【００５０】
具体的には、第１計算部７は、指定情報「鈴木太郎」と、「屋内温度情報」のデータテーブルの項目「氏名」から抽出した情報「鈴木太郎」とを比較する（図９（１））。この場合、比較する情報数は「１」であり、一致する数も「１」であるため、一致度は「１／１＝１」である。また、第１計算部７は、指定情報「鈴木太郎」と、「屋内温度情報」のデータテーブルの項目「屋内温度」から抽出した情報「１２℃、１１℃」とを比較する（図９（２））。この場合、比較する情報数は「２」であり、一致する数は「０」であるため、一致度は「０／２＝０」である。さらに、第１計算部７は、指定情報「鈴木太郎」と、「屋内温度情報」のデータテーブルの項目「計測日時」から抽出した情報「2018/12/10 11:00、2018/12/10 10:00、2018/12/10 09:00」とを比較する（図９（３））。この場合、比較する情報数は「３」であり、一致する数は「０」であるため、一致度は「０／３＝０」である。
【００５１】
なお、上記の例では、「水道検針情報」のデータテーブルから一の情報「鈴木太郎」のみが、第１抽出部４により抽出されているが、異なる複数の情報が抽出される場合もある。つまり、指定情報には複数の情報を含む。この場合、第１計算部７は、指定情報に含まれる各情報と、第２抽出部６が抽出した情報とを比較して、一致度を計算する。
【００５２】
図１０および図１１は、第１抽出部４が複数の情報を抽出した場合の計算方法を説明するための図である。図１０および図１１では、第１抽出部４が、「水道検針情報」のデータテーブルの項目「氏名」から、「鈴木太郎、佐藤花子」の情報を抽出したものとする。つまり、指定情報は「鈴木太郎、佐藤花子」の情報を含む。この場合、第１計算部７は、指定情報「鈴木太郎、佐藤花子」と、第２抽出部６が抽出した項目毎の情報「鈴木太郎」、「１２℃、１１℃」、「2018/12/10 11:00、2018/12/10 10:00、2018/12/10 09:00」とを比較して、一致度を計算する。
【００５３】
図１０に示すように、第１計算部７は、指定情報「鈴木太郎」と、「屋内温度情報」のデータテーブルの項目「氏名」から抽出した情報「鈴木太郎」とを比較（図１０（１））し、一致度を計算する。また、第１計算部７は、指定情報「鈴木太郎」と、「屋内温度情報」のデータテーブルの項目「屋内温度」から抽出した情報「１２℃、１１℃」とを比較（図１０（２））し、一致度を計算する。さらに、第１計算部７は、指定情報「鈴木太郎」と、「屋内温度情報」のデータテーブルの項目「計測日時」から抽出した情報「2018/12/10 11:00、2018/12/10 10:00、2018/12/10 09:00」とを比較（図１０（３））し、一致度を計算する。
【００５４】
図１１に示すように、第１計算部７は、指定情報「佐藤花子」と、「屋内温度情報」のデータテーブルの項目「氏名」から抽出した情報「鈴木太郎」とを比較する（図１１（１））。この場合、比較する情報数は「１」であり、一致する数は「０」であるため、一致度は「０／１＝０」である。また、第１計算部７は、指定情報「佐藤花子」と、「屋内温度情報」のデータテーブルの項目「屋内温度」から抽出した情報「１２℃、１１℃」とを比較（図１１（２））して、一致度を計算する。また、第１計算部７は、指定情報「佐藤花子」と、「屋内温度情報」のデータテーブルの項目「計測日時」から抽出した情報「2018/12/10 11:00、2018/12/10 10:00、2018/12/10 09:00」とを比較（図１１（３））して、一致度を計算する。
【００５５】
第１計算部７は、図１０（１）で計算した一致度と、図１１（１）で計算した一致度とから、指定情報は「鈴木太郎、佐藤花子」と、「屋内温度情報」のデータテーブルの項目「氏名」から抽出した情報「鈴木太郎」との一致度を計算する。また、第１計算部７は、図１０（２）で計算した一致度と、図１１（２）で計算した一致度とから、指定情報「鈴木太郎、佐藤花子」と、「屋内温度情報」のデータテーブルの項目「屋内温度」から抽出した情報「１２℃、１１℃」との一致度を計算する。さらに、第１計算部７は、図１０（３）で計算した一致度と、図１１（３）で計算した一致度とから、指定情報「鈴木太郎、佐藤花子」と、「屋内温度情報」のデータテーブルから抽出した項目「計測日時」の情報「2018/12/10 11:00、2018/12/10 10:00、2018/12/10 09:00」との一致度を計算する。例えば、第１計算部７は、一致度が最大となるものを選択する。なお、この一致度の計算方法は一例であり、これに限定されるものではない。
【００５６】
このように、指定情報に複数の情報が含まれている場合には、第１計算部７は、上記のように一致度を計算する。
【００５７】
図２の説明に戻る。第３検索部８は、受付部２が受け付けた種別以外のデータテーブルから、受付部２が受け付けたＩＤ以外のＩＤを含むレコードを検索する。第３抽出部９は、第３検索部８が検索したレコードに含まれる情報を、項目毎に抽出する。第３グループ化部１６は同じ情報を複数抽出した場合、その同じ情報をグループ化にする。
【００５８】
図１２は、第３検索部８、第３抽出部９および第３グループ化部１６による処理を説明するための図である。
【００５９】
第３検索部８は、ユーザ情報記憶部１２から、受付部２により指定された「水道検針情報」以外のデータテーブルを検索する（図１２（Ａ））。図１２では、図４に示す「国民情報」のデータテーブルを検索した場合を示す。そして、第３検索部８は、その「国民情報」のデータテーブルから、受付部２が受け付けたＩＤ「ユーザＡ」以外の「ユーザＢ」、「ユーザＣ」が含まれるレコードを検索する（図１２（Ｂ））。
【００６０】
第３抽出部９は、第３検索部８が検索したレコードに含まれる情報を、項目毎に抽出する（図１２（Ｃ））。第３グループ化部１６は、同じ項目に含まれる情報のうち、重複する情報を一の情報にまとめる。図１２に示す例では、重複する情報がないためグループ化はされない。
【００６１】
第２計算部１０は、項目毎に、指定情報と、第３抽出部９が抽出した情報との一致度を計算する。ここで、第３抽出部９が抽出した情報は、第３グループ化部１６でグループ化された情報を含む。上記例の場合、第２計算部１０は、指定情報「鈴木太郎」と、第３抽出部９が抽出した項目毎の情報「田中次郎、佐藤花子」、「Ａ市、Ｂ市」、「４０代、５０代」それぞれとを比較し、一致度を計算する。一致度の計算は、第１計算部７での説明と同様であるため、その説明は省略する。
【００６２】
判定部１１は、公開ポリシ管理部１３からレベル判定基準情報を取得する。そして、判定部１１は、取得したレベル判定基準情報と、第１計算部７および第２計算部１０による計算結果とから、匿名化レベルを判定する。
【００６３】
図１３は、レベル判定基準情報を示す図である。レベル判定基準情報は、公開ポリシ管理部１３に記憶される。匿名化レベルは、「１」、「２」、「３」に分類され、「１」はレベルが最も高い。判定部１１は、第１計算部７により計算した一致度が閾値以上となる項目が１以上、かつ、第２計算部１０により計算した一致度が閾値以上となる項目が０である場合、受付部２から指定された情報の匿名化レベルを「１」と判定する。また、判定部１１は、第１計算部７により計算した一致度が閾値以上となる項目が１以上、かつ、第２計算部１０により計算した一致度が閾値以上となる項目が１以上である場合、受付部２から指定された情報の匿名化レベルを「２」と判定する。さらに、判定部１１は、前記以外の場合、受付部２から指定された情報の匿名化レベルを「３」と判定する。なお、上記の閾値は、経験則などにより適宜設定される値である。
【００６４】
また、判定部１１は、公開ポリシ管理部１３から公開ポリシデータを取得する。そして、判定部１１は、取得した公開ポリシデータと、判定した匿名化レベルとから、指定情報を事業者に開示するかを判定する。
【００６５】
図１４は、公開ポリシデータを示す図である。公開ポリシデータは公開ポリシ管理部１３に記憶される。公開ポリシデータでは、ＩＤ毎に公開ポリシが定義づけられている。例えば、受付部２から指定されたＩＤが「ユーザＡ」である場合、判定部１１は、公開ポリシデータにおいて、ＩＤ「ユーザＡ」に対応付けられた公開ポリシを取得する。そして、判定部１１は、取得した公開ポリシに従い、判定した匿名化レベルが「２」以上であれば、指定情報の公開を許可する。なお、公開とは、例えば、事業者によるダウンロードである。
【００６６】
［動作説明］
次に、本実施形態における匿名化レベル判定装置１の動作について図１５、図１６および図１７を用いて説明する。図１５は、匿名化レベル判定装置１の動作を示すフロー図である。以下の説明においては、適宜図１〜図１４を参酌する。また、本実施形態１では、匿名化レベル判定装置１を動作させることによって、匿名化レベル判定法が実施される。よって、本実施の形態における匿名化レベル判定方法の説明は、以下の匿名化レベル判定装置１の動作説明に代える。
【００６７】
図１５に示す動作の前提として、ユーザ情報記憶部１２には、ユーザの情報が記憶される。また、公開ポリシ管理部１３には、レベル判定情報および公開ポリシが記憶されている。
【００６８】
上記前提として、匿名化レベル判定装置１は、事業者が指定した、データテーブルの種別、データテーブルに含まれる項目、および、ＩＤを、受付部２から受け付ける（Ｓ１）。次に、匿名化レベル判定装置１は、指定情報抽出処理を実行する。
【００６９】
図１６は、指定情報抽出処理を示すフロー図である。
【００７０】
第１検索部３は、受付部２から受け付けた種別のデータテーブルを、ユーザ情報記憶部１２から検索する（Ｓ２１）。そして、第１検索部３は、検索したデータテーブルから、受付部２が受け付けたＩＤを含むレコードを検索する（Ｓ２２）。続いて、第１抽出部４は、検索したレコードから、受付部２が受け付けた項目に含まれる情報を抽出する（Ｓ２３）。第１グループ化部１４は、Ｓ２３で抽出した情報が重複している場合、重複する情報を一の情報にまとめる（Ｓ２４）。
【００７１】
図１５のフローに戻る。匿名化レベル判定装置１は、指定外情報抽出処理を実行する（Ｓ３）。図１７は、指定外情報抽出処理を示すフロー図である。
【００７２】
第２検索部５は、受付部２が受け付けた種別以外のデータテーブルから、受付部２が受け付けたＩＤを含むレコードを検索する（Ｓ３１）。第２抽出部６は、第２検索部５が検索したレコードに含まれる情報を、項目毎に抽出する（Ｓ３２）。第２グループ化部１５は、Ｓ３２で抽出した情報が重複している場合、重複する情報を一の情報にまとめる（Ｓ３３）。受付部２が受け付けた種別以外の全データテーブルに対して、Ｓ３１〜Ｓ３３の処理が行われていない場合（Ｓ３４：ＮＯ）、第２検索部５、第２抽出部６および第２グループ化部１５は、Ｓ３１〜Ｓ３３の処理を繰り返す。
【００７３】
受付部２が受け付けた種別以外の全データテーブルに対して、Ｓ３１〜Ｓ３３の処理が行われた場合（Ｓ３４：ＹＥＳ）、第３検索部８は、受付部２が受け付けた種別以外のデータテーブルから、受付部２が受け付けたＩＤ以外のＩＤを含むレコードを検索する（Ｓ３５）。第３抽出部９は、第３検索部８が検索したレコードに含まれる情報を、項目毎に抽出する（Ｓ３６）。第３グループ化部１６は、Ｓ３６で抽出した情報が重複している場合、重複する情報を一の情報にまとめる（Ｓ３７）。受付部２が受け付けた種別以外の全データテーブルに対して、Ｓ３５〜Ｓ３７の処理が行われていない場合（Ｓ３８：ＮＯ）、第３検索部８、第３抽出部９および第３グループ化部１６は、Ｓ３５〜Ｓ３７の処理を繰り返す。受付部２が受け付けた種別以外の全データテーブルに対して、Ｓ３５〜Ｓ３７の処理が行われた場合（Ｓ３８：ＹＥＳ）、のフローに戻る。
【００７４】
第１計算部７は、項目毎に、指定情報と、第２抽出部６が抽出した情報とを比較して、一致度を計算する（Ｓ４）。続いて、第２計算部１０は、項目毎に、指定情報と、第３抽出部９が抽出した情報とを比較して、一致度を計算する（Ｓ５）。判定部１１は、公開ポリシ管理部１３に記憶されたレベル判定基準情報と、第１計算部７および第２計算部１０による計算結果とから、匿名化レベルを判定する（Ｓ６）。そして、判定部１１は、公開ポリシ管理部１３に記憶された公開ポリシデータと、Ｓ６で判定した匿名化レベルとから、受付部２から指定された情報を事業者に開示するかを判定する（Ｓ７）。
【００７５】
判定部１１が報を事業者に開示すると判定した場合（Ｓ８：ＹＥＳ）、匿名化レベル判定装置１は、受付部２から指定された情報を、事業者に対して公開可能にする（Ｓ９）。判定部１１が報を事業者に開示しないと判定した場合（Ｓ８：ＮＯ）、匿名化レベル判定装置１は、本処理を終了する。
【００７６】
以上のように本実施形態１によれば、指定情報と、指定されていない他のデータテーブルの情報との一致度を計算して、匿名化レベルを判定することで、個人情報を特定しうるレベルを判定できる。これにより、組み合わせによっては個人が特定される可能性がある情報のレベルを低く判定して、事業者に公開することを防止できる。また、第１グループ化部１４、第２グループ化部１５および第３グループ化部１６が重複する情報をまとめることで、判定部１１によるレベル判定を行う際の処理負担が軽減される。
【００７７】
また、ユーザ情報記憶部１２に記憶された情報のみで匿名化レベルを判定することができるため、名前辞書または住所辞書などを用いて判定する方法と比較して、辞書を用意する手間を省くことができる。さらに、また、辞書に登録されていないような未知のユーザ情報であっても、匿名化レベルを広く汎用的に判定することができる。
【００７８】
（実施形態２）
次に実施形態２における匿名化レベル判定装置１について、図面を参照しながら説明する。実施形態１では、受付部２は、データテーブルに含まれる一の項目のみを受け付けている。これに対し、実施形態２では、受付部２は複数の項目を受け付ける点で相違する。匿名化レベル判定装置１の構成については、実施形態１と同じである。このため、本実施形態では、実施形態１と同じ符号を用いて説明する。
【００７９】
本実施形態では、受付部２は、データテーブルの種別として「水道検針情報」、項目として「氏名、水道使用量」、および、ＩＤとして「ユーザＡ」の指定を受け付けたものとして説明する。
【００８０】
図１８は、第１検索部３および第１抽出部４による処理を説明するための図である。
【００８１】
第１検索部３は、「水道検針情報」のデータテーブルをユーザ情報記憶部１２から検索する（図１８（Ａ））。第１検索部３は、検索した「水道検針情報」データテーブルから、ＩＤ「ユーザＡ」を含むレコードを検索する（図１８（Ｂ））。そして、第１抽出部４は、第１検索部３が検索したレコードから、項目「氏名、水道使用量」に含まれる情報を抽出する（図１８（Ｃ））。以下では、第１抽出部４が抽出した情報は、実施形態１と同様、「指定情報」と言う。本実施形態の指定情報は、２列のデータテーブルである。
【００８２】
なお、第１抽出部４が複数の項目の情報を抽出した場合、第１グループ化部１４は、行単位で重複する情報を、一にまとめる。図１８（Ｃ）の場合、「鈴木太郎、１００Ｌ」、「鈴木太郎、１５０Ｌ」、「鈴木太郎、１２０Ｌ」は、それぞれ異なっているため、第１グループ化部１４は、グループ化しない。
【００８３】
図１９は、第２検索部５および第２抽出部６による処理を説明するための図である。
【００８４】
第２検索部５は、受付部２が受け付けた種別以外のデータテーブルをユーザ情報記憶部１２から検索する。そして、第２検索部５は、検索したデータテーブルから、受付部２が受け付けたＩＤ「ユーザＡ」を含むレコードを検索する（図１９（Ａ））。図１９では、「屋内温度情報」のデータテーブルを検索した場合を示す。
【００８５】
第２抽出部６は、第２検索部５が検索したレコードに含まれる情報を、項目毎に抽出する。このとき、第２抽出部６は、受付部２が受け付けた項目の数と同じ数の項目から、情報を抽出する。本実施形態では、第２抽出部６は、２つの項目（２列）を選択して情報を抽出する。そして、第２抽出部６は、指定情報と同じく、２列のデータテーブルを生成する。このとき、第２抽出部６は、項目順序（列順序）が入れ替わった２通りのデータテーブルを生成する。
【００８６】
図１９（Ａ）に示すレコードの場合、第２抽出部６は、２つの項目「氏名」および「屋内温度」に含まれる情報を抽出し、項目順序を「氏名、屋内温度」としたデータテーブルと、「屋内温度、氏名」としたデータテーブルを生成する（図１９（Ｂ））。なお、図示しないが、図１９（Ｂ）の場合、第２グループ化部１５は、重複している「鈴木太郎、１２℃」の情報を、１つにまとめる。また、第２グループ化部１５は、重複している「１２℃、鈴木太郎」の情報を、１つにまとめる。
【００８７】
また、第２抽出部６は、２つの項目「屋内温度」および「計測日時」に含まれる情報を抽出し、項目順序を「屋内温度、計測日時」としたデータテーブルと、「計測日時、屋内温度」としたデータテーブルとを生成する（図１９（Ｃ））。さらに、第２抽出部６は、２つの項目「氏名」および「屋内温度」に含まれる情報を抽出し、項目順序を「氏名、計測日時」としたデータテーブルと、「計測日時、氏名」としたデータテーブルとを生成する（図１９（Ｄ））。
【００８８】
なお、第２検索部５、第２抽出部６および第２グループ化部１５は、「国民情報」、および、「病気情報」の各データテーブルについても、同様の処理を行う。
【００８９】
第３検索部８、第３抽出部９および第３グループ化部１６の処理は、第２検索部５、第２抽出部６および第２グループ化部１５の処理と同様に説明できるため、その説明は省略する。
【００９０】
第１計算部７は、指定情報と、第２抽出部６が抽出した情報とを比較して、一致度を計算する。第２計算部１０は、指定情報と、第３抽出部９が抽出した情報とを比較して、一致度を計算する。判定部１１は、第１計算部７および第２計算部１０による計算結果とから、匿名化レベルを判定する。また、判定部１１は、判定した匿名化レベルとから、指定情報を事業者に開示するかを判定する。これらの各部の処理は、実施形態１と同様であるため、その説明は省略する。
【００９１】
以上のように本実施の形態２によれば、指定された情報が、個人情報を特定しうるレベルであるかを判定できる。
【００９２】
［プログラム］
本発明の実施の形態におけるプログラムは、コンピュータに、図１５〜図１７に示す処理を実行させるプログラムであればよい。このプログラムをコンピュータにインストールし、実行することによって、本実施の形態における匿名化レベル判定装置１と匿名化レベル判定方法とを実現することができる。この場合、コンピュータのプロセッサは、受付部２、第１検索部３、第１抽出部４、第２検索部５、第２抽出部６、第１計算部７、第３検索部８、第３抽出部９、第２計算部１０、および判定部１１として機能し、処理を行なう。
【００９３】
また、本実施の形態では、受付部２、第１検索部３、第１抽出部４、第２検索部５、第２抽出部６、第１計算部７、第３検索部８、第３抽出部９、第２計算部１０、および判定部１１は、コンピュータに備えられたハードディスク等の記憶装置に、これらを構成するデータファイルを格納することによって、又はこのデータファイルが格納された記録媒体をコンピュータと接続された読取装置に搭載することによって実現されている。
【００９４】
また、本実施形態におけるプログラムは、複数のコンピュータによって構築されたコンピュータシステムによって実行されても良い。この場合は、例えば、各コンピュータが、それぞれ、受付部２、第１検索部３、第１抽出部４、第２検索部５、第２抽出部６、第１計算部７、第３検索部８、第３抽出部９、第２計算部１０、および判定部１１のいずれかとして機能しても良い。
【００９５】
ここで、実施形態１、２におけるプログラムを実行することによって、匿名化レベル判定装置１を実現するコンピュータについて図２０を用いて説明する。図２０は、実施形態１、２における匿名化レベル判定装置１を実現するコンピュータの一例を示すブロック図である。
【００９６】
図２０に示すように、コンピュータ１１０は、ＣＰＵ１１１と、メインメモリ１１２と、記憶装置１１３と、入力インターフェイス１１４と、表示コントローラ１１５と、データリーダ／ライタ１１６と、通信インターフェイス１１７とを備える。これらの各部は、バス１２１を介して、互いにデータ通信可能に接続される。なお、コンピュータ１１０は、ＣＰＵ１１１に加えて、又はＣＰＵ１１１に代えて、ＧＰＵ（Graphics Processing Unit）、またはＦＰＧＡ（Field-Programmable Gate Array）を備えていても良い。
【００９７】
ＣＰＵ１１１は、記憶装置１１３に格納された、実施形態におけるプログラム（コード）をメインメモリ１１２に展開し、これらを所定順序で実行することにより、各種の演算を実施する。メインメモリ１１２は、典型的には、ＤＲＡＭ（Dynamic Random Access Memory）等の揮発性の記憶装置である。また、本実施の形態におけるプログラムは、コンピュータ読み取り可能な記録媒体１２０に格納された状態で提供される。なお、本実施の形態におけるプログラムは、通信インターフェイス１１７を介して接続されたインターネット上で流通するものであっても良い。
【００９８】
また、記憶装置１１３の具体例としては、ハードディスクドライブの他、フラッシュメモリ等の半導体記憶装置が挙げられる。入力インターフェイス１１４は、ＣＰＵ１１１と、キーボードおよびマウスといった入力機器１１８との間のデータ伝送を仲介する。表示コントローラ１１５は、ディスプレイ装置１１９と接続され、ディスプレイ装置１１９での表示を制御する。
【００９９】
データリーダ／ライタ１１６は、ＣＰＵ１１１と記録媒体１２０との間のデータ伝送を仲介し、記録媒体１２０からのプログラムの読み出し、およびコンピュータ１１０における処理結果の記録媒体１２０への書き込みを実行する。通信インターフェイス１１７は、ＣＰＵ１１１と、他のコンピュータとの間のデータ伝送を仲介する。
【０１００】
また、記録媒体１２０の具体例としては、ＣＦ（Compact Flash（登録商標））及びＳＤ（Secure Digital）等の汎用的な半導体記憶デバイス、フレキシブルディスク（Flexible Disk）等の磁気記録媒体、又はＣＤ−ＲＯＭ（Compact Disk Read Only Memory）などの光学記録媒体が挙げられる。
【０１０１】
なお、上記の実施形態における匿名化レベル判定装置１は、プログラムがインストールされたコンピュータではなく、各部に対応したハードウェアを用いることによっても実現可能である。更に、匿名化レベル判定装置１は、一部がプログラムで実現され、残りの部分がハードウェアで実現されていてもよい。
【０１０２】
上述した実施の形態の一部又は全部は、以下に記載する（付記１）〜（付記１２）によって表現することができるが、以下の記載に限定されるものではない。
【０１０３】
（付記１）
一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得する際に、前記情報の匿名化レベルを判定する匿名化レベル判定装置であって、
データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付ける受付部と、
前記受付部が受け付けた種別のデータテーブルから、前記受付部が受け付けた識別情報を含むレコードを検索する第１検索部と、
前記第１検索部が検索したレコードから、前記受付部が受け付けた項目の情報を抽出する第１抽出部と、
前記受付部が受け付けた種別以外のデータテーブルから、前記受付部が受け付けた識別情報を含むレコードを検索する第２検索部と、
前記第２検索部が検索したレコードに含まれる情報を、項目毎に抽出する第２抽出部と、
前記第１抽出部が抽出した情報と、前記第２抽出部が抽出した情報との一致度を計算する第１計算部と、
前記受付部が受け付けた種別以外のデータテーブルから、前記受付部が受け付けた識別情報以外の識別情報を含むレコードを検索する第３検索部と、
前記第３検索部が検索したレコードに含まれる情報を、項目毎に抽出する第３抽出部と、
前記第１抽出部が抽出した情報と、前記第３抽出部が抽出した情報との一致度を計算する第２計算部と、
前記第１計算部および前記第２計算部による計算結果から、匿名化レベルを判定する判定部と、
を備えることを特徴とする匿名化レベル判定装置。
【０１０４】
（付記２）
付記１に記載の匿名化レベル判定装置であって、
前記判定部は、
レベル判定基準情報を管理する管理部から前記レベル判定基準情報を取得し、取得した前記レベル判定基準情報と、前記第１計算部および前記第２計算部による計算結果とから、匿名化レベルを判定する、
ことを特徴とする匿名化レベル判定装置。
【０１０５】
（付記３）
付記１または付記２に記載の匿名化レベル判定装置であって、
前記第１抽出部が同じ情報を複数抽出した場合、前記同じ情報をグループ化にする第１グループ化部と、
前記第２抽出部が同じ情報を複数抽出した場合、前記同じ情報をグループ化にする第２グループ化部と、
をさらに備え、
前記第１計算部は、前記第１グループ化部がグループ化した情報と、前記第２グループ化部がグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定装置。
【０１０６】
（付記４）
付記３に記載の匿名化レベル判定装置であって、
前記第３抽出部が同じ情報を複数抽出した場合、前記同じ情報をグループ化にする第３グループ化部、
をさらに備え、
前記第２計算部は、前記第１グループ化部がグループ化した情報と、前記第３グループ化部がグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定装置。
【０１０７】
（付記５）
一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得する際に、前記情報の匿名化レベルを判定する匿名化レベル判定方法であって、
（ａ）データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付けるステップと、
（ｂ）前記ステップ（ａ）で受け付けた種別のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｃ）前記ステップ（ｂ）で検索したレコードから、前記ステップ（ａ）で受け付けた項目の情報を抽出するステップと、
（ｄ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｅ）前記ステップ（ｄ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｆ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｅ）で抽出した情報との一致度を計算するステップと、
（ｇ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報以外の識別情報を含むレコードを検索するステップと、
（ｈ）前記ステップ（ｇ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｉ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｈ）で抽出した情報との一致度を計算するステップと、
（ｊ）前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果から、匿名化レベルを判定するステップと、
を備えることを特徴とする匿名化レベル判定方法。
【０１０８】
（付記６）
付記５に記載の匿名化レベル判定方法であって、
前記ステップ（ｊ）では、
レベル判定基準情報を管理する管理部から前記レベル判定基準情報を取得し、取得した前記レベル判定基準情報と、前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果とから、匿名化レベルを判定する、
ことを特徴とする匿名化レベル判定方法。
【０１０９】
（付記７）
付記５または付記６に記載の匿名化レベル判定方法であって、
（ｋ）前記ステップ（ｃ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
（ｌ）前記ステップ（ｅ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
をさらに備え、
前記ステップ（ｆ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｌ）でグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定方法。
【０１１０】
（付記８）
付記７に記載の匿名化レベル判定方法であって、
（ｍ）前記ステップ（ｈ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップ、
をさらに備え、
前記ステップ（ｉ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｍ）でグループ化した情報との一致度を計算する、
ことを特徴とする匿名化レベル判定方法。
【０１１１】
（付記９）
コンピュータに、一の識別情報に複数項目の情報が関連付けられた一のレコードを複数含むデータテーブルを、複数記憶する記憶部から、指定された情報を取得させる際に、前記情報の匿名化レベルを判定させるプログラムであって、
前記コンピュータに、
（ａ）データテーブルの種別、前記データテーブルに含まれる項目、および、識別情報の指定を受け付けるステップと、
（ｂ）前記ステップ（ａ）で受け付けた種別のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｃ）前記ステップ（ｂ）で検索したレコードから、前記ステップ（ａ）で受け付けた項目の情報を抽出するステップと、
（ｄ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報を含むレコードを検索するステップと、
（ｅ）前記ステップ（ｄ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｆ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｅ）で抽出した情報との一致度を計算するステップと、
（ｇ）前記ステップ（ａ）で受け付けた種別以外のデータテーブルから、前記ステップ（ａ）で受け付けた識別情報以外の識別情報を含むレコードを検索するステップと、
（ｈ）前記ステップ（ｇ）で検索したレコードに含まれる情報を、項目毎に抽出するステップと、
（ｉ）前記ステップ（ｃ）で抽出した情報と、前記ステップ（ｈ）で抽出した情報との一致度を計算するステップと、
（ｊ）前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果から、匿名化レベルを判定するステップと、
を実行させることを特徴とするプログラム。
【０１１２】
（付記１０）
付記９に記載のプログラムであって、
前記ステップ（ｊ）では、
レベル判定基準情報を管理する管理部から前記レベル判定基準情報を取得し、取得した前記レベル判定基準情報と、前記ステップ（ｆ）および前記ステップ（ｉ）での計算結果とから、匿名化レベルを判定する、
ことを特徴とするプログラム。
【０１１３】
（付記１１）
付記９または付記１０に記載のプログラムであって、
前記コンピュータに、
（ｋ）前記ステップ（ｃ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
（ｌ）前記ステップ（ｅ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップと、
をさらに実行させ、
前記ステップ（ｆ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｌ）でグループ化した情報との一致度を計算する、
ことを特徴とするプログラム。
【０１１４】
（付記１２）
付記１１に記載のプログラムであって、
前記コンピュータに、
（ｍ）前記ステップ（ｈ）で同じ情報を複数抽出した場合、前記同じ情報をグループ化にするステップ、
をさらに実行させ、
前記ステップ（ｉ）では、前記ステップ（ｋ）でグループ化した情報と、前記ステップ（ｍ）でグループ化した情報との一致度を計算する、
ことを特徴とするプログラム。
【産業上の利用可能性】
【０１１５】
以上のように本発明によれば、指定された情報が、個人情報を特定しうるレベルであるかを判定できる。
【符号の説明】
【０１１６】
１      ：匿名化レベル判定装置
２      ：受付部
３      ：第１検索部
４      ：第１抽出部
５      ：第２検索部
６      ：第２抽出部
７      ：第１計算部
８      ：第３検索部
９      ：第３抽出部
１０    ：第２計算部
１１    ：判定部
１２    ：ユーザ情報記憶部
１３    ：公開ポリシ管理部
１４    ：第１グループ化部
１５    ：第２グループ化部
１６    ：第３グループ化部
１１０  ：コンピュータ
１１１  ：ＣＰＵ
１１２  ：メインメモリ
１１３  ：記憶装置
１１４  ：入力インターフェイス
１１５  ：表示コントローラ
１１６  ：ライタ
１１７  ：通信インターフェイス
１１８  ：入力機器
１１９  ：ディスプレイ装置
１２０  ：記録媒体
１２１  ：バス
【図１】
2020154481.tif 000003
【図２】
2020154481.tif 000004
【図３】
2020154481.tif 000005
【図４】
2020154481.tif 000006
【図５】
2020154481.tif 000007
【図６】
2020154481.tif 000008
【図７】
2020154481.tif 000009
【図８】
2020154481.tif 000010
【図９】
2020154481.tif 000011
【図１０】
2020154481.tif 000012
【図１１】
2020154481.tif 000013
【図１２】
2020154481.tif 000014
【図１３】
2020154481.tif 000015
【図１４】
2020154481.tif 000016
【図１５】
2020154481.tif 000017
【図１６】
2020154481.tif 000018
【図１７】
2020154481.tif 000019
【図１８】
2020154481.tif 000020
【図１９】
2020154481.tif 000021
【図２０】
2020154481.tif 000022