JP6413769B2 - データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法 - Google Patents

データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法 Download PDF

Info

Publication number
JP6413769B2
JP6413769B2 JP2015000556A JP2015000556A JP6413769B2 JP 6413769 B2 JP6413769 B2 JP 6413769B2 JP 2015000556 A JP2015000556 A JP 2015000556A JP 2015000556 A JP2015000556 A JP 2015000556A JP 6413769 B2 JP6413769 B2 JP 6413769B2
Authority
JP
Japan
Prior art keywords
data
anonymization
attribute
group
individual
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
JP2015000556A
Other languages
English (en)
Other versions
JP2016126579A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015000556A priority Critical patent/JP6413769B2/ja
Priority to EP15194522.7A priority patent/EP3040900B1/en
Priority to US14/963,469 priority patent/US9754129B2/en
Publication of JP2016126579A publication Critical patent/JP2016126579A/ja
Application granted granted Critical
Publication of JP6413769B2 publication Critical patent/JP6413769B2/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/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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Description

本発明の実施形態は、データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法に関する。
各行(レコード)に各人の情報を格納した表などの個票データを、各人のプライバシー保護に配慮しつつ、多くの情報が残るように変換し、市場分析などで二次活用したい場合がある。この個票データの変換時におけるプライバシー保護の手法として、情報の匿名化を行うk−匿名化がある。
特開2008−33411号公報
しかしながら、上記の従来技術では、ある人の情報が含まれているか否かを決められないようにする存在性の保護までは考慮されておらず、プライバシー保護が十分ではないという問題がある。
例えば、X社が顧客から個票データを集め、集めた個票データをY社に販売し、Y社が個票データを分析した知識を市場分析等に役立てる状況を例に説明する。
例えば、個票データには、顧客を識別するID(Identification Data)とともに、住所、趣味、疾患などの個人情報が含まれている。
X社が集めた個票データをY社に販売するとき、X社は顧客に配慮し、顧客のプライバシーが侵害されうるデータはY社等の他社に提供したくないものとする。一方、Y社はX社顧客の個々の情報は必要ないが、統計的な情報はでき得る限り正確に得たいものとする。
このような要請を満たす変換方法として、属性ごとの統計化がある。例えば、個票データの「趣味」の属性について、趣味={サッカー:5,ペンタク:2}などど、度数分布の情報に変換する方法である。Y社は、この度数分布の情報を見ても誰がどの趣味を持っているかは判らないが、全体的な趣味の傾向を把握できる。
しかしながら、この属性ごとの統計化では、属性間の関係が判らない。例えば、Y社が「住所」と「趣味」との相関を分析したいと考えているとき、「住所」と「趣味」との統計データを別々に入手しても、その属性間の相関を分析することは困難である。したがって、X社は、属性間の関係を分析できるような変換を行うものとする。
この属性間の関係を分析できる変換方法として、無名化がある。図15は、無名化を説明する説明図であり、個票データの無名化の例である。図15に示すように、無名化では、個票データに含まれる行の識別子などの属性(図示例では「ID」)を削除する。Y社は、無名化後の個票データをもとに、各属性の関係を分析することができる。
しかしながら、無名化だけではプライバシー保護の観点からは不十分な場合がある。例えば、次の状況を考える。
・ID=P4の人は、自分の疾患を他人(Y社)に知られたくないと思っている。
・Y社はID=P4の人を知っており、その人がB市で唯一の「ペンタク」好きであることを知っている。
これらの状況が成立した場合、図15に例示した無名化では、プライバシー保護が十分とは言えない。なぜならば、Y社は4行目((住所,趣味)=(B市,ペンタク)である唯一の行)がID=P4の人のデータであると特定でき、その人の「疾患」が「早老症」であると判る。しかしながら、このY社が知り得る情報は、ID=P4の人が知られたくないとする情報であるためである。したがって、X社は、k(>1)人未満の人について詳細な情報をY社が持っている場合を想定した変換を行うものとする。
このように、k(>1)人未満の人について詳細な情報を有する場合を想定した上で、属性間の関係を分析できる変換方法として、l−多様性を達成するk−匿名化(以下、k−匿名化)がある。
k−匿名化は、QI(Quasi-Identifier)、SA(Aensitive-Attribute)などを入力として受け付け、QI値が近い行同士をグループ化し(例えば同じ値に変換し)、各グループのSA値が多様性を持つようにする。SAは各人(行情報提供者)がみだりに知られたくないデータの列であり、QIは他人でも容易に知ることができるデータの列集合(1つ以上の列)である。多様性とは、SA値の度数分布について判定できる性質であり、例えば、度数分布の偏りが小さいことを判定できる性質である。
図16は、k−匿名化を説明する説明図である。具体的には、図16は、図15に例示した個票データに対し、QI={住所,趣味}、SA=疾患とし、多様性を「値が2種類以上あること」としてk=2で匿名化した例である。図16に示すように、「住所」を一般化することで、QIが同じグループ2つに水平方向に分割している。そして、両グループのSA値は多様性を満たしている。すなわち、どのグループにSA値の度数分布も、2種類以上の値がある。
したがって、k−匿名化の例では、属性間の関係を分析できる上、プライバシー保護にも配慮されている。例えば、k−匿名化後の個票データを受けたY社は、ID=P4の人の行を{4,5}行目のいずれかに絞り込めず、したがって、その疾患も{早老症,異食症}のいずれかに絞り込むことは困難である。このように、k−匿名化は、属性間の関係を分析できる上、プライバシー保護にも配慮した変換方法である。
しかしながら、k−匿名化では、存在性の保護を考慮しないアルゴリズムであることから、プライバシー保護は不十分な場合が生じ得る。ここで、存在性の保護とは、ある人の情報(行)が表に含まれているか否かを決められないようにすることを言う。例えば、Y社が政令市に住むペンタク好きの人を知っていた場合、その人は、図16の例には含まれないことが判る。よって、図16の例では、存在性が保護されているとは言えない。
例えば、図16の表が「診療を受けた年収500万円以下の住民」といったデータである場合、Y社が知り得る人が表に含まれないことが判るということは、その人の年収が500万円を超える高収入であることが判ることになる。よって、存在性が保護されていない場合は、プライバシー保護が不十分であると言える。
1つの側面では、個人の存在性の秘匿を可能とするデータ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法を提供することを目的とする。
第1の案では、データ秘匿装置は、匿名化部と、出力部とを有する。匿名化部は、個票データと、匿名化にかかるパラメータとを受け入れて、個票データのレコードの各属性に含まれるデータの中から、パラメータをもとに、k−匿名性を満たさないデータを抑制するとともに、個票データのレコードの各属性に含まれるデータの中から無作為に抽出されたデータを抑制する。出力部は、匿名化部によりデータが抑制された個票データを出力する。
本発明の1実施態様によれば、個人の存在性を秘匿することができる。
図1は、実施形態にかかるデータ秘匿装置の構成を示すブロック図である。 図2は、個票データを説明する説明図である。 図3は、変換規則を説明する説明図である。 図4は、変換結果を説明する説明図である。 図5は、データ秘匿装置の動作例を示すフローチャートである。 図6は、k−匿名化処理の一例を示すフローチャートである。 図7は、再帰的処理の一例を示すフローチャートである。 図8は、表データの一例を説明する説明図である。 図9は、表データの一例を説明する説明図である。 図10は、表データの一例を説明する説明図である。 図11は、表データの一例を説明する説明図である。 図12は、変換規則の一例を説明する説明図である。 図13は、変換規則の一例を説明する説明図である。 図14は、データ秘匿プログラムを実行するコンピュータの一例を示す説明図である。 図15は、無名化を説明する説明図である。 図16は、k−匿名化を説明する説明図である。
以下、図面を参照して、実施形態にかかるデータ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法を説明する。実施形態において同一の機能を有する構成には同一の符号を付し、重複する説明は省略する。なお、以下の実施形態で説明するデータ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法は、一例を示すに過ぎず、実施形態を限定するものではない。また、以下の各実施形態は、矛盾しない範囲内で適宜組みあわせてもよい。
図1は、実施形態にかかるデータ秘匿装置1の構成を示すブロック図である。図1に示すように、データ秘匿装置1は、PC(Personal Computer)等の情報処理装置であり、制御部10と、記憶部20とを有する。
制御部10は、各種の処理手順などを規定したプログラムおよび所要データを格納するための内部メモリを有し、これらによって種々の処理を実行する。制御部10は、匿名化部11および出力部12を有する。
匿名化部11は、個票データ21と、匿名化にかかるパラメータとを受け入れて、個票データ21のレコードの各属性に含まれるデータの中から、受け入れたパラメータをもとに、k−匿名性を満たさないデータを抑制する。また、匿名化部11は、個票データ21のレコードの各属性に含まれるデータの中から無作為に(例えば、ランダムに)抽出されたデータを抑制する。具体的には、匿名化部11は、個票データ21のデータを抑制する変換規則22を作成して出力する。
このように、匿名化部11は、個票データ21のレコードの各属性に含まれるデータの中から、k−匿名性を満たさないデータを抑制するとともに、個票データ21のレコードの各属性に含まれるデータの中から無作為に(例えば、ランダムに)抽出されたデータを抑制する。よって、匿名化部11によりデータの抑制された個票データ21は、無作為に抽出されたデータの抑制によって、ある人が含まれていないことの推定が不確定となり、個人の存在性を秘匿することができる。
出力部12は、匿名化部11によりデータが抑制された個票データを出力する。具体的には、出力部12は、匿名化部11により作成された変換規則22を個票データ21に適用することで、データが抑制された個票データを出力する。なお、出力部12の出力は、ファイルなどの他、ディスプレイ(図示しない)への表示や、通信機器(図示しない)を介して接続する他の装置への通信による出力等であってもよい。
記憶部20は、制御部10による各種処理に必要なデータおよびプログラムを格納する。例えば、記憶部20は、個票データ21および変換規則22を記憶する。
個票データ21は、各行(レコード)に各人の情報を格納した表データである。図2は、個票データ21を説明する説明図である。図2に示すように、個票データ21の各行には、人を識別するIDの他、住所、趣味、疾患などの属性(列)ごとに、その属性を示す値が格納されている。
変換規則22は、個票データ21の変換にかかる規則を記述した情報である。具体的には、変換規則22(F)は、個票データ21(T)から別の個票データ(T)への写像(F:T→T)とし、特定の値を持つ行を、別の値に変換する規則(f)の集まりである。
図3は、変換規則22を説明する説明図である。図3に示すように、変換規則22における規則(f)は、行ごとに記述される。規則(f)は、例えば、「変換前の値→変換後の値」と表現する。一例としては、{住所:A市,趣味:サッカー,疾患:風邪}→{住所:*,趣味:サッカー,疾患:風邪}などとなる。なお、「*」は、値が不明であることを意味する属性値である。各規則における個数は、その規則を適用する回数を示す。なお、図3における規則(f)の表記は一例であり、写像(F:T→T)を示すものであれば何れであってもよい。
図3に例示した変換規則22を用いた変換では、個票データ21(T)の各行について、変換前の値が等しい行が変換規則22にある場合、その変換規則22の行をfとする。そして、Tにおいてfの変換前の値と等しい行を、fの変換後の値に変換し、fの個数を1つ減ずる。そして、変換規則22において個数が0となった行は削除する。なお、個票データ21(T)の各行について、変換前の値が等しい行が変換規則22にない場合、そのTにおける行の変換は行わないものとする。
図4は、変換結果23を説明する説明図である。図4に示すように、変換結果23は、図2に例示した個票データ21(T)を、図3に例示した変換規則22(F)をもとに変換した結果(T)である。
次に、匿名化部11における匿名化処理の詳細を説明する。図5は、データ秘匿装置1の動作例を示すフローチャートである。
図5に示すように、匿名化部11における匿名化処理が開始されると、匿名化部11は、匿名化の対象となる表データ、各列の欠損値、列順序、匿名化パラメータ、抑制行数、各列のランダム性値の入力を受け入れる(S1)。
具体的には、匿名化部11は、記憶部20に記憶された個票データ21を読み出して、匿名化の対象となる表データ(T)として受け入れる。また、匿名化部11は、記憶部20に予め記憶されたパラメータの読出しや、入力装置(例えばキーボード)の入力操作などをもとに、各列の欠損値、列順序、匿名化パラメータ、抑制行数、各列のランダム性値の入力を受け入れる。
各列の欠損値(M)は、表データ(T)における列名(属性名)から欠損値への写像(M:c→m)とし、例えば、M(住所)=M(趣味)=M(疾患)=「*」とする。欠損値とは、値が不明であることを意味する属性値「*」である。ある属性値の欠損値化は、その属性値が一般化され、抑制されていることに相当する。
列順序(C)は、処理を行う順に並べた列名(属性名)のリストとし、例えば、C={住所,趣味,疾患}とする。匿名化パラメータ(k)は、同じような属性の人が、必ずk人以上いる状態とするk−匿名化についてのパラメータであり、例えば、k=2とする。抑制行数(s)は、抑制を行う行の行数であり、例えば、s=1とする。
各列のランダム性値(R)は、列名(属性名)からランダム性への写像(R:c→r)とし、例えば、R(住所)=R(趣味)=R(疾患)=0.2とする。ランダム性は、乱数の影響の程度を与える範囲(0,1)のパラメータであり、その値が大きく(1に近く)なると乱数の影響が強くなる。
例えば、図2の個票データ21の例では、M(c)=*(cは任意)とし、C={住所,趣味,疾患}、k=2、s=1およびR(c)=0.2とする。
次いで、匿名化部11は、表データの次の列(c)を選択し、欠損値(m)およびランダム性値(r)のそれぞれを取得する(S2)。具体的には、C={住所,趣味,疾患}より最初の要素を参照し、c=住所となる。また、S1において受け入れた値をもとに、m=M(c)=*、r=R(c)=0.2となる。
次いで、匿名化部11は、S2において選択した列(c)について、乱数を用いたk−匿名化処理を行う(S3)。このk−匿名化処理の詳細は後述する。k−匿名化処理の結果として、匿名化部11は、選択した列(c)について、k−匿名性を満たさないために抑制される行である行抑制行群(W)および抑制行群(X)と、k−匿名性を満たすグループ群(G)とを得る。なお、行抑制行群(W)は行自体を抑制する行群であり、抑制行群(X)は選択された列(c)の値を抑制する行群である。
例えば、行抑制行群W=[T(7)]、抑制行群X=[T(4),T(5),T(6)]、k−匿名性を満たすグループ群G={[T(1),T(2),T(3)]}を得たものとする。ここで、T(n)は、表データTのn行目(n≧1)のデータとする。例えば、図2の個票データ21(T)の例では、T(1)=T(2)={住所:A市,趣味:サッカー,疾患:胃腸炎}である。ここで、得られた行抑制行群W、抑制行群Xを欠損値化する規則を生成した場合は、列(c)単独で考えた場合のk−匿名性が達成できることとなる。なお、k−匿名化処理において、Wの要素数はsの値となるが、その他の内容は、乱数の作用により、k−匿名化処理を呼び出す度に変わる可能性がある。
次いで、匿名化部11は、k−匿名性を満たす各グループについて、グループ群(G)から要素を順次取り出してS4〜S7のループ処理を行うことで、k−匿名化処理を再帰的に行う。具体的には、グループ群G={[T(1),T(2),T(3)]}であることから、k−匿名化処理を再帰的に行う表データ(T’)をT’=[T(1),T(2),T(3)]とする。
次いで、匿名化部11は、選択した列(c)の次の列(c’)について、抑制する列集合(D)を空(D={})として、再帰的処理を行う(S5)。例えば、列の要素がC={住所,趣味,疾患}であり、選択した列(c)がc=住所である場合は、c’=趣味とする。この再帰的処理の詳細は後述する。
再帰的処理の結果として、匿名化部11は、余った行群(E:E=[T(3)])を得たものとする。この再帰的処理により得られるT’−Eの行群により、Cについてk−匿名性が達成される規則を生成できる。この再帰的処理では、[T(1),T(2)]は、T(1)=T(2)であることから、元々Cについてk=2のk−匿名性を満たしているので、変換規則は生成されないこととなる。また、再帰的処理の呼び出し結果についても、乱数の作用により、呼び出す度に変わる可能性がある。
次いで、匿名化部11は、余った行群(E)を抑制行群(X)に追加する(S6)。例えば、抑制行群X=[T(4),T(5),T(6)]であり、余った行群E=[T(3)]である場合は、X=[T(3),T(4),T(5),T(6)]となる。
ループ処理(S4〜S7)に次いで、匿名化部11は、抑制行数がk以上であるか否かを判定し(S8)、k以上である場合(S8:YES)はS9へ処理を進め、k以上でない場合(S8:NO)はS10へ処理を進める。例えば、X=[T(3),T(4),T(5),T(6)]である場合、|X|=4≧k=2であることから、匿名化部11はS9へ処理を進める。
S9において、匿名化部11は、選択した列(c)の次の列(c’)について、抑制行群をT’として、再帰的処理を行う。例えば、列の要素がC={住所,趣味,疾患}であり、選択した列(c)がc=住所である場合は、c’=趣味とする。そして、T’=X、D={c}={住所}とし、T’、c’を用いて再帰的処理を行う。
この再帰的処理の結果として、匿名化部11は、余った行群(E:E=[])を得たものとする。この再帰的処理により得られるT’−Eの行群により、Cについてk−匿名性が達成される規則を生成できる。
S10において、匿名化部11は、抑制行群(X)を余った行群(E)として扱うこととする。
S9、S10に次いで、匿名化部11は、余った行群(E)を行抑制行群(W)に追加する(S11)。前述したS9の例では、余った行群E=[]なので、Wは変化せず、W=[T(7)]となる。
次いで、匿名化部11は、行抑制行群(W)について、各列を欠損値化して行抑制を行う変換規則を生成し、変換規則22(F)に追加する(S12)。次いで、匿名化部11は、変換規則22(F)を出力する(S13)。すなわち、匿名化部11は、図3に例示した変換規則22を出力する。
ここで、k−匿名化処理の詳細を説明する。図6は、k−匿名化処理の一例を示すフローチャートである。
図6に示すように、k−匿名化処理が開始されると、匿名化部11は、匿名化の対象となる表データ(T)、欠損値(m)、列(c)、匿名化パラメータ(k)、抑制行数(s)および各列のランダム性値(r)の入力を受け入れる(S101)。例えば、S2の後のk−匿名化処理では、S2において選択した列についてのm=*、c=住所、k=2、s=1、r=0.2の値を受け入れる。
次いで、匿名化部11は、選択された列(要素)で行をグループ化し、k行未満の行と、欠損値の行とを、選択された列の値を抑制する抑制行群(X)としてまとめる(S102)。具体的には、図2の個票データ21(T)の例において、c=住所でグループ化すると、{A市:[T(1),T(2),T(3)],B市:[T(4)],C市:[T(5)],D市:[T(6),T(7)]となる。このうち、k=2行未満となる行は{B市、C市}であり、値がm=*の行はないので、X=[T(4),T(5)]となる。
次いで、匿名化部11は、抑制行数(a)をa←ceil(logu−1)により算出する(S103)。ここで、ceilは天井関数であり、uは範囲(0,1)の一様乱数である。乱数u=0.1を得たとすると,a=ceil(log0.20.1−1)=1となる。なお、抑制行数(a)の算出式は、大きな行数ほど得られる確率が小さくなるような算出式であれば、何れであってもよく、特に限定しない。
次いで、匿名化部11は、|X|<sであるか否かを判定し(S104)、|X|<sである場合(S104:YES)はS105へ処理を進め、|X|<sでない場合(S104:NO)はS106へ処理を進める。例では、sはs=1であり、XはX=[T(4),T(5)]である。よって、|X|=2≧s=1なので、S104の条件は成立せずに、匿名化部11はS106へ処理を進める。
S105において、匿名化部11は、抑制行数(a)をa←a+s−|X|とし、S106へ処理を進める。例えば、前述した例でs=3の場合、|X|<sであるのでS105に処理が進み、a=2となる。
S106において、匿名化部11は、k行以上のグループ群から抑制行群以上を削除(k行未満になったグループも削除)し、抑制行群(X)に追加する。例えば、k行以上のグループ群は{A市:[T(1),T(2),T(3)],D市:[T(6),T(7)]}であり、ここからa=1行をXに移す。具体的には、まず値を乱数により選び、D市が選ばれたとする。次にD市の行を乱数により選び、T(6)が選ばれたとする。また、D市グループは、T(6)を削除すると行数がk未満となるので、その結果、同グループの全ての行を抑制行群(X)に移す。ここで、a行以上を移したので、これ以上は移さないものとする。この結果、X=[T(4),T(5),T(6),T(7)]となる。また、k−匿名性を満たすグループ群は、A市を要素とするG={[T(1),T(2),T(3)]}となる。
次いで、匿名化部11は、抑制行群(X)から乱数を使い行を削除し、その削除した行を行抑制行群(W)とする(S107)。具体的には、s=1行を乱数により選び、X=[T(4),T(5),T(6),T(7)]からT(7)が選ばれたものとする。この場合、X=[T(4),T(5),T(6)]とし、行抑制行群W=[T(7)]とする。
次いで、匿名化部11は、S101〜S107の処理により得られた行抑制行群(W)、抑制行群(X)、k−匿名性を満たす各グループ(G)を出力する(S108)。具体的には、上述した例では、W=[T(7)],X=[T(4),T(5),T(6)],G={[T(1),T(2),T(3)]}を出力する。
次に、再帰的処理の詳細を説明する。図7は、再帰的処理の一例を示すフローチャートである。
図7に示すように、匿名化部11における再帰的処理が開始されると、匿名化部11は、処理の対象となる表データ、各列の欠損値、列順序、列、匿名化パラメータ、各列のランダム性値、抑制する列集合(D)の入力を受け入れる(S201)。
次いで、匿名化部11は、列(c)はあるか否かを判定し(S202)、ある場合(S202:YES)はS203へ処理を進め、ない場合(S202:NO)はS213へ処理を進める。
S203において、匿名化部11は、S201で受け入れた値より、欠損値(m)、ランダム性値(r)をそれぞれ取得する。
次いで、匿名化部11は、s=0でk−匿名化処理を呼び出して実行する(S204)。次いで、匿名化部11は、k−匿名性を満たす各グループについて、グループ群(G)から要素を順次取り出してS205〜S208のループ処理を行うことで、k−匿名化処理を再帰的に行う。
このループ処理において、匿名化部11は、選択した列(c)の次の列(c’)について、再帰的処理を行い(S206)、余った行群(E)を得る。次いで、匿名化部11は、余った行群(E)を抑制行群(X)に追加する(S207)。そして、匿名化部11は、グループ群(G)の要素がない場合、S205〜S208のループ処理を終了し、S209へ処理を進める。
S209において、匿名化部11は、抑制行数がk以上であるか否かを判定し、k以上である場合(S209:YES)はS210へ処理を進め、k以上でない場合(S209:NO)はS211へ処理を進める。
S210において、匿名化部11は、選択した列(c)の次の列(c’)について、抑制行群をT’とし、抑制する列集合(D)に選択した列(c)を追加したものを新たな列集合(D)として、再帰的処理を行う。この再帰的処理の結果として、匿名化部11は、余った行群(E)を得て、S212へ処理を進める。
S211において、匿名化部11は、抑制行群(X)を余った行群(E)として扱うこととし、S212へ処理を進める。S212において、匿名化部11は、余った行群(E)を出力し、処理を終了する。
S213において、匿名化部11は、列集合(D)が空であるか否かを判定し、空である場合(S213:YES)はS215へ処理を進め、空でない場合(S213:NO)はS214へ処理を進める。S214において、匿名化部11は、表データについて、列集合(D)に対応する列を抑制する変換規則を生成し、S215へ処理を進める。S215において、匿名化部11は、余った行群(E)として空集合([])を出力し、処理を終了する。
ここで、いくつかの表データを例示して再帰的処理をより具体的に説明する。
図8〜図11は、表データの一例を説明する説明図である。S201では、一例として、図8に示すような表データ(T’)を処理の対象として受け入れるものとする。また、M(c)=*(cは任意)、C={住所,趣味,疾患}、c=趣味、k=2、R(c)=0.2(cは任意)、D={}の入力を受け入れるものとする。
S202では、c=趣味であるので、S203へ処理を進める。S203において、匿名化部11は、S201で受け入れた値より、欠損値(m)、ランダム性値(r)をそれぞれ取得する。ここでは、m=M(c)=*、r=R(c)=0.2となる。
次いで、S204では、k−匿名化処理を呼び出し、行抑制行群W=[]、抑制行群X=[]、k−匿名性を満たすグループ群G={[T(1),T(2),T(3)]}を得たものとする。
次いでS205〜S208のループ処理では、グループ群G={[T(1),T(2),T(3)]}であることから、k−匿名化処理を再帰的に行う表データ(T’)をT’=[T(1),T(2),T(3)]とする。
S206の再帰的処理では、列の要素がC={住所,趣味,疾患}であり、c=趣味であるので、c’=疾患とする。この再帰的処理の結果として、匿名化部11は、余った行群(E:E=[T(3)])を得る。S207では、余った行群E=[T(3)]であるので、X=[T(3)]となる。なお、グループ群(G)に次の要素はないので、S205〜S208のループ処理を終了し、S209へ処理を進める。
S209では、|X|=[T(3)]=1<k=2のため、S211へ処理を進める。これにより、S211、S212を経て、余った行群として[T(3)]を出力する。
次に、S201において、図8に示すような表データ(T’)を処理の対象として受け入れ、M(c)=*(cは任意)、C={住所,趣味,疾患}、c=疾患、k=2、R(c)=0.2(cは任意)、D={}の入力を受け入れる場合を説明する。
この場合、S202では、c=疾患であるので、S203へ処理を進める。S203では、S201で受け入れた値より、m=M(c)=*、r=R(c)=0.2となる。
次いで、S204では、k−匿名化処理を呼び出し、行抑制行群W=[]、抑制行群X=[T(3)]、k−匿名性を満たすグループ群G={[T(1),T(2)]}を得たものとする。
次いでS205〜S208のループ処理では、グループ群G={[T(1),T(2)]}であることから、k−匿名化処理を再帰的に行う表データ(T’)をT’=[T(1),T(2)]とする。
S206の再帰的処理では、列の要素がC={住所,趣味,疾患}であり、c=疾患であるので、c’=(該当なし)とする。この再帰的処理の結果として、匿名化部11は、余った行群(E:E=[])を得る。S207では、X=[T(3)]にE=[]を追加し、X=[T(3)]となる。なお、グループ群(G)に次の要素はないので、S205〜S208のループ処理を終了し、S209へ処理を進める。
S209では、|X|=[T(3)]=1<k=2のため、S211へ処理を進める。これにより、S211、S212を経て、余った行群として[T(3)]を出力する。
次に、S201において、図9に示すような表データ(T’)を処理の対象として受け入れ、M(c)=*(cは任意)、C={住所,趣味,疾患}、c=(該当なし)、k=2、R(c)=0.2(cは任意)、D={}の入力を受け入れる場合を説明する。
この場合、S202では、c=(該当なし)であるので、S213へ処理を進める。S213では、D={}であるので、S215へ処理を進め、余った行群(E)として空集合([])を出力する。
次に、Dが空({})でない場合の処理例を説明する。具体的には、S201において、図10に示すような表データ(T’)を処理の対象として受け入れ、M(c)=*(cは任意)、C={住所,趣味,疾患}、c=趣味、k=2、R(c)=0.2(cは任意)、D={住所}の入力を受け入れるものとする。
この場合、S202では、c=趣味であるので、S203へ処理を進める。S203では、S201で受け入れた値より、m=M(c)=*、r=R(c)=0.2となる。
次いで、S204では、s=0でk−匿名化処理を呼び出し、行抑制行群W=[]、抑制行群X=[]、k−匿名性を満たすグループ群G={[T(1),T(4)],[T(2),T(3)]}を得たものとする。
次いでS205〜S208のループ処理では、グループ群G={[T(1),T(4)],[T(2),T(3)]}であることから、k−匿名化処理を再帰的に行う表データ(T’)をT’=[T(1),T(4)]とする。
S206の再帰的処理では、列の要素がC={住所,趣味,疾患}であり、c=趣味であるので、c’=疾患とする。この再帰的処理の結果として、匿名化部11は、余った行群(E:E=[])を得る。S207では、余った行群E=[]であるので、X=[]となる。なお、グループ群(G)に次の要素[T(2),T(3)]があるのでS205へ処理を戻し、k−匿名化処理を再帰的に行う表データ(T’)をT’=[T(2),T(3)]とする。
S206の再帰的処理ではc’=疾患とし、この再帰的処理の結果として、匿名化部11は、余った行群(E:E=[])を得る。S207では、余った行群E=[]であるので、X=[]となる。なお、グループ群(G)に次の要素はないので、S205〜S208のループ処理を終了し、S209へ処理を進める。
S209では、|X|=[]=0<k=2のため、S211へ処理を進める。これにより、S211、S212を経て、余った行群として[]を出力する。
次に、S201において、図11に示すような表データ(T’)を処理の対象として受け入れ、M(c)=*(cは任意)、C={住所,趣味,疾患}、c=疾患、k=2、R(c)=0.2(cは任意)、D={住所}の入力を受け入れる場合を説明する。
この場合、S202では、c=疾患であるので、S203へ処理を進める。S203では、S201で受け入れた値より、m=M(c)=*、r=R(c)=0.2となる。
次いで、S204では、s=0でk−匿名化処理を呼び出し、行抑制行群W=[]、抑制行群X=[T(1),T(2)]、k−匿名性を満たすグループ群G={}を得たものとする。
S205〜S208のループ処理では、グループ群(G)に要素はないので、処理を終了し、S209へ処理を進める。S209では、|X|=[T(1),T(2)]=2≧k=2のため、S210へ処理を進める。
S210では、Cからc=疾患の次の要素を参照し、c’=(該当なし)となる。そして、T’=X、D’=D∪{c}={住所,疾患}とし、T’、c’、D’を用いて再帰的処理を行う。この再帰的処理の結果として、匿名化部11は、余った行群(E:E=[])を得る。S212では、余った行群E=[]を出力する。
次に、S201において、図11に示すような表データ(T’)を処理の対象として受け入れ、M(c)=*(cは任意)、C={住所,趣味,疾患}、c=(該当なし)、k=2、R(c)=0.2(cは任意)、D={住所,疾患}の入力を受け入れる場合を説明する。
この場合、S202では、c=(該当なし)であるので、S213へ処理を進める。S213では、D={住所,疾患}であるので、S214へ処理を進める。S214では、D={住所,疾患}に対応する列を抑制する変換規則を生成する。抑制とは、その列の値をMを使って欠損値化することである。例えば、T(1)については、{住所:B市,趣味:ペタンク,疾患:早老症}→{住所:*,趣味:ペタンク,疾患:*}という変換規則を生成する。
図12、図13は、変換規則の一例を説明する説明図である。図11の例では、上述した再帰的処理により、図12のような変換規則が生成される。同様に、図10の例では、上述した再帰的処理により、図13のような変換規則が生成される。
このように、主に最初の列に対する処理(例えば、図5)では、それ以外の列に対する再帰的処理(例えば、図7)に比べ、s行以上を行抑制する点に違いがある。具体的には、S3においてs行の行抑制を決め、S11において全体でk−匿名性を満たさなかった行の行抑制を決めている。よって、必ずs行以上を抑制することで、ある人が含まれていないことの推定を必ず不確定にする効果がある。
また、図5のS4〜S7、図7のS205〜S208は、列(c)でk−匿名性を満たすグループ内で、全体でk−匿名性を満たさなかった行を、あきらめて行抑制するのではなく、列を抑制した行同士でのk−匿名化を試行するための処理である。これにより、抑制量を減らす効果がある。
また、図6のS103では、抑制行数(a)を乱数を使って決めていることで、抑制した値の元の値の推定を難しくしている。例えば、決定的なアルゴリズムによって変換された場合は、個人の存在を推定できてしまうかも知れない。具体的には、「趣味」がペタンクな人がB市またはC市という非政令市にしか住んでいないという知識があるY社が図17の表を見た場合、「趣味」がペタンクで「住所」がB市である唯一の人が表に含まれていることが推定できる。しかしながら、データ秘匿装置1のように、もともとk−匿名性があっても、無作為にデータが抑制される可能性のあるアルゴリズムが使われていれば、その推定は不確定になる。
また、データ秘匿装置1では、抑制行数(a)をceil(logu−1)のように、大きなaほど得られる確率が小さくなるような式で算出することで、抑制数を少なくできる。この結果、表の変換度合いを小さくすることができる。
以上のように、データ秘匿装置1の匿名化部11は、個票データ21と、匿名化にかかるパラメータとを受け入れて、個票データ21のレコードの各属性に含まれるデータの中から、パラメータをもとに、k−匿名性を満たさないデータを抑制する。また、匿名化部11は、個票データ21のデータの中から無作為に抽出されたデータを抑制する。データ秘匿装置1の出力部12は、匿名化部11によりデータが抑制された個票データを出力する。このため、データ秘匿装置1により秘匿化された出力部12は、ある人が含まれていないことの推定が不確定となり、個人の存在性を秘匿することができる。
また、匿名化部11は、属性の中のある属性おいて、k−匿名性を満たさないデータを抑制するとともに、データの中から無作為に抽出されたデータを抑制する。そして、匿名化部11は、さらに別の属性においてk−匿名性を満たさないデータを抑制するとともに、データの中から無作為に抽出されたデータを抑制する再帰処理を行って、各属性に含まれるデータを抑制する。これにより、匿名化部11は、抑制量を減らすことができる。
また、匿名化部11は、レコードの数の増加に応じて無作為に抽出される確率を小さくすることで、抑制数を少なくできる。
また、図示した各部の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、上記の実施形態の匿名化部11、出力部12などのそれぞれを統合してもよい。
さらに、各装置で行われる各種処理機能は、CPU(またはMPU、MCU(Micro Controller Unit)等のマイクロ・コンピュータ)上で、その全部または任意の一部を実行するようにしてもよい。また、各種処理機能は、CPU(またはMPU、MCU等のマイクロ・コンピュータ)で解析実行されるプログラム上、またはワイヤードロジックによるハードウェア上で、その全部または任意の一部を実行するようにしてもよいことは言うまでもない。
ところで、上記の実施形態で説明した各種の処理は、予め用意されたプログラムをコンピュータで実行することで実現できる。そこで、以下では、上記の実施例と同様の機能を有するプログラムを実行するコンピュータの一例を説明する。図14は、データ秘匿プログラムを実行するコンピュータ300の一例を示す説明図である。
図14が示すように、コンピュータ300は、各種演算処理を実行するCPU301と、データ入力を受け付ける入力装置302と、モニタ303とを有する。また、コンピュータ300は、記憶媒体からプログラム等を読み取る媒体読取装置304と、各種装置と接続するためのインタフェース装置305と、他の装置と有線または無線により接続するための通信装置306とを有する。また、コンピュータ300は、各種情報を一時記憶するRAM307と、ハードディスク装置308とを有する。また、各装置301〜308は、バス309に接続される。
ハードディスク装置308には、上記の実施形態で説明した各処理部と同様の機能を有するデータ秘匿プログラムが記憶される。また、ハードディスク装置308には、データ秘匿プログラムを実現するための各種データが記憶される。入力装置302は、例えばユーザからの入力を受け付ける。モニタ303は、ユーザからの入力を受け付ける際の操作画面を表示したり、各種情報を表示する。インタフェース装置305は、例えば印刷装置等が接続される。通信装置306は、例えば外部機器やネットワークに接続される。
CPU301は、ハードディスク装置308に記憶された各プログラムを読み出して、RAM307に展開して実行することで、各種の処理を行う。また、これらのプログラムは、コンピュータ300を上記の実施形態で説明した各処理部と同様に機能させることができる。
なお、上記のデータ秘匿プログラムは、必ずしもハードディスク装置308に記憶されている必要はない。例えば、コンピュータ300が読み取り可能な記憶媒体に記憶されたプログラムを、コンピュータ300が読み出して実行するようにしてもよい。コンピュータ300が読み取り可能な記憶媒体は、例えば、CD−ROMやDVDディスク、USB(Universal Serial Bus)メモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリ、ハードディスクドライブ等が対応する。また、公衆回線、インターネット、LAN等に接続された装置にこのデータ秘匿プログラムを記憶させておき、コンピュータ300がこれらからデータ秘匿プログラムを読み出して実行するようにしてもよい。
1…データ秘匿装置
10…制御部
11…匿名化部
12…出力部
20…記憶部
21…個票データ
22…変換規則
23…変換結果
300…コンピュータ
301…CPU
302…入力装置
303…モニタ
304…媒体読取装置
305…インタフェース装置
306…通信装置
307…RAM
308…ハードディスク装置
309…バス

Claims (5)

  1. 個票データと、匿名化にかかるパラメータとを受け入れて、前記個票データのレコードの各属性に含まれるデータの中から、前記パラメータをもとに、k−匿名性を満たさないデータを抑制するとともに、前記個票データのレコードの各属性に含まれるデータの中から無作為に抽出されたデータを抑制する匿名化部と、
    前記匿名化部によりデータが抑制された個票データを出力する出力部と、
    を有することを特徴とするデータ秘匿装置。
  2. 前記匿名化部は、前記属性の中の第1の属性おいて、前記k−匿名性を満たさないデータを抑制するとともに、前記個票データのレコードの各属性に含まれるデータの中から無作為に抽出されたデータを抑制し、さらに前記第1の属性とは異なる第2の属性において前記k−匿名性を満たさないデータを抑制するとともに、前記個票データのレコードの各属性に含まれるデータの中から無作為に抽出されたデータを抑制する再帰処理を行って、前記各属性に含まれるデータを抑制する
    ことを特徴とする請求項1に記載のデータ秘匿装置。
  3. 前記匿名化部は、前記レコードの数の増加に応じて前記無作為に抽出される確率を小さくする
    ことを特徴とする請求項1または2に記載のデータ秘匿装置。
  4. コンピュータに、
    個票データと、匿名化にかかるパラメータとを受け入れて、前記個票データのレコードの各属性に含まれるデータの中から、前記パラメータをもとに、k−匿名性を満たさないデータを抑制するとともに、前記個票データのレコードの各属性に含まれるデータの中から無作為に抽出されたデータを抑制し、
    前記抑制されたデータを出力する
    処理を実行させることを特徴とするデータ秘匿プログラム。
  5. コンピュータが、
    個票データと、匿名化にかかるパラメータとを受け入れて、前記個票データのレコードの各属性に含まれるデータの中から、前記パラメータをもとに、k−匿名性を満たさないデータを抑制するとともに、前記個票データのレコードの各属性に含まれるデータの中から無作為に抽出されたデータを抑制し、
    前記抑制されたデータを出力する
    処理を実行することを特徴とするデータ秘匿方法。
JP2015000556A 2015-01-05 2015-01-05 データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法 Active JP6413769B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2015000556A JP6413769B2 (ja) 2015-01-05 2015-01-05 データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法
EP15194522.7A EP3040900B1 (en) 2015-01-05 2015-11-13 Data securing device, data securing program, and data securing method
US14/963,469 US9754129B2 (en) 2015-01-05 2015-12-09 Data securing device, recording medium, and data securing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015000556A JP6413769B2 (ja) 2015-01-05 2015-01-05 データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法

Publications (2)

Publication Number Publication Date
JP2016126579A JP2016126579A (ja) 2016-07-11
JP6413769B2 true JP6413769B2 (ja) 2018-10-31

Family

ID=54557274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015000556A Active JP6413769B2 (ja) 2015-01-05 2015-01-05 データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法

Country Status (3)

Country Link
US (1) US9754129B2 (ja)
EP (1) EP3040900B1 (ja)
JP (1) JP6413769B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6456162B2 (ja) * 2015-01-27 2019-01-23 株式会社エヌ・ティ・ティ ピー・シー コミュニケーションズ 匿名化処理装置、匿名化処理方法及びプログラム
JP6747144B2 (ja) * 2016-07-28 2020-08-26 富士通株式会社 情報処理装置、情報処理方法およびプログラム
US10528761B2 (en) * 2017-10-26 2020-01-07 Sap Se Data anonymization in an in-memory database
JP6779854B2 (ja) * 2017-12-04 2020-11-04 Kddi株式会社 匿名化装置、匿名化方法及び匿名化プログラム
US10572459B2 (en) * 2018-01-23 2020-02-25 Swoop Inc. High-accuracy data processing and machine learning techniques for sensitive data
WO2020023759A1 (en) * 2018-07-26 2020-01-30 Insight Sciences Corporation Secure electronic messaging system
JP7377664B2 (ja) * 2019-10-01 2023-11-10 株式会社日立製作所 データベース管理システム、および、データベース処理方法
US20240041886A1 (en) * 2021-02-05 2024-02-08 Ptc Therapeutics, Inc. Methods for treating spinocerebellar ataxia type 3

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002254564A1 (en) 2001-04-10 2002-10-28 Latanya Sweeney Systems and methods for deidentifying entries in a data source
JP4474390B2 (ja) 2006-07-26 2010-06-02 日本興亜損害保険株式会社 個人情報マスキングシステム及びその方法
EP1950684A1 (en) * 2007-01-29 2008-07-30 Accenture Global Services GmbH Anonymity measuring device
US8627483B2 (en) * 2008-12-18 2014-01-07 Accenture Global Services Limited Data anonymization based on guessing anonymity
JP2011034264A (ja) 2009-07-31 2011-02-17 Hitachi Solutions Ltd 個人情報マスキングシステム
JP5475610B2 (ja) 2009-10-07 2014-04-16 日本電信電話株式会社 撹乱装置、撹乱方法及びプログラム
JP5691936B2 (ja) * 2011-08-19 2015-04-01 富士通株式会社 情報処理方法及び装置
JP5772563B2 (ja) * 2011-12-14 2015-09-02 富士通株式会社 情報処理方法、装置及びプログラム
WO2014136422A1 (ja) * 2013-03-06 2014-09-12 日本電気株式会社 匿名化処理を行う情報処理装置及び匿名化方法
US9460311B2 (en) * 2013-06-26 2016-10-04 Sap Se Method and system for on-the-fly anonymization on in-memory databases

Also Published As

Publication number Publication date
US9754129B2 (en) 2017-09-05
US20160196453A1 (en) 2016-07-07
EP3040900A1 (en) 2016-07-06
EP3040900B1 (en) 2017-06-28
JP2016126579A (ja) 2016-07-11

Similar Documents

Publication Publication Date Title
JP6413769B2 (ja) データ秘匿装置、データ秘匿プログラムおよびデータ秘匿方法
JP5796574B2 (ja) 情報処理装置、制御方法及びプログラム
US20140317756A1 (en) Anonymization apparatus, anonymization method, and computer program
JP7106643B2 (ja) データを非特定化する方法、データを非特定化するためのシステム、および非データを特定化するためのコンピュータ・プログラム
JP2017091515A (ja) 匿名化のために属性を自動的に識別するコンピュータ実装システムおよび方法
JP5782637B2 (ja) 属性選択装置、情報匿名化装置、属性選択方法、情報匿名化方法、属性選択プログラム、及び情報匿名化プログラム
JP2016511891A (ja) 大規模データへの妨害攻撃に対するプライバシー
JP6293003B2 (ja) プライバシー保護装置、方法及びプログラム
WO2014181541A1 (ja) 匿名性を検証する情報処理装置及び匿名性検証方法
JP6584861B2 (ja) プライバシ保護装置、方法及びプログラム
JP2015114871A (ja) 公開情報のプライバシー保護装置、公開情報のプライバシー保護方法およびプログラム
JP2013190838A (ja) 情報匿名化システム、情報損失判定方法、及び情報損失判定プログラム
WO2017203672A1 (ja) アイテム推奨方法、アイテム推奨プログラムおよびアイテム推奨装置
Rodríguez et al. Towards the adaptation of SDC methods to stream mining
JP6445415B2 (ja) 匿名化装置、匿名化方法、プログラム
JP2015141642A (ja) 利用同意管理装置
US9154515B1 (en) Systems and methods identifying and reacting to potentially malicious activity
JP2014011503A (ja) 秘匿化装置、秘匿化プログラムおよび秘匿化方法
JP5903376B2 (ja) 情報推薦装置、情報推薦方法、及び情報推薦プログラム
JP5568907B2 (ja) 情報アセスメントシステム、情報アセスメント方法及びプログラム
JP6549076B2 (ja) 匿名化テーブル生成装置、匿名化テーブル生成方法、プログラム
JP2017076170A (ja) リスク評価装置、リスク評価方法及びリスク評価プログラム
JP6610334B2 (ja) 漏洩リスク提供装置、漏洩リスク提供方法および漏洩リスク提供プログラム
JP2019211899A (ja) 処理装置、処理方法及びプログラム
JP2016133872A (ja) 情報匿名化方法、情報匿名化プログラムおよび情報匿名化装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180731

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180731

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180820

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: 20180904

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180917

R150 Certificate of patent or registration of utility model

Ref document number: 6413769

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150