(57)【特許請求の範囲】
【請求項１】
第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、前記複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出する第１処理と、
前記第１の分布を当該第１の分布とは異なる第２の分布となるように、前記属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換する第２処理と、
を、コンピュータに実行させるための変換処理プログラム。
【請求項２】
前記第２処理は、
前記属性値の出現頻度についての第１の分布において所定基準以上の偏りを有する属性値を予め定められた第２のルールに従って複数の第２属性値に展開し、当該所定基準以上の偏りを有する属性値と前記複数の第２属性値との対応関係を第２データ格納部に格納する第３処理と、
前記第２データ格納部に格納されている前記対応関係に従って、前記複数のレコードにおける前記特定の属性項目についての属性値を、前記複数の第２属性値のうちのいずれかの第２属性値に変換する第４処理と、
を含む請求項１記載の変換処理プログラム。
【請求項３】
前記第２処理は、
前記複数のレコードにおける前記特定の属性項目についての前記第２属性値を暗号化する第５処理
をさらに含む請求項２記載の変換処理プログラム。
【請求項４】
前記第３処理が、
前記特定の属性項目について出現する属性値のうち出現頻度が基準値を上回る属性値について、当該属性値の出現頻度及び前記基準値に基づき展開数を算出し、
前記第２のルールに従って前記出現頻度が基準値を上回る属性値について前記展開数の第２属性値を生成する
処理を含む請求項２又は３記載の変換処理プログラム。
【請求項５】
前記第３処理が、
前記展開数に応じて前記第２の属性値の各々について出現確率を算出し、前記対応関係に関連付けて前記第２データ格納部に格納する処理
を含み、
前記第４処理において、前記対応関係及び出現確率に従って、前記複数のレコードにおける前記特定の属性項目についての属性値を、前記複数の第２属性値のうちのいずれかの第２属性値に変換する
請求項４記載の変換処理プログラム。
【請求項６】
前記第１の処理を行った後の前記複数のレコードを、集計処理を行うコンピュータに送信する処理
をさらに前記コンピュータに実行させるための請求項１乃至５のいずれか１つ記載の変換処理プログラム。
【請求項７】
集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成する第１処理と、
前記第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値毎の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、前記複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている前記第２の属性項目の属性値毎の計数値又は属性値の合計値を前記第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を前記第２の属性値に対応付けて第２データ格納部に格納する第２処理と、
を、コンピュータに実行させるための復元処理プログラム。
【請求項８】
前記第１処理が、
予め定められた第２のルールに従って、前記第１属性値を複数の第４属性値に展開する処理と、
前記複数の第４属性値の各々を暗号化することで、前記複数の第２属性値を生成する処理と、
を含む請求項７記載の復元処理プログラム。
【請求項９】
第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、前記複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出する第１処理と、
前記第１の分布を当該第１の分布とは異なる第２の分布となるように、前記属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換する第２処理と、
を、コンピュータが実行する変換処理方法。
【請求項１０】
集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成する第１処理と、
前記第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値毎の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、前記複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている前記第２の属性項目の属性値毎の計数値又は属性値の合計値を前記第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を前記第２の属性値に対応付けて第２データ格納部に格納する第２処理と、
を、コンピュータが実行する復元処理方法。
【請求項１１】
第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、前記複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出する分布検出部と、
前記第１の分布を当該第１の分布とは異なる第２の分布となるように、前記属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換する変換処理部と、
を有する情報処理装置。
【請求項１２】
集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成する属性値生成部と、
前記第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値毎の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、前記複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている前記第２の属性項目の属性値毎の計数値又は属性値の合計値を前記第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を前記第２の属性値に対応付けて第２データ格納部に格納する復元処理部と、
を有する情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、データ秘匿化技術に関する。
【背景技術】
【０００２】
例えば、図１Ａ乃至図１Ｃに示すように、大学の工学部、薬学部及び商学部の各学生について、複数の属性項目（例えば、性別、学年の高低、体力点数及び疾患の有無（１＝あり、０＝なし））の各々の属性値が保持されている場合を検討する。さらに、このようなデータ全体（ここでは大学全体）について、特定の属性項目の属性値毎に、当該属性値が出現するレコード群を特定して、当該レコード群における、他の属性項目の属性値の出現回数を算出するクロス集計を行う場合を考える。
【０００３】
例えば、図１Ａ乃至図１Ｃに示すようなデータをそのままクロス集計を実施する集計者に渡してしまうと個人が特定されてしまうので、プライバシ情報の漏洩を防止するため、簡単な方法として一部の属性項目について暗号化またはハッシュ関数による秘匿化を行う場合がある。例えば、性別という属性項目について暗号化を行う場合、例えばＭ（男性）をａｂｃに暗号化し、Ｆ（女性）をｄｅｆに暗号化した場合には、図２Ａ乃至図２Ｃのようなデータが得られる。このようなデータであれば、このデータのみからは個人が特定できるわけではない。なお、性別と疾患についてクロス集計を実施すれば、図３に示すような集計結果が得られる。
【０００４】
しかしながら、例えば工学部は女性が少ないという背景知識があったり、薬学部は男性が少ないという背景知識があったりすれば、ａｂｃ＝Ｍ（男性）、ｄｅｆ＝Ｆ（女性）であることが集計者側には分かってしまう。さらに、個人も特定できてしまい、その個人について疾患の有無というセンシティブな情報も特定されてしまう可能性もある。これは、値そのものが秘匿されても、秘匿前の値と秘匿後の値とが一対一対応であれば、値の分布も秘匿化前後で全く変化しないために生ずる問題である。
【０００５】
なお、文字や数字をそれとの恣意的な対応が規定された数字や記号列に変換する手法では、同じ数字や記号列の暗号文中における出現の規則性により、容易に解読されてしまうという危険性について考慮した従来技術が存在している。この従来技術では、秘匿後の文字列として既にあらわれた文字列と同じ場合に、変換規則を一部改変することで、変換規則の判別を困難にするものである。しかしながら、秘匿化後のデータの分布や秘匿化した後のクロス集計などの集計処理については考慮されていない。
【０００６】
また、変換処理対象として指定された電子文書中の文字列を、他の文字列に変換する技術も存在している。具体的には、予め変換文字と、各変換文字を一意に識別する識別子とを定義した文字リストを保持しておき、変換指示の入力を受け付け、変換対象としての文字列に含まれる各文字を文字リストから検索して、当該文字リストから変換対象文字に付与された識別子に基づき、予め定義された変換規則に従って文字リスト中の他の文字に変換する。一方、復元指示の入力を受け付け、変換後の文字を、変換規則に対応した復元規則により、文字リストに含まれる変換対象文字に復元する。しかしながら、秘匿化後のデータの分布やクロス集計などの集計処理については考慮されていない。
【０００７】
さらに、ファイル中の機密情報部分は保護しつつ、それ以外の部分は容易に一般に開示できるようにすると共に、管理者が元のファイルを復元できるようにする技術も存在している。この技術では、置換対象文字に対する置換後文字を、ファイル内に存在しない文字の中から選択し、当該選択した置換後文字と置換対象文字との対応関係を示す置換マップを作成し、置換マップに基づいてファイル内に存在する変換対象文字列中の置換対象文字を置換後文字に置き換える。また、置換マップに基づいてファイル内に存在する置換後文字を置換対象文字に戻す。しかしながら、秘匿化後のデータの分布やクロス集計などの集計処理については考慮されていない。
【０００８】
また、暗号強度を強化又は保持する目的で、順序関係を保持したまま、確率暗号で１つの値を複数に散らすという技術も存在している。しかしながら、秘匿化後のデータの分布やクロス集計などの集計処理について考慮したものではない。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００２−３７４２４３号公報
【特許文献２】特開２００７−１０２５４０号公報
【特許文献３】特開２００７−１５６８６１号公報
【非特許文献】
【００１０】
【非特許文献１】"Order-Preserving Symmetric Encryption" EUROCRYPT '09 Proceedings of the 28th Annual International Conference on Advances in Cryptology: the Theory and Applications of Cryptographic Techniques Springer-Verlag Berlin, Heidelberg, 2009 ISBN: 978-3-642-01000-2
【発明の概要】
【発明が解決しようとする課題】
【００１１】
従って、本技術の目的は、一側面によれば、データの分布からデータ漏洩が生ずることを防止するための技術を提供することである。
【課題を解決するための手段】
【００１２】
本技術の第１の態様に係る変換処理方法は、（Ａ）第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出するステップと、（Ｂ）第１の分布を当該第１の分布とは異なる第２の分布となるように、上記属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換するステップとを含む。
【００１３】
本技術の第２の態様に係る復元処理方法は、（Ａ）集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成するステップと、（Ｂ）第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている第２の属性項目の属性値毎の計数値又は属性値の合計値を第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を前記第２の属性値に対応付けて第２データ格納部に格納するステップとを含む。
【発明の効果】
【００１４】
データの分布からデータ漏洩が生ずることを防止できるようになる。
【図面の簡単な説明】
【００１５】
【図１Ａ】図１Ａは、従来技術の問題を説明するための図である。
【図１Ｂ】図１Ｂは、従来技術の問題を説明するための図である。
【図１Ｃ】図１Ｃは、従来技術の問題を説明するための図である。
【図２Ａ】図２Ａは、従来技術の問題を説明するための図である。
【図２Ｂ】図２Ｂは、従来技術の問題を説明するための図である。
【図２Ｃ】図２Ｃは、従来技術の問題を説明するための図である。
【図３】図３は、クロス集計の一例を示す図である。
【図４】図４は、本実施の形態におけるシステム概要を示す図である。
【図５】図５は、情報処理装置の機能ブロック図である。
【図６】図６は、本実施の形態における処理の処理フローを示す図である。
【図７】図７は、提供データの一例を示す図である。
【図８】図８は、提供データから得られる分布の一例を示す図である。
【図９】図９は、分布変換データ生成処理の処理フローを示す図である。
【図１０Ａ】図１０Ａは、分布変換データの生成過程を示す図である。
【図１０Ｂ】図１０Ｂは、分布変換データの生成過程を示す図である。
【図１０Ｃ】図１０Ｃは、分布の変換を説明するための図である。
【図１１】図１１は、変換処理の処理フローを示す図である。
【図１２】図１２は、変換処理後のデータの一例を示す図である。
【図１３Ａ】図１３Ａは、暗号化の演算を模式的に示す図である。
【図１３Ｂ】図１３Ｂは、暗号化された変換後属性値の一例を示す図である。
【図１４Ａ】図１４Ａは、図１Ａのデータの変換例を示す図である。
【図１４Ｂ】図１４Ｂは、図１Ｂのデータの変換例を示す図である。
【図１４Ｃ】図１４Ｃは、図１Ｃのデータの変換例を示す図である。
【図１５Ａ】図１５Ａは、図１Ａのデータの暗号化データの例を示す図である。
【図１５Ｂ】図１５Ｂは、図１Ｂのデータの暗号化データの例を示す図である。
【図１５Ｃ】図１５Ｃは、図１Ｃのデータの暗号化データの例を示す図である。
【図１６Ａ】図１６Ａは、図１５Ａ乃至図１５Ｃのクロス集計の一例を示す図である。
【図１６Ｂ】図１６Ｂは、図１５Ａ乃至図１５Ｃのクロス集計の一例を示す図である。
【図１６Ｃ】図１６Ｃは、図１５Ａ乃至図１５Ｃのクロス集計の一例を示す図である。
【図１６Ｄ】図１６Ｄは、図１５Ａ乃至図１５Ｃのクロス集計の一例を示す図である。
【図１７】図１７は、分布データの他の例を示す図である。
【図１８】図１８は、分布変換データの他の例を示す図である。
【図１９】図１９は、分布の変換を説明するための図である。
【図２０】図２０は、本実施の形態における処理の処理フローを示す図である。
【図２１Ａ】図２１Ａは、属性値生成処理部の処理内容を示す図である。
【図２１Ｂ】図２１Ｂは、属性値生成処理部の処理内容を示す図である。
【図２２】図２２は、本実施の形態における処理の処理フローを示す図である。
【図２３】図２３は、復元集計結果の一例を示す図である。
【図２４】図２４は、復元集計処理結果の他の例を示す図である。
【図２５】図２５は、分布変換データの他の例を示す図である。
【図２６】図２６は、コンピュータの機能ブロック図である。
【発明を実施するための形態】
【００１６】
図４に、本実施の形態に係るシステム構成例を示す。インターネットなどのネットワーク１には、クロス集計などの集計処理を実施する集計サーバ３００と、集計サーバ３００に対してデータ提供を行ったり集計結果を利用する処理を実施する複数の情報処理装置（図４では情報処理装置Ａ乃至Ｃ）とが接続されている。集計サーバ３００は、情報処理装置から集計対象のデータを受信するデータ受信部３１０と、データ受信部３１０により受信された集計対象のデータを格納するデータ格納部３２０と、情報処理装置からの集計要求に応じてクロス集計などの集計処理を実施して要求元の情報処理装置に集計結果を返信する集計処理部３３０とを有する。集計サーバ３００の処理内容は従来と変わらないので、これ以上述べない。
【００１７】
図５に、情報処理装置の機能ブロック図を示す。情報処理装置は、提供データ格納部１０１と、分布検出部１０２と、分布データ格納部１０３と、分布変換データ生成部１０４と、ルール格納部１０５と、分布変換データ格納部１０６と、変換処理部１０７と、変換済データ格納部１０８と、暗号化処理部１０９と、キー格納部１１０と、暗号化データ格納部１１１と、送信部１１２と、集計要求処理部１２１と、集計結果格納部１２２と、復元処理部１２３と、属性値生成部１２４と、復元集計結果格納部１２６とを有する。なお、情報処理装置は、各属性項目について出現する属性値のデータを格納する属性値格納部１２５を有する場合もある。
【００１８】
なお、情報処理装置には、他のネットワークを介して当該情報処理装置を管理する管理者等が操作する端末装置が接続されており、当該端末装置からの指示に従って情報処理装置は処理を行う。例えば、端末装置から送られてきた提供データを受信すると、提供データ格納部１０１に格納する。
【００１９】
提供データ格納部１０１は、集計サーバ３００に送信すべきデータである提供データを格納する。分布検出部１０２は、提供データ格納部１０１に格納されている複数のレコードに対して、例えば管理者により指定された特定の属性項目について各属性値について出現頻度を計数する処理、属性値を合計する処理などを実施して、処理結果を分布データ格納部１０３に格納する。
【００２０】
分布変換データ生成部１０４は、ルール格納部１０５に格納されているルールデータに従って、分布データ格納部１０３に格納されている分布データを処理することで、提供データに含まれる複数のレコードにおける特定の属性項目の属性値を変換するためのデータを生成し、分布変換データ格納部１０６に格納する。変換処理部１０７は、分布変換データ格納部１０６に格納されているデータに従って、提供データ格納部１０１に格納されている複数のレコードにおける特定の属性項目についての属性値を変換して、変換後のデータを変換済データ格納部１０８に格納する。
【００２１】
暗号化処理部１０９は、キー格納部１１０に格納されているキーと所定のハッシュ関数に従って、変換済データ格納部１０８に格納されている複数のレコードにおける特定の属性項目についての属性値を暗号化する処理を実施し、処理結果を暗号化データ格納部１１１に格納する。送信部１１２は、暗号化データ格納部１１１に格納されているデータを、集計サーバ３００に送信する。
【００２２】
集計要求処理部１２１は、情報処理装置のユーザからの指示に応じて集計要求を集計サーバ３００に送信し、集計サーバ３００から集計結果を受信し、集計結果格納部１２２に格納する。復元処理部１２３は、属性値生成部１２４と連携して集計結果格納部１２２に格納されている集計結果のうち暗号化されており且つ属性値の変換が行われている属性項目の属性値を復元する処理を実施し、処理結果を復元集計結果格納部１２６に格納する。属性値生成部１２４は、分布データ格納部１０３（又は属性値格納部１２５）に格納されている特定の属性項目の属性値をルール格納部１０５に格納されているルールデータに従って変換すると共に、キー格納部１１０に格納されているキーと所定のハッシュ関数で暗号化することによって暗号化した変換済属性値を生成して、復元処理部１２３に出力する。
【００２３】
図５の例では、情報処理装置は、提供データを集計サーバ３００に送信するための処理を行う部分と、集計サーバ３００から集計結果を受信して復元するための処理を行う部分とを含む。しかし、それらが別の装置に設けられるようにしても良い。キー格納部１１０に格納されているキーとハッシュ関数とについては、集計結果を共用する者又は会社で共有される。また、属性値格納部１２５については、集計結果を共用する者又は会社で、特定の属性項目について出現する可能性のある属性値のバリエーションを共通して格納するものである。これに用いることで自らの提供データには含まれない属性値が集計結果に出現しても対処することができるようになる。同様に、ルール格納部１０５についても、集計結果を共用する者又は会社で、共通のルールデータが格納されている。
【００２４】
次に、図６乃至図２５を用いて、情報処理装置の処理内容について説明する。なお、既に提供データについては提供データ格納部１０１に格納されているものとする。まず、分布検出部１０２は、提供データ格納部１０１に格納されている提供データである複数のレコードにおいて、処理の対象である特定の属性項目の属性値毎に出現頻度を計数し、出現頻度の平均値（場合によっては最小値など）を算出し、分布データ格納部１０３に格納する（図６：ステップＳ１）。
【００２５】
例えば図７のような提供データが提供データ格納部１０１に格納されている場合には、特定の属性項目が「性別」であれば図８に示すようなデータが得られる。図８の例では、属性値「Ｍ」の出現頻度と、属性値「Ｆ」の出現頻度と、それらの平均値が含まれる。平均値は、出現頻度の偏りを判断するための基準値として用いられる。なお、最小値を、基準値として用いる場合もある。
【００２６】
次に、分布変換データ生成部１０４は、分布変換データ生成処理を実施する（ステップＳ３）。分布変換データ生成処理については、図９乃至図１０Ｃを用いて説明する。
【００２７】
分布変換データ生成部１０４は、分布データ格納部１０３に格納されている分布データにおいて未処理の属性値を１つ特定する（図９：ステップＳ１１）。そして、分布変換データ生成部１０４は、特定された属性値の出現頻度が基準値未満であるか判断する（ステップＳ１３）。例えば平均値を基準値として用いる場合について説明すると、図８の場合、属性値「Ｍ」の場合には、平均値以上の出現頻度が得られており、属性値「Ｆ」の場合には、平均値未満の出現頻度が得られている。
【００２８】
特定された属性値の出現頻度が基準値未満であれば（ステップＳ１３：Ｙｅｓルート）、分布変換データ生成部１０４は、ルール格納部１０５に格納されているルールデータに従って変換後属性値を１つ生成し、当該変換後属性値及び変換確率「１００％」を含むレコードを生成して、分布変換データ格納部１０６に格納する（ステップＳ１５）。そしてステップＳ２３に移行する。
【００２９】
ルール格納部１０５に格納されているルールデータは、例えば変換前の属性値にシリアルに番号を付加することで変換後属性値を生成するというルールを表すデータであるとすると、属性値「Ｆ」の場合、変換後属性値は「Ｆ１」となる。なお、ルールデータが、例えば変換前の属性値に、所定範囲内の整数値をランダムに選択するようなルールを表すデータである場合もある。このようなルールは一例であって、規則的に変換できればどのようなルールであってもよい。
【００３０】
図８の例では、図１０Ａに示すように変換前の属性値「Ｆ」に対応付けて変換後の属性値「Ｆ１」及び確率「１００」が格納される。
【００３１】
一方、特定された属性値の出現頻度が基準値以上であれば（ステップＳ１３：Ｎｏルート）、分布変換データ生成部１０４は、展開数（分割数とも言う）を算出する（ステップＳ１７）。例えば、特定された属性値の出現頻度を、基準値を下回るまで「２」で割り算を行い、展開数＝２N（Ｎは割り算の回数）というように算出するようにしても良い。また、特定された属性値の出現頻度を、基準値を下回るまで基準値で引き算してゆき、引き算の回数を展開数とするようにしてもよい。さらに、特定された属性値の出現頻度を基準値で割り算した場合の解（余りがある場合には、＋１）を、展開数とするようにしてもよい。
【００３２】
図８の例で、変換前属性値「Ｍ」については、出現頻度「１０」及び平均値「６．５」が得られているので、「２」で割り算する方法でも、基準値で引き算を行う方法でも、基準値で割り算する方法でも、展開数は「２」と算出される。
【００３３】
そして、分布変換データ生成部１０４は、ルール格納部１０５に格納されているルールデータに従って算出された展開数に応じた個数の変換後属性値を生成し、当該変換後属性値を含むレコードを展開数だけ生成し、分布変換データ格納部１０６に格納する（ステップＳ１９）。図８の例では、展開数が「２」であるので、変換後属性値「Ｍ１」「Ｍ２」が生成され、それらについてレコードが生成され、分布変換データ格納部１０６に格納する。さらに、分布変換データ生成部１０４は、生成したレコードに、変換確率を設定する（ステップＳ２１）。変換確率は、「１００」を展開数で除することで均一な値を設定するようにしても良い。図１０Ｂに示すように、展開数が「２」であれば「５０」が設定される。なお、変換確率は全て加算すると１００になればよく、５１と４９といったように揺らぎを持たせるようにしても良い。不自然に均一な分布にならないようにするためである。
【００３４】
このように変換確率は「５０」％であれば、属性値「Ｍ１」は出現頻度が「５」となり、属性値「Ｍ２」は出現頻度が「５」となり、属性値「Ｆ」は出現頻度が「３」である。そうすると、図１０Ｃに示すように、属性値「Ｍ」に偏った分布が、是正されていることが分かる。すなわち、図１０Ｃの左側に示すように、変換前で属性値「Ｍ」の出現頻度が突出しているが、図１０Ｃの右側に示すように、変換後では、全ての属性値の出現頻度が、平均値を下回っており、出現頻度の差が少なくなっている。
【００３５】
その後、分布変換データ生成部１０４は、未処理の属性値が存在しているか判断する（ステップＳ２３）。未処理の属性値が存在している場合にはステップＳ１１に戻る。一方、未処理の属性値が存在していない場合には呼び出し元の処理に戻る。
【００３６】
このような処理を実施すれば、図１０Ｂに示すような分布変換データが生成される。この分布変換データによって、特定の属性項目について属性値の出現頻度の分布を、秘匿化という目的において適切に変換することができるようになる。
【００３７】
図６の処理の説明に戻って、変換処理部１０７及び暗号化処理部１０９は、変換処理を実施する（ステップＳ５）。変換処理については、図１１乃至図１３Ｂを用いて説明する。
【００３８】
まず、変換処理部１０７は、提供データ格納部１０１に格納されている提供データに含まれる複数のレコードのうち未処理のレコードを１つ特定する（図１１：ステップＳ３１）。そして、変換処理部１０７は、特定されたレコードにおける処理の対象である特定の属性項目の属性値から、分布変換データの該当部分を特定する（ステップＳ３３）。図７に示すようなデータの最初のレコードにおける属性項目「性別」の属性値「Ｍ」の場合には、図１０Ｂの分布変換データであれば、変換前の属性値「Ｍ」の行を特定する。
【００３９】
そして、変換処理部１０７は、分布変換データの該当部分に規定されている確率に応じて、特定されたレコードにおける特定の属性項目の属性値を、変換後属性値に変換し、処理後のレコードを変換済データ格納部１０８に格納する（ステップＳ３５）。変換後属性値が複数でそれらの確率が均一の場合には、ラウンドロビンで順番に変換後属性値を採用するようにしても良い。また、乱数を発生させて、確率値に応じて変換後属性値をその都度選択するようにしても良い。
【００４０】
例えば図７のような提供データの場合、図１０Ｂの分布変換データに従えば、ステップＳ３５を実施すると、例えば図１２に示すようなデータが得られる。性別の属性値「Ｍ」に対しては「Ｍ１」と「Ｍ２」が均一に発生するように変換が行われる。また、性別の属性値「Ｆ」は「Ｆ１」に変換される。
【００４１】
その後、暗号化処理部１０９は、キー格納部１１０に格納されているキーｋと所定のハッシュ関数Ｈとで、変換済データ格納部１０８に格納されているレコードにおける特定の属性項目の変換後属性値を暗号化して、処理後のレコードを暗号化データ格納部１１１に格納する（ステップＳ３７）。例えば、変換後属性値が「Ｍ１」であればＨ（Ｍ１，ｋ）の演算を実施する。図１２のようなデータが得られた場合には、図１３Ａに模式的に示すような演算を実施して、図１３Ｂに示すような暗号化データを生成する。図１３Ｂからも分かるように、「Ｍ１」であれば「ａｂｃ２５４３２」が生成される。なお、「Ｍ１」が出現する全てのレコードについて「ａｂｃ２５４３２」が生成されるので、クロス集計を実施しても、「Ｍ１」について疾患有「１」のレコード数及び疾患無「０」のレコード数を計数することができる。但し、「Ｍ２」に対応する「ａｗｅ３４５６５」との関連は、暗号化データにおいては不明であるから、「ａｂｃ２５４３２」と「ａｗｅ３４５６５」とが同一視されることはない。
【００４２】
そして、変換処理部１０７は、未処理のレコードが存在するか判断する（ステップＳ３９）。未処理のレコードが存在する場合にはステップＳ３１に戻る。一方、未処理のレコードが存在しない場合には、呼び出し元の処理に戻る。
【００４３】
このような処理を実施すれば、特定の属性項目において属性値の出現頻度の分布を、異なった分布に変換し、さらに秘匿化されたデータが生成できたことになる。
【００４４】
図６の処理の説明に戻って、送信部１１２は、暗号化データ格納部１１１に格納されているデータを集計サーバ３００に送信する（ステップＳ７）。
【００４５】
集計サーバ３００における処理については、上で述べたように、暗号化されたデータを受信して、データ格納部３２０に格納し、要求に応じて又は自動的に所定の集計処理（例えばクロス集計）を実施する。
【００４６】
例えば、図１Ａのようなデータ（一部）の場合、性別「Ｍ」を「Ｍ１」乃至「Ｍ６」に展開し、性別「Ｆ」を「Ｆ１」に変換するという分布変換データが生成されたとする。そうすると、例えば図１４Ａに示すようなデータが得られる。さらに、図１Ｂのようなデータ（一部）の場合、性別「Ｍ」を「Ｍ１」に変換し、性別「Ｆ」を「Ｆ１」乃至「Ｆ５」に展開するという分布変換データが生成されたとする。そうすると、例えば図１４Ｂに示すようなデータが得られる。さらに、図１Ｃのようなデータ（一部）の場合、性別「Ｍ」を「Ｍ１」乃至「Ｍ３」に展開し、性別「Ｆ」を「Ｆ１」乃至「Ｆ３」に展開するという分布変換データが生成されたとする。そうすると、例えば図１４Ｃに示すようなデータが得られる。さらに、キーｋとハッシュ関数Ｈとで暗号化を行うと、図１４Ａのデータは図１５Ａのようになり、図１４Ｂのデータは図１５Ｂのようになり、図１４Ｃのデータは図１５Ｃのようになる。図１５Ａ、図１５Ｂ及び図１５Ｃのデータが、集計サーバ３００に送信され、データ受信部３１０によりデータ格納部３２０に格納されるものとする。
【００４７】
その後、集計処理部３３０は、自動的に又は要求に応じて、データ格納部３２０に格納されているデータに対して例えば性別毎に疾患の発生状況を集計するクロス集計を実施するとする。そうすると、図１６Ａ乃至図１６Ｄに示すような集計結果が得られる。図１６Ａの例では、各学部について、性別毎に疾患の属性値「０」の出現頻度及び属性値「１」の出現頻度を計数した結果を示している。また、図１６Ｂの例では、各学部について、性別毎に疾患の属性値「１」の出現頻度を計数した結果を示している。さらに、図１６Ｃの例では、学部に関係なく全学部について、性別毎に疾患の属性値「０」の出現頻度及び属性値「１」の出現頻度を計数した結果を示している。さらに、図１６Ｄの例では、学部に関係なく全学部について、性別毎に属性値「１」の出現頻度を計数した結果を示している。
【００４８】
なお、上でも述べたように展開数を算出する場合の基準値については出現頻度の最小値を採用するようにしてもよい。例えば図８の場合には、最小値「３」を基準値として、属性値「Ｍ」については出現頻度「１０」から上で述べたような方法で展開数を算出すると、図１７に示すように展開数「４」が得られる。一方、属性値「Ｆ」については出現頻度「３」から上で述べたようなで展開数を算出すると、展開数「０」が得られる。このような展開数の場合には、属性値「Ｍ」については属性値「Ｍ１」乃至「Ｍ４」に展開し、属性値「Ｆ」を属性値「Ｆ１」に変換する。すなわち、図１８に示すような分布変換データが生成される。なお、出現頻度「１０」で変換確率「２５」％の場合であっても、変換後属性値は整数回出現するので、例えば「Ｍ１」が３回、「Ｍ２」が２回、「Ｍ３」が３回、「Ｍ４」が２回出現する。
【００４９】
すなわち、図１９に示すように、出現頻度の偏りが少なくなるように、出現頻度の分布が変換されている。すなわち、図１９の左側のような分布から、図１９の右側のように、出現頻度が基準値である最小値以下になるように、分布の変換が行われている。
【００５０】
なお、上で述べた例では、出現頻度がフラットになる方向で分布の変換を行う例を示したが、変換後の分布から変換前の分布が推定できなくなればよいので、例えば、変換前に正規分布でない分布が得られた場合に、正規分布になるように変換を行うようにしても良い。
【００５１】
また、上で述べた例では処理対象の属性項目については、予め指定される例を示したが、属性値の出現頻度の分布から処理対象の属性項目を特定するようにしても良い。例えば、分布検出部１０２が、平均値だけではなく、標準偏差σを算出する。そして、分布変換データ生成部１０４が、平均値からプラスマイナス３σの範囲を超えるような出現頻度の属性値が存在するか確認し、このような属性値が存在すれば当該属性値の属性項目を処理の対象として選択する。
【００５２】
次に、集計結果を集計サーバ３００から取得した際の処理について図２０乃至図２４を用いて説明する。集計要求処理部１２１は、例えば集計サーバ３００に、例えばユーザからの要求に従って特定の集計処理を要求する集計要求を送信する。集計サーバ３００の集計処理部３３０は、当該集計要求に従って集計処理を実施し、集計結果を、要求元の情報処理装置に返信する。
【００５３】
そうすると、集計要求処理部１２１は、集計サーバ３００から集計結果を受信し、集計結果格納部１２２に格納する（図２０：ステップＳ４１）。次に、属性値生成部１２４は、集計要求処理部１２１からの指示に応じて、分布データ格納部１０３又は属性値格納部１２５に格納されている、処理対象の特定の属性項目における未処理の属性値を１つ特定する（ステップＳ４３）。また、属性値生成部１２４は、カウンタＮを１に初期化する（ステップＳ４５）。
【００５４】
属性値生成部１２４は、ルール格納部１０５に格納されているルールデータから、特定された属性値からＮ番目の変換後属性値を決定する（ステップＳ４７）。例えば、性別で、特定された属性値が「Ｍ」であれば、ルールデータに従えば「Ｍ１」が最初に決定される。
【００５５】
その後、属性値生成部１２４は、Ｎ番目の変換後属性値に対して、キー格納部１１０に格納されているキーｋ及び所定のハッシュ関数Ｈから暗号化された変換後属性値を算出する（ステップＳ４９）。例えば図２１Ａに示すように、属性値「Ｍ」について「Ｍ１」が生成されると、Ｈ（Ｍ１，ｋ）という演算を実施して、暗号化された変換後属性値を算出する。属性値「Ｆ」についても同様に、図２１Ｂに示すように、「Ｆ１」が生成されると、Ｈ（Ｆ１，ｋ）という演算を実施して、暗号化された変換後属性値を算出する。属性値生成部１２４は、このような暗号化された変換後属性値を復元処理部１２３に出力する。
【００５６】
復元処理部１２３は、集計結果格納部１２２に格納されている集計結果を、暗号化された変換後属性値で検索を実施する（ステップＳ５１）。例えば、図１６Ｃに示すような集計結果が取得された場合には、図１６Ｃに示すような集計結果を、例えば「Ｍ１」に対応する「ａｂｃ２５４３２」で検索する。そうすると、１件目がヒットする。
【００５７】
そして、復元処理部１２３は、集計結果に暗号化された変換後属性値が存在するか判断し（ステップＳ５３）、集計結果に暗号化された変換後属性値が存在する場合には、ステップＳ４３で特定された属性値のカウントを集計値だけ増分する（ステップＳ５５）。計算結果については、復元集計結果格納部１２６に格納する。例えば図１６Ｃの最初のレコードが特定された場合には、属性値「Ｍ」について、疾患「０」のカウント値に「２」を加算し、疾患「１」のカウント値に「１」を加算する。ここでは初期的にはカウント値が「０」であるから、疾患「０」のカウント値は「２」になり、疾患「１」のカウント値は「１」となる。そして、属性値生成部１２４は、Ｎを１インクリメントして（ステップＳ５７）ステップＳ４７に戻る。
【００５８】
例えば、属性値「Ｍ」の場合には、次に「Ｍ２」が変換後属性値として決定され、図２１Ａに示すように、暗号化された変換後属性値「ａｗｅ３４５６５」が算出される。そして、図１６Ｃの集計結果を「ａｗｅ３４５６５」で検索する。そうすると、２行目のレコードが特定され、疾患「０」のカウント値に「２」を加算して「４」が得られ、疾患「１」のカウント値に「１」を加算して「２」が得られる。
【００５９】
一方、集計結果に暗号化された変換後属性値が存在していない場合には、端子Ａを介して図２２の処理に移行する。
【００６０】
図２２の処理の説明に移行して、属性値生成部１２４は、Ｎが、予め定められたＮの最大値以上であるか判断する（ステップＳ５９）。ＮがＮの最大値以上でない場合には、属性値生成部１２４は、Ｎを１インクリメントして（ステップＳ６１）、端子Ｂを介して図２０のステップＳ４７に戻る。一方、ＮがＮの最大値以上である場合には、属性値生成部１２４は、分布データ格納部１０３又は属性値格納部１２５において未処理の属性値が存在するか判断する（ステップＳ６３）。未処理の属性値が存在する場合には、端子Ｃを介して図２０のステップＳ４３に戻る。
【００６１】
一方、未処理の属性値が存在しない場合には、例えば復元処理部１２３は、情報処理装置のユーザの端末などに、復元集計結果格納部１２６に格納されている復元集計結果を送信する（ステップＳ６５）。
【００６２】
このような処理を実施すれば、図１６Ｃについては、図２３に示すような結果が得られる。図２３に示すように、属性項目「性別」の属性値「Ｍ」及び「Ｆ」について、疾患「０」の計数値及び疾患「１」の計数値が得られるようになる。同様に、図１６Ｂについて処理を行えば、図２４に示すような結果が得られる。図２４の例では、学部毎に疾患「１」の計数値が、性別「Ｍ」及び「Ｆ」について計数された結果が得られるようになる。
【００６３】
以上のような処理を実施すれば、集計サーバ３００においては、暗号化もされているし、分布も変更されているので、元のデータを推定することは不可能であるが、集計結果については正しい結果を情報処理装置において復元することができる。よって、集計サーバ３００にセンシティブな情報であっても登録しておき、クロス集計などの集計処理を実施させる。そして、情報処理装置においてクロス集計などの集計結果を復元して有効に活用することができるようになる。
【００６４】
以上本技術の実施の形態を説明したが、本技術はこれらの実施の形態に限定されるわけではない。例えば、図５の機能ブロック図については、実際のプログラムモジュール構成は一致しない場合もある。また、処理フローについても、処理結果が変わらないかぎり、処理順番を入れ替えたり、並列実行するようにしても良い。例えば、ループを分割したり、ループを統合したりしても処理結果が変わらない場合には問題ない。例えば図２０及び図２２の処理フローにおいて、先に暗号化された変換後属性値を全て算出してから、集計結果の検索を実施するようにしても良い。同様に、図１１の処理において、暗号化処理をループから外すようにしても良い。
【００６５】
また、シリアルに番号を属性値に付加して変換後属性値を生成する場合には、ステップＳ５９及びＳ６１を設けないような処理フローであってもよい。
【００６６】
また、分布変換データ格納部１０６に、暗号化された変換後属性値を登録して、変換前の属性値から直接暗号化された変換後属性値を抽出できるようにしてもよい。例えば図１８のような分布変換データを、図２５に示すように、暗号化された変換後属性値まで登録しておき、変換処理部１０７で直接暗号化された変換後属性値を、提供データ中の各レコードに割り当てるようにしても良い。
【００６７】
なお、上で述べた例では、全ての情報処理装置Ａ乃至Ｃが、同一の属性項目について分布の変換を行うような場合を説明したが、場合によっては一部の情報処理装置のみが特定の属性項目について分布の変換を実施したり、しなかったりする場合もある。従って、復元処理部１２３は、集計結果格納部１２２に処理がなされなかったレコードが残っている場合には、そのレコードをそのまま復元集計処理結果格納部１２６に格納するようにする。
【００６８】
また、全ての情報処理装置Ａ乃至Ｃで特定の属性項目について同一の属性値セットが出現しない可能性もある。その場合には、分布データ格納部１０３をベースに属性値生成部１２４が処理を行うと、未知の属性値については暗号化された変換後属性値を生成できない。このような場合にも、集計結果格納部１２２に処理がなされなかったレコードが残るので、そのレコードをそのまま復元集計処理結果格納部１２６に格納するようにする。但し、属性値格納部１２５に、情報処理装置Ａ乃至Ｃで用いられる可能性のある全ての属性値を格納しておき、このデータを属性値生成部１２４が用いることにすれば、このような問題は生じない。
【００６９】
なお、上で述べた情報処理装置及び集計サーバ３００は、コンピュータ装置であって、図２６に示すように、メモリ２５０１とＣＰＵ（Central Processing Unit）２５０３とハードディスク・ドライブ（ＨＤＤ：Hard Disk Drive）２５０５と表示装置２５０９に接続される表示制御部２５０７とリムーバブル・ディスク２５１１用のドライブ装置２５１３と入力装置２５１５とネットワークに接続するための通信制御部２５１７とがバス２５１９で接続されている。オペレーティング・システム（ＯＳ：Operating System）及び本実施例における処理を実施するためのアプリケーション・プログラムは、ＨＤＤ２５０５に格納されており、ＣＰＵ２５０３により実行される際にはＨＤＤ２５０５からメモリ２５０１に読み出される。ＣＰＵ２５０３は、アプリケーション・プログラムの処理内容に応じて表示制御部２５０７、通信制御部２５１７、ドライブ装置２５１３を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ２５０１に格納されるが、ＨＤＤ２５０５に格納されるようにしてもよい。本技術の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク２５１１に格納されて頒布され、ドライブ装置２５１３からＨＤＤ２５０５にインストールされる。インターネットなどのネットワーク及び通信制御部２５１７を経由して、ＨＤＤ２５０５にインストールされる場合もある。このようなコンピュータ装置は、上で述べたＣＰＵ２５０３、メモリ２５０１などのハードウエアとＯＳ及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
【００７０】
以上述べた本実施の形態をまとめると、以下のようになる。
【００７１】
本実施の形態の第１の側面に係る変換処理方法は、（Ａ）第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出する第１処理と、（Ｂ）第１の分布を当該第１の分布とは異なる第２の分布となるように、属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換する第２処理とを含む。
【００７２】
このようにすれば、処理後のデータを見ても分布から元のデータを推定することが難しくなるので、データ漏洩を防止又は抑制することができる。
【００７３】
また、上で述べた第２処理は、（ｂ１）属性値の出現頻度についての第１の分布において所定基準以上の偏りを有する属性値を予め定められた第２のルールに従って複数の第２属性値に展開し、当該所定基準以上の偏りを有する属性値と複数の第２属性値との対応関係を第２データ格納部に格納する第３処理と、（ｂ２）第２データ格納部に格納されている対応関係に従って、複数のレコードにおける特定の属性項目についての属性値を、複数の第２属性値のうちのいずれかの第２属性値に変換する第４処理とを含むようにしてもよい。このように出現頻度に偏りを有する属性値を複数の属性値のいずれかに変換すれば、出現頻度の偏りを是正して、分布の特徴を消すことができるようになる。すなわち、分布からのデータ漏洩を防止又は抑制できるようになる。
【００７４】
また、上で述べた第２処理は、複数のレコードにおける特定の属性項目についての第２属性値を暗号化する第５処理をさらに含むようにしてもよい。上記対応関係において暗号化後の第２属性値も対応付けられている場合もあれば、このようにレコードについて暗号化処理を実施するようにしても良い。暗号化については、キーとハッシュ関数であってもよいし、他の暗号化手法を用いても良い。
【００７５】
さらに、上で述べた第３処理が、特定の属性項目について出現する属性値のうち出現頻度が基準値を上回る属性値について、当該属性値の出現頻度及び基準値に基づき展開数を算出し、第２のルールに従って出現頻度が基準値を上回る属性値について展開数の第２属性値を生成するようにしてもよい。例えば第２属性値が均一に出現するように分布の変換を実施する場合には、出現頻度が基準値を下回るよう展開数を算出するようにしても良い。このようにすれば、出現頻度が突出した属性値を、見かけ上なくすことができるようになる。
【００７６】
また、上で述べた第３処理が、展開数に応じて第２の属性値の各々について出現確率を算出し、対応関係に関連付けて第２データ格納部に格納する処理を含むようにしてもよい。その場合、上で述べた第４処理において、対応関係及び出現確率に従って、複数のレコードにおける特定の属性項目についての属性値を、複数の第２属性値のうちのいずれかの第２属性値に変換するようにしてもよい。出現確率を設定することで、柔軟に第２属性値を選択できるようになる。例えば、出現頻度が自然な形に揺らぐように出現確率を振れさせることで、分布の変換を第三者からわかりにくくすることができるようになる。
【００７７】
さらに、本実施の形態の第１の側面において、第１の処理を行った後の複数のレコードを、集計処理を行うコンピュータに送信する処理をさらに含むようにしても良い。このように、集計処理を行うコンピュータでは様々な装置から得られたデータに対して総合した集計処理を実施することができる。
【００７８】
本実施の形態の第２の側面に係る復元処理方法は、（Ａ）集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成する第１処理と、（Ｂ）第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値毎の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている第２の属性項目の属性値毎の計数値又は属性値の合計値を第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を第２の属性値に対応付けて第２データ格納部に格納する第２処理とを含む。このようにすれば、特定の属性項目の属性値が複数の属性値に分けられている場合においても、その結果を集約することで、元々の集計結果を復元できるようになる。
【００７９】
なお、上で述べた第１処理が、予め定められた第２のルールに従って、第１属性値を複数の第４属性値に展開する処理と、複数の第４属性値の各々を暗号化することで、複数の第２属性値を生成する処理とを含むようにしてもよい。
【００８０】
なお、上で述べたような処理をコンピュータに実施させるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブル・ディスク、ＣＤ−ＲＯＭなどの光ディスク、光磁気ディスク、半導体メモリ（例えばＲＯＭ）、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。なお、処理途中のデータについては、ＲＡＭ等の記憶装置に一時保管される。
【００８１】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８２】
（付記１）
第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、前記複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出する第１処理と、
前記第１の分布を当該第１の分布とは異なる第２の分布となるように、前記属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換する第２処理と、
を、コンピュータに実行させるための変換処理プログラム。
【００８３】
（付記２）
前記第２処理は、
前記属性値の出現頻度についての第１の分布において所定基準以上の偏りを有する属性値を予め定められた第２のルールに従って複数の第２属性値に展開し、当該所定基準以上の偏りを有する属性値と前記複数の第２属性値との対応関係を第２データ格納部に格納する第３処理と、
前記第２データ格納部に格納されている前記対応関係に従って、前記複数のレコードにおける前記特定の属性項目についての属性値を、前記複数の第２属性値のうちのいずれかの第２属性値に変換する第４処理と、
を含む付記１記載の変換処理プログラム。
【００８４】
（付記３）
前記第２処理は、
前記複数のレコードにおける前記特定の属性項目についての前記第２属性値を暗号化する第５処理
をさらに含む付記２記載の変換処理プログラム。
【００８５】
（付記４）
前記第３処理が、
前記特定の属性項目について出現する属性値のうち出現頻度が基準値を上回る属性値について、当該属性値の出現頻度及び前記基準値に基づき展開数を算出し、
前記第２のルールに従って前記出現頻度が基準値を上回る属性値について前記展開数の第２属性値を生成する
処理を含む付記２又は３記載の変換処理プログラム。
【００８６】
（付記５）
前記第３処理が、
前記展開数に応じて前記第２の属性値の各々について出現確率を算出し、前記対応関係に関連付けて前記第２データ格納部に格納する処理
を含み、
前記第４処理において、前記対応関係及び出現確率に従って、前記複数のレコードにおける前記特定の属性項目についての属性値を、前記複数の第２属性値のうちのいずれかの第２属性値に変換する
付記４記載の変換処理プログラム。
【００８７】
（付記６）
前記第１の処理を行った後の前記複数のレコードを、集計処理を行うコンピュータに送信する処理
をさらに前記コンピュータに実行させるための付記１乃至５のいずれか１つ記載の変換処理プログラム。
【００８８】
（付記７）
集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成する第１処理と、
前記第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値毎の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、前記複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている前記第２の属性項目の属性値毎の計数値又は属性値の合計値を前記第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を前記第２の属性値に対応付けて第２データ格納部に格納する第２処理と、
を、コンピュータに実行させるための復元処理プログラム。
【００８９】
（付記８）
前記第１処理が、
予め定められた第２のルールに従って、前記第１属性値を複数の第４属性値に展開する処理と、
前記複数の第４属性値の各々を暗号化することで、前記複数の第２属性値を生成する処理と、
を含む付記７記載の復元処理プログラム。
【００９０】
（付記９）
第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、前記複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出する第１処理と、
前記第１の分布を当該第１の分布とは異なる第２の分布となるように、前記属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換する第２処理と、
を、コンピュータが実行する変換処理方法。
【００９１】
（付記１０）  
集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成する第１処理と、
前記第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値毎の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、前記複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている前記第２の属性項目の属性値毎の計数値又は属性値の合計値を前記第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を前記第２の属性値に対応付けて第２データ格納部に格納する第２処理と、
を、コンピュータが実行する復元処理方法。
【００９２】
（付記１１）
第１データ格納部に格納されており且つ各々複数の属性項目について属性値を有する複数のレコードについて、前記複数の属性項目のうち特定の属性項目について出現する属性値の出現頻度についての第１の分布を検出する分布検出部と、
前記第１の分布を当該第１の分布とは異なる第２の分布となるように、前記属性値のうち少なくとも一部の属性値の各々を、予め定められた第１のルールに従って特定される複数の第２の属性値のいずれかに変換する変換処理部と、
を有する情報処理装置。
【００９３】
（付記１２）  
集計対象の複数のレコードにおける第１の属性項目について出現する第１属性値から、予め定められたルールに従って複数の第２属性値を生成する属性値生成部と、
前記第１の属性項目について出現した第３属性値の各々について第２の属性項目の属性値毎の計数値又は属性値の合計値を含む集計結果を格納する第１データ格納部において、前記複数の第２属性値の各々について、当該第２の属性値と一致する第３属性値が存在するか判断し、存在すれば当該第３属性値に対応付けられている前記第２の属性項目の属性値毎の計数値又は属性値の合計値を前記第１データ格納部から読み出し、当該第２の属性項目の属性値毎に累計し又は当該第２の属性項目の属性値を累計し、累計結果を前記第２の属性値に対応付けて第２データ格納部に格納する復元処理部と、
を有する情報処理装置。
【符号の説明】
【００９４】
１０１  提供データ格納部
１０２  分布検出部
１０３  分布データ格納部
１０４  分布変換データ生成部
１０５  ルール格納部
１０６  分布変換データ格納部
１０７  変換処理部
１０８  変換済データ格納部
１０９  暗号化処理部
１１０  キー格納部
１１１  暗号化データ格納部
１１２  送信部
１２１  集計要求処理部
１２２  集計結果格納部
１２３  復元処理部
１２４  属性値生成部
１２５  属性値格納部
１２６  復元集計結果格納部
【図１Ａ】
0005655718.tif 000002
【図１Ｂ】
0005655718.tif 000003
【図１Ｃ】
0005655718.tif 000004
【図２Ａ】
0005655718.tif 000005
【図２Ｂ】
0005655718.tif 000006
【図２Ｃ】
0005655718.tif 000007
【図３】
0005655718.tif 000008
【図４】
0005655718.tif 000009
【図５】
0005655718.tif 000010
【図６】
0005655718.tif 000011
【図７】
0005655718.tif 000012
【図８】
0005655718.tif 000013
【図９】
0005655718.tif 000014
【図１０Ａ】
0005655718.tif 000015
【図１０Ｂ】
0005655718.tif 000016
【図１０Ｃ】
0005655718.tif 000017
【図１１】
0005655718.tif 000018
【図１２】
0005655718.tif 000019
【図１３Ａ】
0005655718.tif 000020
【図１３Ｂ】
0005655718.tif 000021
【図１４Ａ】
0005655718.tif 000022
【図１４Ｂ】
0005655718.tif 000023
【図１４Ｃ】
0005655718.tif 000024
【図１５Ａ】
0005655718.tif 000025
【図１５Ｂ】
0005655718.tif 000026
【図１５Ｃ】
0005655718.tif 000027
【図１６Ａ】
0005655718.tif 000028
【図１６Ｂ】
0005655718.tif 000029
【図１６Ｃ】
0005655718.tif 000030
【図１６Ｄ】
0005655718.tif 000031
【図１７】
0005655718.tif 000032
【図１８】
0005655718.tif 000033
【図１９】
0005655718.tif 000034
【図２０】
0005655718.tif 000035
【図２１Ａ】
0005655718.tif 000036
【図２１Ｂ】
0005655718.tif 000037
【図２２】
0005655718.tif 000038
【図２３】
0005655718.tif 000039
【図２４】
0005655718.tif 000040
【図２５】
0005655718.tif 000041
【図２６】
0005655718.tif 000042