JP6501989B2 - 秘匿化装置、データ分析装置、秘匿化方法、データ分析方法、秘匿化プログラム及びデータ分析プログラム - Google Patents

秘匿化装置、データ分析装置、秘匿化方法、データ分析方法、秘匿化プログラム及びデータ分析プログラム Download PDF

Info

Publication number
JP6501989B2
JP6501989B2 JP2018557260A JP2018557260A JP6501989B2 JP 6501989 B2 JP6501989 B2 JP 6501989B2 JP 2018557260 A JP2018557260 A JP 2018557260A JP 2018557260 A JP2018557260 A JP 2018557260A JP 6501989 B2 JP6501989 B2 JP 6501989B2
Authority
JP
Japan
Prior art keywords
data
seed
unit
random number
concealed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018557260A
Other languages
English (en)
Other versions
JPWO2018116366A1 (ja
Inventor
貴人 平野
貴人 平野
りな 清水
りな 清水
充洋 服部
充洋 服部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP6501989B2 publication Critical patent/JP6501989B2/ja
Publication of JPWO2018116366A1 publication Critical patent/JPWO2018116366A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/14Protecting executable software against software analysis or reverse engineering, e.g. by obfuscation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/81Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer by operating on the power supply, e.g. enabling or disabling power-on, sleep or resume operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/16Obfuscation or hiding, e.g. involving white box
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)
  • Remote Monitoring And Control Of Power-Distribution Networks (AREA)

Description

本発明は、データの秘匿化に関する。
近年、プライバシー情報を利活用するビジネスが増大している。例えば、高齢者の見守りサービス等のビジネスにプライバシー情報が利活用されている。近年HEMS(Home Energy Management System)は一般家庭への普及が進んでおり、HEMSで用いられるスマートメーターで収集される電力使用量データを分析することで個人の行動を推測することができる。つまり、電力使用量データというプライバシー情報を分析して高齢者の行動を推測することで、高齢者の見守りサービスを実現することができる。
しかし、個人の行動を必要以上に推測することはプライバシー侵害の危険性がある。例えば、見守りサービスを行うために電力使用量データを分析すると、特定の家電製品を使用している時間帯がわかるため、特定の時間帯で見守り対象者が当該家電製品に関連する行動をしていることがわかる。また、長期間にわたって電力使用量データを分析すると、個人の行動パターンが推測される。更には、データ分析技術が進むにつれて、究極的には個人の趣味又は嗜好なども露わになってしまう可能性もある。
このようなプライバシー情報の必要以上な漏洩を回避する技術として、データに乱数を加える技術がよく知られている(例えば、非特許文献1、非特許文献2)。
例えば、元データにガウス分布などから生成された乱数を単純に加えることで、元データと異なるデータへ変換してプライバシーを保護する方法がある。このように元データに乱数を単純に加えてプライバシーを保護する技術は、近年提案された「差分プライバシー」と呼ばれる、プライバシーレベルを定量的に評価できるフレームワークと密接な関係があることが知られている。このため、乱数を元データに追加する手法が再び脚光を浴びている。
差分プライバシーを満たすプライバシー保護技術によれば、データベース中の個人データに関してどのような背景知識があっても統計値から個々の値を推測することが困難である。また、差分プライバシーを満たすプライバシー保護技術によれば、データベース全体に対する統計的分析が可能である。
特開2016−012074号公報 特開2014−003602号公報 特開2010−093424号公報 特開2014−109928号公報 特開2012−159932号公報
N.R.Adam and J.C.Wortman."Security control methods for statistical databases".ACM ComputerSurveys 1989. X.Xiao,Y.Tao,and M.Chen."Optimal random perturbation at multiple privacy levels".VLDB 2009. C.Dwork."Differential privacy".ICALP 2006.
特許文献1〜5に開示される技術及び非特許文献1〜3に開示される技術は、それぞれ、差分プライバシー技術、暗号化技術、秘密分散技術のいずれかをベースとしたプライバシー保護技術である。
しかしながら、特許文献1〜5に開示される技術及び非特許文献1〜3に開示される技術では、秘匿化された秘匿化データの精度を段階的に上げていくことができないという課題がある。
つまり、特許文献1〜5に開示される技術及び非特許文献1〜3に開示される技術では、秘匿化データを段階的に秘匿化前のデータに近づけることができないため、精度のよい分析ができないという課題がある。
このため、特許文献1〜5に開示される技術及び非特許文献1〜3に開示される技術を上記のような見守りサービスに適用した場合には、精度のよい分析ができないため、家電製品の使用状況を正確に把握することができず、適切な見守りができない。
本発明は、上記のような課題を解決することを主な目的としている。つまり、本発明は、秘匿化データを段階的に秘匿化前のデータに近づけることが可能な構成を得ることを主な目的とする。
本発明に係る秘匿化装置は、
複数のシードから複数の乱数を生成する乱数生成部と、
前記乱数生成部により生成された前記複数の乱数を用いて、秘匿化の対象となる秘匿化対象データを秘匿化する秘匿化部と、
前記秘匿化部により秘匿化された前記秘匿化対象データである秘匿化データをデータ分析装置に送信し、前記複数のシードのうちのいずれかのシードを前記データ分析装置に送信する送信部とを有する。
本発明では、秘匿化に用いられた乱数の生成に用いられたシードをデータ分析装置に送信する。このため、本発明によれば、データ分析装置において、送信されたシードを用いて乱数を復元し、復元した乱数を用いて秘匿化データを段階的に秘匿化前のデータに近づけることができる。
実施の形態1に係るプライバシー保護システムの構成例を示す図。 実施の形態1に係るプライバシー保護システムでのデータフロー例を示す図。 実施の形態1に係るデータ生成装置の構成例を示す図。 実施の形態1に係るデータ集積装置の構成例を示す図。 実施の形態1に係るデータ攪乱装置の構成例を示す図。 実施の形態1に係るデータ分析装置の構成例を示す図。 実施の形態1に係るデータ保管処理を示すフローチャート。 実施の形態1に係る保管データ開示処理を示すフローチャート。 実施の形態1に係るデータ攪乱処理を示すフローチャート。 実施の形態1に係るシード開示処理におけるデータ分析装置の動作例を示すフローチャート。 実施の形態1に係るシード開示処理におけるデータ生成装置の動作例を示すフローチャート。 実施の形態1に係るシード開示処理におけるデータ攪乱装置の動作例を示すフローチャート。 実施の形態1に係るデータ分析処理の動作例を示すフローチャート。 実施の形態1に係るシード変更処理を示すフローチャート。 実施の形態1に係るデータ集積装置に保管されるデータの例を表す図。
以下、本発明の実施の形態について、図を用いて説明する。以下の実施の形態の説明及び図面において、同一の符号を付したものは、同一の部分または相当する部分を示す。
実施の形態1.
本実施の形態では、電力使用量データから家電製品の稼働履歴や個人の行動を分析することで見守りを行うサービスに適用可能なプライバシー保護システムを説明する。
本実施の形態に係るプライバシー保護システムでは、分析対象のデータの劣化は抑えつつ(もしくは、劣化を段階的に制御しつつ)、必要以上に(言い換えると、見守りに必要としない)個人の行動が露わにならないような制御を行うことができる。
また、プライバシー侵害の考え方は人それぞれで異なるため、本実施の形態に係るプライバシー保護システムでは、ユーザーが保護したいプライバシー情報を柔軟に指定することができる。
***構成の説明***
図1は、本実施の形態に係るプライバシー保護システム100の構成例を示す。
図1に示すように、プライバシー保護システム100は、データ生成装置200とデータ集積装置300とデータ攪乱装置400とデータ分析装置500とを備える。
プライバシー保護システム100は複数のデータ生成装置200を備えていてもよい。また、プライバシー保護システム100は複数のデータ集積装置300を備えていてもよい。更に、プライバシー保護システム100は複数のデータ攪乱装置400を備えていてもよい。また、プライバシー保護システム100は複数のデータ分析装置500を備えていてもよい。
インターネット101は、データ生成装置200とデータ集積装置300とデータ攪乱装置400とデータ分析装置500とを接続する。
インターネット101は、ネットワークの例である。インターネット101の代わりに、他の種類のネットワークが用いられてもよい。例えば、データ生成装置200とデータ集積装置300とデータ攪乱装置400とデータ分析装置500は、LAN(Local Area Network)で接続されていてもよい。
データ生成装置200は、データ分析装置500で分析されるデータを生成する。そして、データ生成装置200は、生成したデータをデータ集積装置300に送信する。データ生成装置200は、例えば、家電機器の消費電力量データを集計して得られる電力使用量データを生成する。この場合は、データ生成装置200は、例えばスマートメーターである。なお、データ生成装置200がスマートメーターである場合は、データ生成装置200は、図1に不図示の家電機器から消費電力量データを収集することができる。本実施の形態では、消費電力量データとは、図1に不図示のある1つの家電機器が消費した電力量を示す。また、電力使用量データとは、図1に不図示のすべての家電機器の消費電力量の集計値を示す。
以下では、データ生成装置200は、図1に不図示のすべての家電機器の消費電力量の集約値である電力使用量データと、その電力使用量が生成された時刻が含まれる機器データ(D)を生成するものとする。
なお、上記の電力使用量データが秘匿化対象データに相当する。また、データ攪乱装置400により秘匿化された後の電力使用量データが秘匿化データに相当する。
データ生成装置200は、機器データ(D)と関連する基本情報をデータ集積装置300へ送信する。具体的には、基本情報には、電力使用量データの生成の元になる家電機器の種類(例えば、テレビや電子レンジなど)及びその家電機器の取り得る最大の消費電力量などが含まれる。
データ生成装置200は、このような基本情報を生成し、生成した基本情報をデータ集積装置300に送信する。以下では、この基本情報を基本情報(B)という。多くの場合、基本情報(B)として同じデータが生成され続けるが、図1に不図示の家電機器が更新される度に基本情報(B)のデータも更新される。
また、データ生成装置200は、プライバシー情報として消費電力量や稼働履歴を秘匿すべき家電機器が定義されたリストを生成し、生成したリストをデータ集積装置300に送信する。
具体的には、データ生成装置200は、複数の家電機器の消費電力量を集計して得られた電力使用量から、消費電力量や稼働履歴を秘匿すべき家電機器(以下、保護対象機器という)のリストを生成し、生成したリストをデータ集積装置300に送信する。以下では、このリストを保護対象機器リスト(L)という。保護対象機器リスト(L)には、このように、複数の家電機器の消費電力量を集計して得られた電力使用量データから、消費電力量や稼働履歴を隠したい単一もしくは複数の家電機器の名前が示されている。
また、データ生成装置200は、乱数を生成するためのシードの変更を要求する。すなわち、データ生成装置200は、データ攪乱装置400に対して、乱数のシードの変更を要求する。例えば、ある一定の時間が経過した時や、シードが悪意のある人物に盗み見られた時などシードの安全性が危殆化した時に、データ生成装置200はデータ攪乱装置400に対してシードの変更を要求する。
更に、データ生成装置200は、乱数のシードの開示の許否を判定する。すなわち、データ生成装置200は、データ分析装置500から乱数のシードの開示要求が送信された場合に、シードの開示を許可するか否かを判定する。そして、シードの開示を許可する場合は、データ生成装置200は、データ攪乱装置400に乱数のシードの開示を指示する。
データ生成装置200は、判定装置に相当する。
データ集積装置300は、データ生成装置200から収集したデータを蓄積する。このため、データ集積装置300は、大容量の記録媒体を持つ。
データ攪乱装置400は、プライバシー情報を保護するために乱数を電力使用量データに付与する。つまり、データ攪乱装置400は、データ分析装置500に送信する電力使用量データをプライバシー情報として保護する必要がある場合は、乱数を用いて電力使用量データを秘匿化する。
具体的には、データ攪乱装置400は、データ集積装置300から、データ生成装置200で生成された機器データ(D)を受信する。そして、データ攪乱装置400は、データ集積装置300から受信した機器データ(D)に秘匿化対象の電力使用量データが含まれていれば、適切な乱数を付与して当該電力使用量データを攪乱する。データ攪乱装置400は、攪乱後の電力使用量データをデータ分析装置500に送信する。
より具体的には、データ攪乱装置400は、データ集積装置300から、機器データ(D)とともに、データ生成装置200で生成された基本情報(B)と保護対象機器リスト(L)を受信する。この保護対象機器リスト(L)には、前述のように、電力使用量データから消費電力量や稼働履歴を秘匿すべき家電機器が示される。データ攪乱装置400は、保護対象機器リスト(L)を参照し、基本情報(B)の中から保護対象機器リスト(L)に示された家電機器の取り得る最大の消費電力量をすべて読み出し、その中の一番大きな値に依存して秘匿するための乱数を生成する。なお、データ攪乱装置400は、乱数の生成に先立ち、乱数の生成のためのシードを生成し、生成したシードを保管する。
また、データ攪乱装置400は、データ生成装置200からシードの変更要求があれば、シードを新たに生成し、乱数の生成に用いるシードを変更する。なお、データ攪乱装置400は、過去に用いたシードは削除せず、過去に用いたシードを新しいシードと共に引き続き保管しておく。
また、データ攪乱装置400は、攪乱に用いたシードの開示がデータ生成装置200により指示された場合は、該当するシードをデータ分析装置500へ送信する。データ生成装置200により開示対象の期間が指定されている場合は、データ攪乱装置400は、該当する期間に用いられたシードのみをデータ分析装置500に開示する。
なお、データ攪乱装置400は秘匿化装置に相当する。また、データ攪乱装置400により行われる動作は、秘匿化方法及び秘匿化プログラムに相当する。
データ分析装置500は、データ攪乱装置400から送信された攪乱後の電力使用量データを分析する。データ分析装置500は、例えば、データ攪乱装置400から送信された攪乱後の電力使用量データを、単純な閾値法や隠れマルコフモデルなどの分析技術を用いて分析する。そして、データ分析装置500は、分析結果に基づき、保護対象機器リスト(L)に示された以外の家電機器の消費電力量や稼働履歴からユーザーの行動を推測する。もしくは、データ分析装置500は、データ攪乱装置400から送信された攪乱後の電力使用量データを推定モデルを用いて分析し、電力需要と相関の強い属性(人数・面積など)を推定して、ユーザーの行動を分析・推測する。
また、データ分析装置500は、データ生成装置200に対して電力使用量データの攪乱に用いた乱数のシードの開示を要求する。
なお、データ分析装置500により行われる動作は、データ分析方法及びデータ分析プログラムに相当する。
なお、データ生成装置200、データ集積装置300、データ攪乱装置400、データ分析装置500をまとめて1つのコンピュータで実現してもよい。ただし、この場合は、攪乱前の電力使用量データがデータ分析装置500によって閲覧されないようにアクセス管理など安全管理措置を講ずる必要がある。
図2は、本実施の形態に係るプライバシー保護システム100におけるデータフローの例を示す。
データ生成装置200は、機器データ(D)、基本情報(B)及び保護対象機器リスト(L)を生成する。そして、データ生成装置200は、機器データ(D)、基本情報(B)及び保護対象機器リスト(L)をデータ集積装置300に送信する。
データ集積装置300は、機器データ(D)、基本情報(B)及び保護対象機器リスト(L)を記憶する。
データ分析装置500は、データ集積装置300に保管データ開示要求を送信する。保管データ開示要求では、機器データ(D)のデータ分析装置500への開示が要求される。
データ集積装置300は、保管データ開示要求に応答して、機器データ(D)、基本情報(B)及び保護対象機器リスト(L)をデータ攪乱装置400に送信する。
データ攪乱装置400は、基本情報(B)及び保護対象機器リスト(L)を参照して、機器データ(D)を複数の乱数を用いて攪乱する。そして、攪乱後の機器データ(D)を、分析データ(A)としてデータ分析装置500に送信する。
データ分析装置500は、分析データ(A)を分析する。分析データ(A)の分析精度を上げる必要がある場合、つまり、分析データ(A)から乱数を部分的に除去する必要がある場合は、データ分析装置500は、シード開示要求をデータ生成装置200に送信する。シード開示要求では、分析データ(A)の生成の際の攪乱に用いられた乱数の生成に用いられたシードの開示を要求する
データ生成装置200は、シード開示要求を受信すると、データ分析装置500にシードを開示するか否かを判定する。データ生成装置200は、データ分析装置500にシードを開示する場合は、データ攪乱装置400にシード開示要求と許可通知を送信する。また、データ生成装置200は、データ分析装置500にシードを開示しない場合は、データ分析装置500に不許可通知を送信する。
データ攪乱装置400は、データ生成装置200からシード開示要求と許可通知を受信した場合は、分析データ(A)の生成の際の攪乱に用いた乱数の生成に用いた複数のシードのうちの一部のシードを部分シード(S’)としてデータ分析装置500に送信する。
データ分析装置500は、データ攪乱装置400から部分シード(S’)を受信した場合は、部分シード(S’)から乱数を復元し、復元した乱数を用いて分析データ(A)から乱数を除去する。この結果、分析データ(A)は秘匿化前の電力使用量データに近づくため、分析精度が上がる。
また、データ生成装置200は、シードの変更が必要になった場合に、データ攪乱装置400にシード変更要求を送信する。シード変更要求では、乱数の生成に用いられるシードの変更が要求される。
データ攪乱装置400は、シード変更要求を受信すると、新たにシードを生成し、生成した新たなシードを保管する。そして、データ攪乱装置400は次に乱数を生成する際に新たなシードを用いる。
図3は、データ生成装置200の構成例を示す。
データ生成装置200は、コンピュータである。
データ生成装置200は、ハードウェアとして、プロセッサ211、記憶装置212、受信インタフェース213、送信インタフェース214及び入力インタフェース215を備える。
また、データ生成装置200は、機能構成として、データ生成部201、受信部202、入力部203及び送信部204を備える。
記憶装置212には、データ生成部201、受信部202、入力部203及び送信部204の機能を実現するプログラムが記憶されている。
そして、プロセッサ211がこれらプログラムを実行して、後述するデータ生成部201、受信部202、入力部203及び送信部204の動作を行う。
図3では、プロセッサ211がデータ生成部201、受信部202、入力部203及び送信部204の機能を実現するプログラムを実行している状態を模式的に表している。
受信インタフェース213は、各種データを受信する。送信インタフェース214は各種データを送信する。
入力インタフェース215は、オペレータから各種指示を取得する。
データ生成部201は、機器データ(D)と機器の基本情報(B)とを生成する。前述したように、例えば、機器データ(D)には、電力使用量データやそのデータを生成した時刻データを含む。本実施の形態では、電力使用量データを「P」、その生成した時刻データを「TIME」と示し、また機器データ(D)をD=(P,TIME)と示す。
また、機器データ(D)の電力使用量データ(P)は、N個の家電機器(M,…,M)のそれぞれ消費電力量(Q,…,Q)の集約値P=Q+…+Qであり、また家電機器(M,…,M)のそれぞれの取り得る最大の消費電力量を(E,…,E)とした場合、基本情報(B)には、{(M,E)…,(M,E)}が示される。また、基本情報(B)には、他に、各家電機器の平均消費電力量や設置場所など機器の様々な情報が含まれていてもよい。
受信部202は、データ分析装置500からシード開示要求を受信する。
入力部203は、受信部202がシード開示要求を受信した場合に、データ生成装置200のオペレータからシード(S)の開示許可もしくは開示不許可を取得する。
また、入力部203は、オペレータからシード変更要求を取得する。
また、入力部203は、データ生成部201で生成した機器データ(D)に対して、保護対象機器リスト(L)をオペレータから取得する。例えば、保護対象機器リスト(L)として、(M’,…,M’)が示される。この「M’,…,M’」は、基本情報(B)に含まれるN個の家電機器(M,…,M)のいずれかに該当する。ただし、Hは1以上かつN以下の整数である。
送信部204は、機器データ(D)と機器の基本情報(B)と保護対象機器リスト(L)とをデータ集積装置300に送信する。
また、送信部204は、オペレータからシード開示要求に対して開示許可が入力された場合は、シード開示要求と許可通知のペアをデータ攪乱装置400に送信する。また、オペレータからシード開示要求に対して開示不許可が入力された場合は、送信部204は、不許可通知をデータ分析装置500に送信する。なお、許可通知又は不許可通知が偽造されないように、許可通知又は不許可通知に電子署名などを付けてセキュリティを向上させることもできる。
また、送信部204は、シード変更要求を、データ攪乱装置400に送信する。
図4は、データ集積装置300の構成例を示す。
データ集積装置300は、コンピュータである。
データ集積装置300は、ハードウェアとして、プロセッサ311、記憶装置312、受信インタフェース313及び送信インタフェース314を備える。
また、データ集積装置300は、機能構成として、受信部301、データ格納部302及び送信部303を備える。
記憶装置312には、受信部301、データ格納部302及び送信部303の機能を実現するプログラムが記憶されている。
そして、プロセッサ311がこれらプログラムを実行して、後述する受信部301、データ格納部302及び送信部303の動作を行う。
図4では、プロセッサ311が受信部301、データ格納部302及び送信部303の機能を実現するプログラムを実行している状態を模式的に表している。
受信インタフェース313は、各種データを受信する。送信インタフェース314は各種データを送信する。
受信部301は、データ生成装置200から送信された機器データ(D)と基本情報(B)と保護対象機器リスト(L)とを受信する。
また、受信部301は、データ分析装置500から送信された保管データ開示要求を受信する。
データ格納部302は、受信部301により受信された機器データ(D)と基本情報(B)と保護対象機器リスト(L)を、合わせて記憶装置312に格納する。例えば、図15は記憶装置312に格納されているデータの組(D,B,L)を表しており、データ保管処理の度に各行に記載されたようなデータが記憶装置312に格納される。
また、データ格納部302は、受信部301により保管データ開示要求が受信された場合に、機器データ(D)と基本情報(B)と保護対象機器リスト(L)を記憶装置312から読み出す。保管データ開示要求に日時の指定も含まれている場合は、データ格納部302は、記憶装置312に保管されているすべての組(D,B,L)に対して、機器データ(D)に含まれる時刻データ(TIME)を確認し、指定の日時と合致する場合はその機器データ(D)と基本情報(B)と保護対象機器リスト(L)の組を読み出す。ここで読み出された複数の組を((D,B,L),…,(D,B,L))と示す。ただし、Tは1以上の整数である。もし、保管データ開示要求が指定した日時と合致するデータの組(D,B,L)が記憶装置312に存在しない場合は、データ格納部302は、読み出し結果に空集合を意味する値をセットする。例えば、0をセットする。
送信部303は、データ格納部302により読み出された機器データ(D)と基本情報(B)と保護対象機器リスト(L)とをデータ攪乱装置400に送信する。
図5は、データ攪乱装置400の構成例を示す。
データ攪乱装置400は、ハードウェアとして、プロセッサ411、記憶装置412、受信インタフェース413及び送信インタフェース414を備える。
また、データ攪乱装置400は、機能構成として、受信部401、シード生成部402、シード格納部403、乱数生成部404、データ攪乱部405及び送信部406を備える。
記憶装置412には、受信部401、シード生成部402、シード格納部403、乱数生成部404、データ攪乱部405及び送信部406の機能を実現するプログラムが記憶されている。
そして、プロセッサ411がこれらプログラムを実行して、後述する受信部401、シード生成部402、シード格納部403、乱数生成部404、データ攪乱部405及び送信部406の動作を行う。
図4では、プロセッサ411が受信部401、シード生成部402、シード格納部403、乱数生成部404、データ攪乱部405及び送信部406の機能を実現するプログラムを実行している状態を模式的に表している。
受信インタフェース413は、各種データを受信する。送信インタフェース414は各種データを送信する。
受信部401は、データ集積装置300から送信されてきた機器データ(D)と基本情報(B)と保護対象機器リスト(L)の組(D,B,L)をT個受信する。ただし、Tは1以上の整数である。
また、受信部401は、データ生成装置200からシード開示要求と許可通知とを受信する。
また、受信部401は、データ生成装置200からシード変更要求を受信する。
シード生成部402は、機器データ(D)を攪乱するための乱数のシード(S)を生成する。なお、シード生成部402は、一度に複数のシード(S,…,S)(ただし、Kは2以上の整数)を生成する。なお、(S,…,S)をまとめてシード(S)という。
シード格納部403は、シード生成部402で生成されたシード(S=(S,…,S))を記憶装置412に格納する。また、シード格納部403は、シード(S)の格納時刻も記憶装置412に格納する。
また、シード格納部403は、受信部401により受信されたシード開示要求に基づき、シード(S=(S,…,S))の部分シード(S’=(S’,…,S’))(ただし、Jは1以上かつK以下の整数で、S’,…,S’はS,…,Sのいずれかの値)を記憶装置412から読み出す。
乱数生成部404は、受信部401により受信された基本情報(B)と保護対象機器リスト(L)と、シード格納部403により読み出されたシード(S=(S,…,S))を用いて、乱数(R=(R,…,R))を生成する。
乱数生成部404により行われる動作は、乱数生成処理に相当する。
乱数生成部404は、例えば、以下の方法により、乱数を生成する。
まず、乱数生成部404は、受信部401により受信された(D,B,L)に対して、基本情報(B={(M,E)…,(M,E)})と保護対象機器リスト(L=(M’,…,M’))を用いて、基本情報(B)から保護対象機器リスト(L)に関連する情報{(M’,E’)…,(M’,E’)}を抽出し、その中で一番大きなとり得る最大の消費電力量(E)とその家電機器(M)を特定する。この特定された消費電力量(E)は、対象機器リスト(L)に含まれる家電機器のうち、取り得る最大の消費電力量の中で一番大きな値を表している。
次に、乱数生成部404は、規定の乱数生成アルゴリズムを適用して乱数を生成する。
乱数生成部404は、例えば、以下の確率密度関数を持つ、期待値=0、分散=2Rのラプラス分布LAPに従って乱数を生成する。
LAP(x|R)=(1/(2R))×(EXP(−|x|/R)
ただし、EXP(y)は自然対数eのy乗を意味する。
このとき、乱数生成部404は、オペレータが決めた、もしくはシステムで予め決められたプライバシーレベルを表すパラメーターεと、対象機器リスト(L)に含まれる家電機器うち取り得る最大の消費電力量の中で一番大きな消費電力量(E)に対して、シード(S)の一要素Sを用いて、乱数RをLAP(x|E/ε)に従って生成する。ただし、Iは1以上かつK以下の整数である。このように、乱数生成部404は、シード(S=(S,…,S))を用いて、各(D,B,L)に対して、乱数(R=(R,…,R))を生成する。つまり、乱数生成部404は、1つの秘匿化対象の電力使用量データに対して複数の乱数を生成する。
なお、プライバシーレベルを表すパラメーターεは実数値である。パラメーターεは0に近い程プライバシーレベルが上がる。また、パラメーターεは0に近い程大きな乱数が生成される。オペレータは、データ分析装置500において分析データ(A)の分析ができるようにするためにパラメーターεを調節する必要がある。例えば、分析内容に応じてパラメーターεを事前に学習することで、パラメーターεの最適値を算出することができる。
また、乱数生成部404は、上記のようなラプラス分布ではなく、よく知られた期待値=μ、分散=σの正規分布N(μ,σ)に従って乱数を生成してもよい。
正規分布N(μ,σ)に従って乱数を生成する場合は、乱数生成部404は、オペレータが決めた、もしくはシステムで予め決められたプライバシーレベルを表すパラメーター(ε,δ)と、対象機器リスト(L)に含まれる家電機器うち取り得る最大の消費電力量の中で一番大きな消費電力量(E)に対して、まず以下のσを計算する。
σ=(E/ε)×(2×LOG(1.25/δ))1/2
ただし、LOG(y)は自然対数eを底としたyの対数を意味する。
その後、乱数生成部404は、シード(S)の一要素Sを用いて、乱数RをN(0,σ)に従って生成する。ただし、Iは1以上かつK以下の整数である。このように、シード(S=(S,…,S))を用いて、乱数(R=(R,…,R))を生成する。つまり、乱数生成部404は、1つの秘匿化対象の電力使用量データに対して複数の乱数を生成する。
ラプラス分布の場合と同様に、プライバシーレベルを表すパラメーターεとパラメーターδはそれぞれ実数値である。パラメーターεとパラメーターδは0に近いほどプライバシーレベルが上がる。パラメーターεとパラメーターδは0に近い程大きな乱数が生成される。オペレータは、データ分析装置500において分析データ(A)の分析ができるようにするためにパラメーターεとパラメーターδを調節する必要がある。例えば、分析内容に応じてパラメーターεとパラメーターδを事前に学習することで、パラメーターεの最適値を算出することができる。
上記の例では、ラプラス分布や正規分布を用いた乱数の生成方法について述べたが、差分プライバシー技術でも用いられる指数分布や、その他の様々な分布を用いて、プライバシーレベルを表すパラメーター(ε,δ)に依存して乱数を生成する方法を用いてもよい。更に、本実施の形態で用いる乱数の生成には、シード(S)がわかれば生成した乱数(R)を復元できるような乱数生成技術を用いる。例えば、シード(S=(S,…,S))を用いて、ある機器データ(D=(P,TIME))に対して乱数(R=(R,…,R))を生成する場合、シード(S)と時刻データ(TIME)から一意的に(すなわち、確定的に)ラプラス分布または正規分布などに従った乱数(R)を生成できるものとする。より詳細には、入力に対して確定的に乱数を出力する関数Fを用いて、R=F(S,TIME),…,R=F(S,TIME)として乱数(R)を生成できる乱数生成技術を利用する。
データ攪乱部405は、受信部401により受信された機器データ(D)に、乱数生成部404により生成された乱数(R=(R,…,R))を付与して分析データ(A)を生成する。つまり、データ攪乱部405は、機器データ(D)の電力使用量データ(P)から保護対象機器リスト(L)に示される保護対象機器の消費電力量や稼働履歴を隠すために、複数の乱数を用いて秘匿化する。
具体的には、データ攪乱部405は、機器データ(D=(P,TIME))に対して、電力使用量データ(P)に複数の乱数を加算して保護対象機器の電力使用量データを秘匿化する。例えば、保護対象機器の電力使用量データの値が100であり、生成された乱数が11、32、65(K=3)である場合は、データ攪乱部405は、100+11+32+65=208を得る。
このように、データ攪乱部405は、C=P+R+…+Rとして、電力使用量データ(P)を秘匿化して秘匿化後の電力使用量データ(C)を生成し、分析データ(A=(C,TIME))を生成する。
分析データ(A)内の秘匿化後の電力使用量データ(P)は秘匿化データに相当する。
データ攪乱部405は秘匿化部に相当する。また、データ攪乱部405により行われる動作は秘匿化処理に相当する。
送信部406は、データ攪乱部405により生成された分析データ(A)をデータ分析装置500に送信する。
また、送信部406は、分析データ(A)をデータ分析装置500に送信した後に、受信部401によりシード開示要求と許可通知とが受信された場合に、シード格納部403から取得した部分シード(S’=(S’,…,S’))をデータ分析装置500に送信する。
送信部406により行われる動作は、送信処理に相当する。
図6は、データ分析装置500の構成例を示す。
データ分析装置500は、コンピュータである。
データ分析装置500は、ハードウェアとして、プロセッサ511、記憶装置512、受信インタフェース513、送信インタフェース514、入力インタフェース515及び出力インタフェース516を備える。
また、データ分析装置500は、機能構成として、入力部501、送信部502、受信部503、シード格納部504、乱数復元部505、分析部506及び出力部507を備える。
記憶装置512には、入力部501、送信部502、受信部503、シード格納部504、乱数復元部505、分析部506及び出力部507の機能を実現するプログラムが記憶されている。
そして、プロセッサ511がこれらプログラムを実行して、後述する入力部501、送信部502、受信部503、シード格納部504、乱数復元部505、分析部506及び出力部507の動作を行う。
図6では、プロセッサ511が入力部501、送信部502、受信部503、シード格納部504、乱数復元部505、分析部506及び出力部507の機能を実現するプログラムを実行している状態を模式的に表している。
受信インタフェース513は、各種データを受信する。
送信インタフェース514は各種データを送信する。
入力インタフェース515は、データ分析者から各種指示を取得する。
出力インタフェース516は、各種情報を出力する。
入力部501は、データ分析者から保管データ開示要求を取得する。
また、入力部501は、データ分析者からシード開示要求を取得する。
送信部502は、保管データ開示要求をデータ集積装置300に送信する。例えば、この保管データ開示要求には、取得対象の機器データ(D)の期間が示される。
また、送信部502は、シード開示要求をデータ生成装置200に送信する。例えば、このシード開示要求には、分析精度を上げるべき分析データ(A)の期間が示される。データ攪乱装置400では、シード開示要求に応答して、シード開示要求に示される期間に生成された乱数の生成に用いられたシード(S)の部分シード(S’)を開示する。
受信部503は、データ攪乱装置400から送信された分析データ(A,…,A)を受信する。ただし、Tは1以上の整数である。
また、受信部503は、データ生成装置200から不許可通知を受信する。また、受信部503は、データ攪乱装置400から部分シード(S’)を受信する。
受信部503は、データ受信部及びシード受信部に相当する。また、受信部503により行われる動作は、データ受信処理及びシード受信処理に相当する。
シード格納部504は、入力部501で取得された保管データ開示要求と、受信部503で受信された部分シード(S’)とを合わせて記憶装置512に格納する。
また、シード格納部504は、受信部503で受信された分析データ(A,…,A)に含まれる保管時刻の値に基づき、記憶装置512から部分シード(S’)を読み出す。もし、対応するシードがなければ、シード格納部504は、空データを示す値を乱数復元部505に返す。
乱数復元部505は、シード格納部504により読み出された部分シード(S’=(S’,…,S’))を用いて、分析データ(A=(C,TIME))の秘匿化データ(C)を生成するために使われた乱数の一部(R’=(R’,…,R’))を復元する。
つまり、乱数復元部505は、データ攪乱装置400の乱数生成部404がシード(S)から乱数を生成する際に適用した乱数生成アルゴリズムを部分シード(S’)に適用して、分析データ(A)に含まれる秘匿化データ(C)を生成するために使われた乱数の一部(R’)を復元する。
例えば、ある分析データ(A=(C,TIME))に含まれる秘匿化データ(C=D+R+…+R)から乱数の一部(R’=(R’,…,R’))を復元するために、乱数復元部505は、前述した乱数復元方法の関数Fを用いて、部分シード(S’=(S’,…,S’))と時刻データ(TIME)に対して、R’=F(S’,TIME),…,R’=F(S’,TIME)として、乱数の一部(R’)を容易に復元できる。
乱数復元部505により行われる動作は、乱数復元処理に相当する。
分析部506は、受信部503で受信された分析データ(A,…,A)を用いて分析を行う。分析部506は、例えば、分析データ(A,…,A)に含まれる秘匿化された電力使用量データ(P)を用いて、各家電機器の消費電力量や稼働履歴を抽出して、使用傾向を分析する。
また、分析部506は、乱数復元部505から分析データ(A=(C,TIME))の秘匿化データ(C)の生成に使われた乱数の一部(R’=(R’,…,R’))を取得した場合は、R’=(R’i1,…,R’iJ)を用いて秘匿化データ(C)から一部の乱数(R’)を除去する。具体的には、分析部506は、精度向上分析データ(A’=(C’,TIME))をC’=C−R’i1−…−R’iJにより生成し、この精度向上分析データ(A’)を用いて分析する。
分析部506により行われる動作は、分析処理に相当する。
例えば、機器データ(D)に含まれる電力使用量データ(P)の値が100であり、データ攪乱装置400において攪乱に用いられた乱数が11、32、65(K=3)である場合は、分析データ(A)に含まれる秘匿化データ(C)の値は、当該保護対象機器の電力使用量データの値は100+11+32+65=208である。例えば、データ攪乱装置400から部分シードS’が送信され、当該部分シードS’から乱数として65が得られた場合は、分析部506は、208−65=143を得ることができる。秘匿化された値である208に比べれば、乱数除去後の値である143は、元の値である100に近い。このため、分析部506は、秘匿化前の電力使用量(P)について信頼性の高い値を得ることができ、分析精度を上げることができる。更に、データ攪乱装置400から部分シードS’が送信され、当該部分シードS’から乱数として32が得られた場合は、分析部506は、143−32=111を得ることができる。乱数除去後の値である111は、元の値である100に更に近く、分析部506は、更に分析精度を上げることができる。
例えば、データ攪乱装置400においてK(K≧2)個のシードを用いてK個の乱数が生成され、K個の乱数を用いて電力使用量データが攪乱されている場合は、送信部502は、部分シード(S’)の受信総数が(K−1)個になるまで、シード開示要求の送信を繰り返すことができる。そして、データ攪乱装置400の送信部406は、部分シード(S’)の送信総数が(K−1)個になるまで、データ生成装置200によりシードの開示が許可される度に、未送信の部分シード(S’)をデータ分析装置500に送信する。また、データ分析装置500の受信部503は、データ攪乱装置400から部分シード(S’)が送信される度に、部分シード(S’)の受信を繰り返す。
このようにして、分析部506は、段階的に秘匿化データ(C)から乱数を除去していき、秘匿されている値を段階的に秘匿化前の値に近づけることができる。
なお、ここでは、データ分析装置500が段階的に部分シード(S’)の開示を要求し、データ攪乱装置400が段階的に部分シード(S’)を開示する例を説明したが、データ分析装置500が(K−1)個の部分シード(S’)の開示を一度に要求し、データ攪乱装置400が一度に(K−1)個の部分シード(S’)を開示するようにしてもよい。
分析部506は、秘匿化データ(C)から乱数を除去してより本来の値に近い値を得ることで、以下のようにして見守り対象者の状態を推定することができる。
例えば、毎日ある時間帯にある家電機器の電力消費量が既定の標準範囲内にある場合には見守り対象者に異常がないと推定するような推定基準が用いられる場合を想定する。例えば、標準範囲が80〜130の範囲であるとする。前出の乱数除去前の電力使用量の値:208は標準範囲外と判定されるが、乱数除去後の電力使用量の値:111は標準範囲内と判定される。
また、分析部506は、より複雑な分析を行うこともできる。例えば、分析部506は、特許文献4に記載の分析を行ってもよい。また、分析部506は、特許文献5に記載の分析を行ってもよい。
出力部507は、分析部506の分析結果を出力する。例えば、出力部507は、分析結果として、ユーザーが活動している時間帯又は活動していない時間帯などの情報を出力する。
***動作の説明***
次に、本実施の形態に係るプライバシー保護システム100の動作例をフローチャートを参照して説明する。
図7は、プライバシー保護システム100のデータ保管処理を示すフローチャートである。
図7のステップS601〜S603はデータ生成装置200によって実行される。ステップS604〜S605はデータ集積装置300によって実行される。
ステップS601において、データ生成部201は、機器データ(D)と基本情報(B)を生成する。
ステップS602において、入力部203は、保護対象機器が記述される保護対象機器リスト(L)を取得する。
ステップS603において、送信部204は、ステップS601で生成された機器データ(D)と基本情報(B)、ステップS602で入力された保護対象機器リスト(L)をデータ集積装置300に送信する。
ステップS604において、受信部301は、ステップS603で送信された機器データ(D)と基本情報(B)と保護対象機器リスト(L)を受信する。
ステップS605において、データ格納部302は、ステップS604で受信された機器データ(D)と基本情報(B)と保護対象機器リスト(L)を関連付けて記憶装置312に格納する。また、データ格納部302は、機器データ(D)と基本情報(B)と保護対象機器リスト(L)の格納時刻を記憶装置312に格納する。
以上により、データ保管処理が完了する。
図8は、プライバシー保護システム100の保管データ開示処理を示すフローチャートである。
図9は、プライバシー保護システム100のデータ攪乱処理を示すフローチャートである。
ステップS701〜S702とステップS713〜S715はデータ分析装置500によって実行される。ステップS703〜S705はデータ集積装置300によって実行される。ステップS706〜S712はデータ攪乱装置400によって実行される。
ステップS701において、入力部501は、保管データ開示要求を取得する。前述のとおり、保管データ開示要求には、データ集積装置300に保管されている機器データ(D)のうち取得対象の機器データ(D)の期間が示される。
ステップS702において、送信部502は、ステップS701で取得された保管データ開示要求をデータ集積装置300に送信する。
ステップS703において、受信部301は、ステップS702で送信された保管データ開示要求を受信する。
ステップS704において、データ格納部302は、ステップS703で受信された保管データ開示要求を受信部301から取得し、保管データ開示要求に基づき、保管データを読み出す。保管データは、機器データ(D)と機器の基本情報(B)と保護対象機器リスト(L)との組である。データ格納部302は1組の保管データを読み出してもよいし、保管データ開示要求に複数の日時が指定されている場合は、複数組の保管データを読み出してもよい。
ステップS705において、送信部303は、ステップS704で抽出された保管データをデータ攪乱装置400に送信する。
ステップS706において、受信部401は、ステップS705で送信された保管データを受信する。
ステップS707において、シード格納部403は、シード(S)が記憶装置412に保管されているかどうかを確認する。
シード(S)が記憶装置412に保管されている場合は、ステップS708において、シード格納部403は、保管されているシード(S)を記憶装置412から読み出す。
シード(S)が記憶装置412に保管されていない場合は、ステップS709において、シード生成部402がシード(S=(S,…,S))を生成し、またシード格納部403が生成されたシード(S)を記憶装置412に格納する。
ステップS710において、乱数生成部404は、ステップS706で受信した保管データの中の基本情報(B)と保護対象機器リスト(L)を受信部401から取得する。また、乱数生成部404は、ステップS708で読み出されたシード(S)もしくはステップS709で生成されたシード(S)をシード格納部403から取得する。そして、乱数生成部404は、シード(S)と基本情報(B)と保護対象機器リスト(L)に基づいて前述の通り乱数(R=(R,…,R))を生成する。
なお、なお、ステップS706で受信した機器データ(D)が複数個(T個)であった場合は、乱数生成部404は、T個の乱数R=(R11,…,R1K),…,R=(RT1,…,RTK)を生成する。
ステップS711において、データ攪乱部405は、ステップS706で受信された保管データの中の機器データ(D)を受信部401から取得する。また、データ攪乱部405は、ステップS710で生成された乱数(R=(R,…,R))を乱数生成部404から取得する。そして、データ攪乱部405は、乱数(R=(R,…,R))を用いて機器データ(D)に含まれる電力使用量データ(P)を攪乱し、分析データ(A)を生成する。前述の通り、データ攪乱部405は、C=P+R+…+Rとして分析データ(A=(C,TIME))を生成する。なお、ステップS706で受信した機器データ(D)が複数個(T個)であった場合は、データ攪乱部405は、複数個の機器データ(D=(P,TIME),…,D=(P,TIME))に対して、C=P+R11+…+R1K,…,C=P+RT1+…+RTKとして、T個の分析データ(A=(C,TIME),…,A=(C,TIME))を生成する。
ステップS712において、送信部406は、ステップS711で生成された分析データ(A)をデータ攪乱部705から取得し、分析データ(A)をデータ分析装置500へ送信する。
ステップS713において、受信部503は、ステップS712で送信された分析データ(A)を受信する。
ステップS714において、分析部506は、ステップS713で受信された分析データ(A)を受信部503から取得し、分析データ(A)を分析する。ステップS714の詳細は後述する。
ステップS715において、出力部507は、ステップS714で生成された分析結果を分析部506から取得し、分析結果を出力する。
以上により、データ分析処理が完了する。
図10、図11及び図12は、プライバシー保護システム100のシード開示処理を示すフローチャートである。
ステップS801〜S802及びステップS811〜S816はデータ分析装置500によって実行される。ステップS803〜S807はデータ生成装置200によって実行される。ステップS808〜S810はデータ攪乱装置400によって実行される。
ステップS801において、入力部501は、データ分析者からシード開示要求を取得する。
ステップS802において、送信部502は、ステップS801で取得されたシード開示要求をデータ生成装置200に送信する。
ステップS803において、受信部202は、ステップS802で送信されたシード開示要求を受信する。
ステップS804において、入力部203は、ステップS803で受信されたシード開示要求に対して、オペレータから、開示の許可又は不許可を取得する。
ステップS805において、送信部204は、ステップS804でオペレータから許可が入力されたか不許可が入力されたかを判定する。
オペレータから不許可が入力されている場合は、ステップS806において、送信部204は、不許可通知をデータ分析装置500に送信する。この場合、以降のステップS807〜S810は実行されない。
一方、オペレータから許可が入力されている場合は、ステップS807において、送信部204は、シード開示要求と許可通知をデータ攪乱装置400に送信する。なお、前述の通り、許可通知が偽造されないように、許可通知に電子署名を付加してセキュリティを向上させることもできる。
ステップS808において、受信部401は、ステップS807で送信されたシード開示要求と許可通知を受信する。
ステップS809において、シード格納部403は、ステップS808で受信されたシード開示要求と許可通知を受信部401から取得する。そして、シード格納部403は、シード開示要求に含まれる期間に関するデータを読み出し、対応するシード(S)の一部である部分シード(S’=(S’,…,S’))を抽出する。
ステップS810において、送信部406は、ステップS809で抽出された部分シード(S’=(S’,…,S’))を、データ分析装置500に送信する。
ステップS811において、受信部503は、ステップS806で送信された不許可通知をデータ生成装置200から受信する、もしくは、ステップS810で送信された部分シード(S’)をデータ攪乱装置400から受信する。
ステップS812において、受信部503は、ステップS811で受信されたデータが部分シード(S’)であるか否かを判定する。
受信したデータが部分シード(S’)ではない場合、すなわち不許可通知を受信していた場合は、ステップS813において、出力部507が、シードの開示が不許可であった旨を出力する。
一方、受信したデータが部分シード(S’)である場合は、ステップS814において、シード格納部504が、シード開示要求と部分シード(S’)を関連付けて記憶装置512に格納する。
ステップS815において、出力部507は、シードの開示が許可された旨を出力する。
ステップS816において、分析部506が図8のステップS714を行い、また、出力部507が図8のステップS715を行う。すなわち、分析部506が精度向上分析データ(A’)の分析を行い、出力部507が分析結果を出力する。
以上により、シード開示処理が完了する。
図13は、図8のステップS714に示すデータ分析処理を示すフローチャートである。
ステップS1001において、乱数復元部505は、部分シード(S’)から、データ攪乱装置400において攪乱に用いられた複数の乱数(R)のうちの一部の乱数(R’)を復元する。
より具体的には、乱数復元部505は、シード格納部504に部分シード(S’)の読み出しを指示する。シード格納部504は、記憶装置512から部分シード(S’)を読み出し、読み出した部分シード(S’)を乱数復元部505に転送する。乱数復元部505は、部分シード(S’)に、データ攪乱装置400で適用される乱数生成アルゴリズムを適用して、一部の乱数(R’)を復元する。そして、乱数復元部505は、復元した一部の乱数(R’)を分析部506に転送する。
なお、記憶装置512に部分シード(S’)が保管されていない場合は、乱数復元部505は、分析部506に乱数が復元できない旨を通知する。この場合は、後述のステップS1002は実行されない。
ステップS1002において、分析部506は、一部の乱数(R’)を分析データ(A)の秘匿化データ(C)から除去して、精度向上分析データ(A’)を生成する。
すなわち、分析部506は、精度向上分析データ(A’=(C’,TIME))をC’=C−R’−…−R’により生成する。
ステップS1003において、分析部506は、分析データ(A)又は精度向上分析データ(A’)を分析する。
データ攪乱装置400から部分シード(S’)を未受信の場合は、分析部506は、分析データ(A)を分析する。また、データ攪乱装置400から部分シード(S’)を受信済みであり、ステップS1002において精度向上分析データ(A’)が生成されている場合は、分析部506は、精度向上分析データ(A’)を分析する。
図14は、プライバシー保護システム100のシード変更処理を示すフローチャートである。
ステップS901〜S902はデータ生成装置200によって実行される。ステップS903〜S905はデータ攪乱装置400によって実行される。
ステップS901において、入力部203は、オペレータから乱数のシード変更要求を取得する。
ステップS902において、送信部204は、ステップS901で取得されたシード変更要求をデータ攪乱装置400に送信する。
ステップS903において、受信部401は、ステップS902で送信されたシード変更要求を受信する。
ステップS904において、シード生成部402は、ステップS903で受信されたシード変更要求に基づき、乱数のシード(S)を生成する。
ステップS905において、シード格納部403は、ステップS904で生成されたシード(S)を記憶装置512に格納する。
以上により、シード変更処理が完了する。
***実施の形態の効果の説明***
本実施の形態では、ユーザーが秘匿対象として選択したデータが攪乱されるため、ユーザーのプライバシーを保護することができる。
そして、攪乱後のデータを用いた分析において分析精度を上げる必要がある場合は、攪乱に用いられた乱数の生成に用いられたシードが開示され、攪乱後のデータから乱数を段階的に除去することができる。従って、本実施の形態によれば、シードの開示度に応じて、データ分析の精度を調整することができる。
また、本実施の形態では、電力使用量データからすべての家電機器の消費電力量や稼働履歴は隠すことはせず、ユーザーは秘匿対象としての家電機器を柔軟に選択することでデータの精度を必要以上に落とさずにすむため、データの秘匿化と分析を両立できる。
また、本実施の形態では、シードを更新することにより、攪乱後のデータの安全性を向上させることができる。
***ハードウェア構成の説明***
最後に、データ生成装置200、データ集積装置300、データ攪乱装置400及びデータ分析装置500のハードウェア構成の補足説明を行う。
プロセッサ211、プロセッサ311、プロセッサ411及びプロセッサ511は、プロセッシングを行うIC(Integrated Circuit)である。
プロセッサ211、プロセッサ311、プロセッサ411及びプロセッサ511は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)等である。
記憶装置212、記憶装置312、記憶装置412及び記憶装置512は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
受信インタフェース213、受信インタフェース313、受信インタフェース413、受信インタフェース513は、送信インタフェース214、送信インタフェース314、送信インタフェース414及び送信インタフェース514は、例えば、通信チップ又はNIC(Network Interface Card)である。
入力インタフェース215及び入力インタフェース515は、マウス、キーボード等の入力装置とのインタフェースである。
出力インタフェース516は、ディスプレイ、スピーカ等の出力装置とのインタフェースである。
また、記憶装置212、記憶装置312、記憶装置412及び記憶装置512には、OS(Operating System)も記憶されている。
プロセッサ211、プロセッサ311、プロセッサ411及びプロセッサ511はOSの少なくとも一部を実行する。
プロセッサ211、プロセッサ311、プロセッサ411及びプロセッサ511がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
また、データ生成装置200では、データ生成部201、受信部202、入力部203及び送信部204の処理の結果を示す情報やデータや信号値や変数値が、記憶装置212、プロセッサ211内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、データ生成部201、受信部202、入力部203及び送信部204の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記憶媒体に記憶されてもよい。
また、データ集積装置300では、受信部301、データ格納部302及び送信部303の処理の結果を示す情報やデータや信号値や変数値が、記憶装置312、プロセッサ311内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、受信部301、データ格納部302及び送信部303の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記憶媒体に記憶されてもよい。
また、データ攪乱装置400では、受信部401、シード生成部402、シード格納部403、乱数生成部404、データ攪乱部405及び送信部406の処理の結果を示す情報やデータや信号値や変数値が、記憶装置412、プロセッサ411内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、受信部401、シード生成部402、シード格納部403、乱数生成部404、データ攪乱部405及び送信部406の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記憶媒体に記憶されてもよい。
また、データ分析装置500では、入力部501、送信部502、受信部503、シード格納部504、乱数復元部505、分析部506及び出力部507の処理の結果を示す情報やデータや信号値や変数値が、記憶装置512、プロセッサ511内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、入力部501、送信部502、受信部503、シード格納部504、乱数復元部505、分析部506及び出力部507の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記憶媒体に記憶されてもよい。
また、データ生成部201、受信部202、入力部203、送信部204、受信部301、データ格納部302、送信部303、受信部401、シード生成部402、シード格納部403、乱数生成部404、データ攪乱部405、送信部406、入力部501、送信部502、受信部503、シード格納部504、乱数復元部505、分析部506及び出力部507の「部」を、「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。
また、データ生成装置200、データ集積装置300、データ攪乱装置400及びデータ分析装置500は、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field−Programmable Gate Array)といった電子回路により実現されてもよい。
なお、プロセッサ及び上記の電子回路を総称してプロセッシングサーキットリーともいう。
100 プライバシー保護システム、200 データ生成装置、201 データ生成部、202 受信部、203 入力部、204 送信部、211 プロセッサ、212 記憶装置、213 受信インタフェース、214 送信インタフェース、215 入力インタフェース、300 データ集積装置、301 受信部、302 データ格納部、303 送信部、311 プロセッサ、312 記憶装置、313 受信インタフェース、314 送信インタフェース、400 データ攪乱装置、401 受信部、402 シード生成部、403 シード格納部、404 乱数生成部、405 データ攪乱部、406 送信部、411 プロセッサ、412 記憶装置、413 受信インタフェース、414 送信インタフェース、500 データ分析装置、501 入力部、502 送信部、503 受信部、504 シード格納部、505 乱数復元部、506 分析部、507 出力部、511 プロセッサ、512 記憶装置、513 受信インタフェース、514 送信インタフェース、515 入力インタフェース、516 出力インタフェース。

Claims (14)

  1. 複数のシードから複数の乱数を生成する乱数生成部と、
    前記乱数生成部により生成された前記複数の乱数を用いて、秘匿化の対象となる秘匿化対象データを秘匿化する秘匿化部と、
    前記秘匿化部により秘匿化された前記秘匿化対象データである秘匿化データをデータ分析装置に送信し、前記複数のシードのうちのいずれかのシードを前記データ分析装置に送信する送信部とを有する秘匿化装置。
  2. 前記乱数生成部は、
    前記複数のシードに乱数生成アルゴリズムを適用して前記複数の乱数を生成し、
    前記送信部は、
    シードに前記乱数生成アルゴリズムを適用して前記乱数生成部が生成する乱数と同じ乱数を復元することができ、復元した乱数を用いて前記秘匿化データから乱数を除去することができる前記データ分析装置に前記秘匿化データを送信する請求項1に記載の秘匿化装置。
  3. 前記送信部は、
    前記秘匿化データの前記データ分析装置への送信後に前記データ分析装置からシードの開示要求があり、シードの開示の許否判定を行う判定装置によりシードの開示が許可された場合に、前記複数のシードのうちのいずれかのシードを前記データ分析装置に送信する請求項1に記載の秘匿化装置。
  4. 前記乱数生成部は、
    K(K≧2)個のシードを用いてK個の乱数を生成し、
    前記送信部は、
    前記データ分析装置へのシードの送信総数が(K−1)個になるまで、前記データ分析装置からシードの開示要求があり、前記判定装置によりシードの開示が許可される度に、前記データ分析装置に未送信のシードを前記データ分析装置に送信する請求項3に記載の秘匿化装置。
  5. 前記秘匿化部は、
    複数の機器の消費電力量の集約値が示される電力使用量データを前記秘匿化対象データとして前記複数の乱数を用いて秘匿化し、
    前記乱数生成部は、
    前記複数の機器の中から消費電力量を秘匿する対象として選択された機器がとり得る最大消費電力を用いて前記複数の乱数を生成する請求項1に記載の秘匿化装置。
  6. 秘匿化装置から、前記秘匿化装置により複数のシードから生成された複数の乱数を用いて秘匿化された秘匿化データを受信するデータ受信部と、
    前記秘匿化装置から、前記複数のシードのうちのいずれかのシードを受信するシード受信部と、
    前記シード受信部により受信されたシードから、前記複数の乱数のうちのいずれかの乱数を復元する乱数復元部と、
    前記乱数復元部で復元された乱数を用いて前記秘匿化データから乱数を除去する分析部とを有するデータ分析装置。
  7. 前記乱数復元部は、
    前記秘匿化装置が前記複数のシードから前記複数の乱数を生成する際に適用した乱数生成アルゴリズムを前記シード受信部により受信されたシードに適用して、前記複数の乱数のうちのいずれかの乱数を復元する請求項6に記載のデータ分析装置。
  8. 前記データ分析装置は、更に、
    シードの開示の許否判定を行う判定装置に、シードの開示を要求するシード開示要求を送信する送信部を有し、
    前記シード受信部は、
    前記判定装置によりシードの開示が許可された場合に、前記秘匿化装置から、前記複数のシードのうちのいずれかのシードを受信する請求項6に記載のデータ分析装置。
  9. 前記送信部は、
    前記判定装置への前記シード開示要求の送信を繰り返し、
    前記シード受信部は、
    前記秘匿化装置からのシードの受信を繰り返す請求項8に記載のデータ分析装置。
  10. 前記データ受信部は、
    複数の機器の消費電力量の集約値が示される電力使用量データが、前記複数の機器の中から消費電力量を秘匿する対象として選択された機器がとり得る最大消費電力を用いて生成された前記複数の乱数を用いて秘匿化されて得られた前記秘匿化データを受信する請求項6に記載のデータ分析装置。
  11. コンピュータが、複数のシードから複数の乱数を生成し、
    前記コンピュータが、生成された前記複数の乱数を用いて、秘匿化の対象となる秘匿化対象データを秘匿化し、
    前記コンピュータが、秘匿化された前記秘匿化対象データである秘匿化データをデータ分析装置に送信し、前記複数のシードのうちのいずれかのシードを前記データ分析装置に送信する秘匿化方法。
  12. コンピュータが、秘匿化装置から、前記秘匿化装置により複数のシードから生成された複数の乱数を用いて秘匿化された秘匿化データを受信し、
    前記コンピュータが、前記秘匿化装置から、前記複数のシードのうちのいずれかのシードを受信し、
    前記コンピュータが、受信されたシードから、前記複数の乱数のうちのいずれかの乱数を復元し、
    前記コンピュータが、復元された乱数を用いて前記秘匿化データから乱数を除去するデータ分析方法。
  13. 複数のシードから複数の乱数を生成する乱数生成処理と、
    前記乱数生成処理により生成された前記複数の乱数を用いて、秘匿化の対象となる秘匿化対象データを秘匿化する秘匿化処理と、
    前記秘匿化処理により秘匿化された前記秘匿化対象データである秘匿化データをデータ分析装置に送信し、前記複数のシードのうちのいずれかのシードを前記データ分析装置に送信する送信処理とをコンピュータに実行させる秘匿化プログラム。
  14. 秘匿化装置から、前記秘匿化装置により複数のシードから生成された複数の乱数を用いて秘匿化された秘匿化データを受信するデータ受信処理と、
    前記秘匿化装置から、前記複数のシードのうちのいずれかのシードを受信するシード受信処理と、
    前記シード受信処理により受信されたシードから、前記複数の乱数のうちのいずれかの乱数を復元する乱数復元処理と、
    前記乱数復元処理で復元された乱数を用いて前記秘匿化データから乱数を除去する分析処理とをコンピュータに実行させるデータ分析プログラム。
JP2018557260A 2016-12-19 2016-12-19 秘匿化装置、データ分析装置、秘匿化方法、データ分析方法、秘匿化プログラム及びデータ分析プログラム Active JP6501989B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2016/087854 WO2018116366A1 (ja) 2016-12-19 2016-12-19 秘匿化装置、データ分析装置、秘匿化方法、データ分析方法、秘匿化プログラム及びデータ分析プログラム

Publications (2)

Publication Number Publication Date
JP6501989B2 true JP6501989B2 (ja) 2019-04-17
JPWO2018116366A1 JPWO2018116366A1 (ja) 2019-04-25

Family

ID=62625999

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018557260A Active JP6501989B2 (ja) 2016-12-19 2016-12-19 秘匿化装置、データ分析装置、秘匿化方法、データ分析方法、秘匿化プログラム及びデータ分析プログラム

Country Status (4)

Country Link
US (1) US11163895B2 (ja)
JP (1) JP6501989B2 (ja)
CN (1) CN110088756B (ja)
WO (1) WO2018116366A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110755727B (zh) * 2018-07-26 2023-11-28 林信涌 可电耦接云端监控系统的氢气产生器及其云端监控系统
EP3844905A1 (en) * 2018-10-25 2021-07-07 Sony Corporation Privacy-preserving mobility as a service supported by blockchain
US11271724B2 (en) * 2019-02-21 2022-03-08 Quantum Lock, Inc. One-time-pad encryption system and methods

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346005A (ja) * 2004-06-07 2005-12-15 Ntt Communications Kk データ秘匿装置、データ秘匿方法、及びデータ秘匿プログラム
JP2009290774A (ja) * 2008-05-30 2009-12-10 Central Res Inst Of Electric Power Ind データ収集システム、データ収集方法およびデータ収集プログラム
JP2012080345A (ja) * 2010-10-01 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> 撹乱システム、撹乱装置、撹乱方法及びプログラム
JP2012133320A (ja) * 2010-12-03 2012-07-12 Mitsubishi Electric Research Laboratories Inc 複数データベースのための差分プライバシー集合分類器
WO2012121024A1 (ja) * 2011-03-04 2012-09-13 日本電気株式会社 乱数値特定装置、乱数値特定システム、および、乱数値特定方法
JP2012196059A (ja) * 2011-03-16 2012-10-11 Toshiba Corp 電力利用調整装置、システムおよびプログラム
JP2013171170A (ja) * 2012-02-21 2013-09-02 Mitsubishi Electric Corp 秘匿集計システム、秘匿集計方法、秘匿集計プログラム、データ撹乱装置、データ撹乱方法、データ撹乱プログラム、データ復元装置、データ復元方法およびデータ復元プログラム

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7464171B2 (en) * 2004-10-01 2008-12-09 Microsoft Corporation Effective protection of computer data traffic in constrained resource scenarios
JP3814620B2 (ja) * 2004-10-15 2006-08-30 株式会社東芝 情報処理装置および情報処理方法
JP5307499B2 (ja) 2008-10-06 2013-10-02 日本電信電話株式会社 データ集計システム、撹乱装置、再構築装置、データ集計方法、撹乱プログラム、および再構築プログラム
JP2010231528A (ja) 2009-03-27 2010-10-14 Kddi Corp 秘匿性評価値の計算装置、計算方法、及び計算用プログラム
US8588410B2 (en) * 2009-04-06 2013-11-19 Elster Electricity, Llc Simplified secure symmetrical key management
JP5475610B2 (ja) 2009-10-07 2014-04-16 日本電信電話株式会社 撹乱装置、撹乱方法及びプログラム
JP2012058998A (ja) 2010-09-08 2012-03-22 Toshiba Corp サーバ、課金サーバ、電力使用量計算システム及びプログラム
CN103201748A (zh) 2010-11-09 2013-07-10 日本电气株式会社 匿名化装置和匿名化方法
KR20120070873A (ko) * 2010-12-22 2012-07-02 한국전자통신연구원 부채널 방지 마스킹 덧셈 연산 장치
JP5208226B2 (ja) 2011-01-31 2013-06-12 三菱電機株式会社 生活シーン特定装置、生活シーン特定プログラム、及び生活シーン特定方法
WO2012121333A1 (ja) * 2011-03-10 2012-09-13 日本電信電話株式会社 秘匿積和結合システム、計算装置、秘匿積和結合方法、及びそれらのプログラム
WO2013069392A1 (ja) * 2011-11-09 2013-05-16 Kddi株式会社 非線形処理器、ストリーム暗号の暗号化装置、ストリーム暗号の復号化装置、マスク処理方法、ストリーム暗号の暗号化方法、ストリーム暗号の復号化方法およびプログラム
JP5639094B2 (ja) 2012-01-26 2014-12-10 日本電信電話株式会社 データベース撹乱パラメータ決定装置、データベース撹乱システム及び方法並びにデータベース撹乱装置
US8750508B2 (en) 2012-06-15 2014-06-10 Mitsubishi Electric Research Laboratories, Inc. Method for outsourcing data for secure processing by untrusted third parties
JP6021178B2 (ja) 2012-10-17 2016-11-09 日本電信電話株式会社 ノイズ加算装置、ノイズ加算方法、およびプログラム
JP5914291B2 (ja) 2012-10-17 2016-05-11 日本電信電話株式会社 遷移確率算出装置、集計値算出装置、遷移確率算出方法、集計値算出方法
US8893292B2 (en) 2012-11-14 2014-11-18 Mitsubishi Electric Research Laboratories, Inc. Privacy preserving statistical analysis for distributed databases
JP5575212B2 (ja) 2012-12-03 2014-08-20 三菱電機株式会社 異常検出装置、異常検出方法、及びプログラム
JP5875535B2 (ja) 2013-01-18 2016-03-02 日本電信電話株式会社 匿名化装置、匿名化方法、プログラム
JP5875536B2 (ja) 2013-01-18 2016-03-02 日本電信電話株式会社 匿名化装置、匿名化方法、プログラム
US10146958B2 (en) 2013-03-14 2018-12-04 Mitsubishi Electric Research Laboratories, Inc. Privacy preserving statistical analysis on distributed databases
JP2014211761A (ja) 2013-04-18 2014-11-13 日本電信電話株式会社 解析装置、解析方法及び解析プログラム
JPWO2015079647A1 (ja) 2013-11-28 2017-03-16 日本電気株式会社 情報処理装置および情報処理方法
JP6342700B2 (ja) 2014-05-01 2018-06-13 トヨタ自動車株式会社 電力消費行動推定装置
JP6310345B2 (ja) 2014-06-30 2018-04-11 株式会社Nttドコモ プライバシー保護装置、プライバシー保護方法及びデータベース作成方法
JP6301767B2 (ja) 2014-07-28 2018-03-28 株式会社日立ソリューションズ パーソナル情報匿名化装置
US10325329B2 (en) * 2014-12-12 2019-06-18 Mcafee, Inc. Smart home security of metered data using a mask

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005346005A (ja) * 2004-06-07 2005-12-15 Ntt Communications Kk データ秘匿装置、データ秘匿方法、及びデータ秘匿プログラム
JP2009290774A (ja) * 2008-05-30 2009-12-10 Central Res Inst Of Electric Power Ind データ収集システム、データ収集方法およびデータ収集プログラム
JP2012080345A (ja) * 2010-10-01 2012-04-19 Nippon Telegr & Teleph Corp <Ntt> 撹乱システム、撹乱装置、撹乱方法及びプログラム
JP2012133320A (ja) * 2010-12-03 2012-07-12 Mitsubishi Electric Research Laboratories Inc 複数データベースのための差分プライバシー集合分類器
WO2012121024A1 (ja) * 2011-03-04 2012-09-13 日本電気株式会社 乱数値特定装置、乱数値特定システム、および、乱数値特定方法
JP2012196059A (ja) * 2011-03-16 2012-10-11 Toshiba Corp 電力利用調整装置、システムおよびプログラム
JP2013171170A (ja) * 2012-02-21 2013-09-02 Mitsubishi Electric Corp 秘匿集計システム、秘匿集計方法、秘匿集計プログラム、データ撹乱装置、データ撹乱方法、データ撹乱プログラム、データ復元装置、データ復元方法およびデータ復元プログラム

Also Published As

Publication number Publication date
US20190303593A1 (en) 2019-10-03
CN110088756A (zh) 2019-08-02
CN110088756B (zh) 2023-06-02
WO2018116366A1 (ja) 2018-06-28
US11163895B2 (en) 2021-11-02
JPWO2018116366A1 (ja) 2019-04-25

Similar Documents

Publication Publication Date Title
US9871816B2 (en) Systems and methods for security management of multi-client based distributed storage
US8189778B2 (en) Adaptive generation of a pseudo random number generator seed
US9264442B2 (en) Detecting anomalies in work practice data by combining multiple domains of information
WO2022105627A1 (en) Secure re-encryption of homomorphically encrypted data
Gates et al. Generating summary risk scores for mobile applications
WO2018208451A1 (en) Real time detection of cyber threats using behavioral analytics
JP2016531513A (ja) 付加ノイズを用いる効用対応プライバシー保護写像のための方法および装置
KR20150115772A (ko) 미스매칭된 프라이어에 대한 간섭 공격에 대한 프라이버시
JP6501989B2 (ja) 秘匿化装置、データ分析装置、秘匿化方法、データ分析方法、秘匿化プログラム及びデータ分析プログラム
CN107122669A (zh) 一种评估数据泄露风险的方法和装置
Ding et al. Knowledge gradient for selection with covariates: Consistency and computation
Siby et al. {WebGraph}: Capturing advertising and tracking information flows for robust blocking
JP2016535898A (ja) 結託および合成を考慮した効用対応プライバシー保護写像のための方法および装置
KR102639227B1 (ko) 시간 데이터의 획득 또는 조작을 방지하면서 네트워크 데이터의 시퀀스 생성
Iordanou et al. Beyond content analysis: Detecting targeted ads via distributed counting
Zhai et al. An untold story of redundant clouds: Making your service deployment truly reliable
CN113498602A (zh) 聚合加密的网络值
Primault et al. Privacy-preserving crowd-sourcing of web searches with private data donor
Wu et al. Cardinality Counting in" Alcatraz": A Privacy-aware Federated Learning Approach
Fiaz et al. Prediction of best cloud service provider using the QoS ranking framework
JP6208029B2 (ja) 業務システムの監視装置及び監視装置の制御方法
Frisch et al. A Practical Approach to Estimate the Min-Entropy in PUFs
Heo et al. Personalized DP-SGD using Sampling Mechanisms
Zou et al. PF: Website fingerprinting attack using probabilistic topic model
KR102155007B1 (ko) 독립성 측정을 이용한 엔트로피 관리 장치 및 방법, 이를 이용한 난수 생성 장치

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190123

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190123

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190319

R150 Certificate of patent or registration of utility model

Ref document number: 6501989

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250