JP6809986B2 - アクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラム - Google Patents

アクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラム Download PDF

Info

Publication number
JP6809986B2
JP6809986B2 JP2017113740A JP2017113740A JP6809986B2 JP 6809986 B2 JP6809986 B2 JP 6809986B2 JP 2017113740 A JP2017113740 A JP 2017113740A JP 2017113740 A JP2017113740 A JP 2017113740A JP 6809986 B2 JP6809986 B2 JP 6809986B2
Authority
JP
Japan
Prior art keywords
program
access
attack
memory
executions
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
JP2017113740A
Other languages
English (en)
Other versions
JP2018207409A (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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2017113740A priority Critical patent/JP6809986B2/ja
Publication of JP2018207409A publication Critical patent/JP2018207409A/ja
Application granted granted Critical
Publication of JP6809986B2 publication Critical patent/JP6809986B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、秘密情報にアクセスするプログラム、アクセスパターンを保護する装置、並びに当該プログラムを最適化するための装置、方法及びプログラムに関する。
従来、メモリに対するアクセスパターンから、プログラムに関する秘密情報が漏えいすることが懸念されており、プログラム実行時のアクセスパターンを保護することが望まれている。アクセスパターンの保護手法は、以下の2つの要件を満たす必要がある。
(1)メモリのどのブロックにアクセスしたかが分からないこと。
(2)同じブロックに複数回アクセスしたことが分からないこと。
メモリに対するアクセスパターンの保護技術としては、ORAM(Oblivious RAM)が知られている(例えば、非特許文献1参照)。ORAMは、一定のアクセス回数毎に、メモリのブロックをランダムにシャッフルすることで、要件(1)を満たす。また、ORAMは、一部のブロックにダミーの情報を格納し、プログラムが同じブロックにアクセスする場合、擬似的にダミーの情報が格納されているダミーブロックにアクセスすることで、要件(2)を満たす。ORAMは、ダミーブロックにアクセスする場合も、ブロックがシャッフルされるまでの間、同一のブロックにアクセスしないため、ブロックをシャッフルするまでのアクセス回数と、ダミーブロックの数とは等しく設計される。
O. Goldreich and R. Ostrovsky, "Software Protection and Simulation on Oblivious RAMs," J. ACM, vol. 43, no. 3, pp. 431−473, 1996.
前述のように、ORAMは、上記の2つの要件を満たすとされているが、安全性解析は十分に行われておらず、安全性の評価指標も示されていなかった。
本発明は、メモリへのアクセスに対して、共通の評価指標に基づく所定の安全性を確保できるアクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラムを提供することを目的とする。
本発明に係るアクセスプログラムは、メモリに格納された秘密情報へのアクセスを伴う処理をコンピュータに実行させるためのプログラムであって、実行回数を記録させる記録ステップと、前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行を制限させる制限ステップと、を含む。
前記所定値は、前記メモリからランダムに選択した情報から前記秘密情報の復元を試行する第2の攻撃を上限回数まで繰り返した場合に、当該第2の攻撃が成功する確率であってもよい。
前記メモリは、既定のアクセス回数毎にダミーブロックを含むブロック位置をシャッフルし、前記既定のアクセス回数の間、同一のブロックへのアクセスをしないORAMであってもよい。
前記第1の攻撃の成功確率は、攻撃者が前記アクセスパターンのうち、前記秘密情報の要素数に等しい数のアクセス位置のみが特定のブロック範囲に含まれる場合に前記第1の攻撃を行うと仮定した確率であってもよい。
前記制限ステップにおいて、前記コンピュータに、前記制限させる実行回数毎に、前記秘密情報へのアクセスを伴うプログラム区間を更新させてもよい。
本発明に係る保護装置は、メモリに格納された秘密情報へのアクセスを伴うプログラムを実行する秘密情報の保護装置であって、実行回数を記録する記録部と、前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行を制限する制限部と、を備える。
本発明に係る最適化装置は、メモリに格納された秘密情報へのアクセスを伴うプログラムの実行制限回数を決定する最適化装置であって、前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記プログラムの実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行回数を、前記実行制限回数として決定する決定部を備える。
本発明に係る最適化方法は、メモリに格納された秘密情報へのアクセスを伴うプログラムの実行制限回数を決定する最適化方法であって、コンピュータが前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記プログラムの実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行回数を、前記実行制限回数として決定する。
本発明に係る最適化プログラムは、メモリに格納された秘密情報へのアクセスを伴うプログラムの実行制限回数を決定するための最適化プログラムであって、コンピュータに、前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記プログラムの実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行回数を、前記実行制限回数として決定させるためのものである。
本発明によれば、メモリへのアクセスに対して、共通の評価指標に基づく所定の安全性を確保できる。
実施形態に係る保護装置の機能構成を示す図である。 実施形態に係るアクセスプログラムに実装される保護手法の第1の例を示すフローチャートである。 実施形態に係るアクセスプログラムに実装される保護手法の第2の例を示すフローチャートである。 実施形態に係る最適化装置の機能構成を示す図である。
[第1実施形態]
以下、本発明の第1実施形態について説明する。
本実施形態の保護手法が適用されたアクセスプログラムは、コンピュータに実行されることにより、ORAMに格納された秘密情報にアクセスする。
ここで、本保護手法によりアクセスプログラムを実行できる回数が制限されることで、同一のプログラムを複数回実行した際に得られる複数のアクセスパターンを用いてメモリから秘密情報を復元する攻撃が抑制される。
まず、アクセスパターンの保護技術であるORAMを、以下のように定義する。
メモリMは、N=m+d個のブロックからなるとする。Mは次式で定義される。
M=(M,…,M,…,M
ただし、1番目からm番目のブロックには正しい情報が格納される。m+1番目からm+d番目のブロックにはダミーの情報が格納される。
ここで、観測されるメモリのブロックの位置を表す関数gを、次式で定義する。
g(M)→i
また、メモリのブロックの位置をランダムにシャッフルする置換関数πを、次式で定義する。
π(g(M))→j, j∈{1,…,N}
ただし、置換関数はプログラムがメモリへd回アクセスする毎に更新され、kは、更新回数を示す。
ORAMを適用後にあるプログラムを実行したときのメモリへのアクセスパターンは、次式で表される。
A=(a,…,a,…,akd+1,…,akd+d,…,and+1,…,and+d
ここで、各アクセスakd+iは次式で表される。
kd+i=π(g(M))
ただし、ORAMでは、置換関数が更新されるまでの間に、同一のブロックにアクセスしたことが分からないようにするために、kd+1番目からkd+d番目のアクセスの中で、プログラムが同一のブロックにアクセスする場合、ダミーの情報が格納されているブロックに擬似的にアクセスする。このため、次式が成立する。
kd+1≠…≠akd+d
また、ORAM上の秘密情報の保護手法に関して、安全性の指標を算出するために、アクセスパターンを利用して秘密情報を復元する攻撃手法を、以下のように仮定する。
プログラムRは、t個の要素からなる秘密情報S={S,…S}を取り扱う。プログラムRは、一連のメモリアクセスにおけるある一部の区間[kd+1,kd+d]において、メモリの同じブロックにはアクセスしない。プログラムRは、区間[kd+1,kd+d]において秘密情報Sの全ての要素にアクセスする。
攻撃者は、プログラムRにおける区間[kd+1,kd+d]の実行位置を知っているものとする。攻撃者は、プログラムRが実行されたときのアクセスパターンA(R)から、秘密情報Sの全ての要素を推定することを目的とする。
攻撃は、以下のステップ1〜4のアルゴリズムで実行されるものとする。
(ステップ1)
攻撃者は、プログラムRを実行し、アクセスパターンA(R)を得る。
(ステップ2)
攻撃者は、A(R)のうち、区間[kd+1,kd+d]に相当する部分的なアクセスパターン(akd+1,…,akd+d)を観測する。これらのうち、t回のアクセスが1番目からm番目のブロックに対するものであり、かつ、d−t回のアクセスがm+1番目からm+d番目のブロックに対するものである場合(攻撃条件)、攻撃者は、1番目からm番目のブロックにアクセスしたt回のアクセスの位置を参照し、該当するブロックに格納されている情報を抽出する。
(ステップ3)
攻撃者は、ステップ2で抽出したt個の情報の全てが秘密情報の要素のいずれかに該当するか否かを判定する。秘密情報に該当する場合、攻撃者は、攻撃に成功し目的を達成したことになる。ただし、判定の回数の上限をnとする。
(ステップ4)
攻撃に失敗した場合、攻撃者は、攻撃に成功するまでステップ1からステップ3までの処理を繰り返す。
次に、前述の攻撃に対する安全性指標、及び所定の安全性を持つ保護手法について説明する。
本実施形態では、攻撃者がプログラムRを実行できる回数に制限を加えることで攻撃の成功確率の上昇を抑制する。この実行回数の上限をτとする。
プログラムRをτ回実行して判定をτu<n回行った場合の攻撃成功確率は、次式で表される。
=1−[1−(1/)]τu
ここで、uは、プログラムRをτ回実行したときに、前述した攻撃のステップ2で攻撃条件に合うパターンが出現する確率であり、次式で求められる。
u=(N−d)!t!(d−t)!d−t/N!
τが小さいほど攻撃成功確率は小さくなるが、実行回数が制限されると利便性に影響が出る場合がある。ここで、比較対象として、アクセスパターンを利用せずにメモリのみから秘密情報を復元する単純な攻撃を考える。攻撃者は、メモリの1番目からN番目のブロックからt個のブロックをランダムに選択し、各ブロックに入っている情報を抽出する。これらt個の情報の全てが秘密情報の要素であれば攻撃成功となる。
t個の情報が秘密情報の要素であるか否かの判定をn回行った場合の攻撃成功確率Pは、次式で表される。
=1−[1−(1/)]
本実施形態の保護手法では、τを次の条件式を満たすように設定することで、一定の安全性が確保され、攻撃に耐性を持つORAMが構築される。
≦P
⇔τ≦log[1−(1/)]/log[1−(1/)]
本実施形態の保護手法は、メモリの秘密情報にアクセスするためのプログラム自体に実装され、コンピュータ(保護装置)により実行される。
図1は、本実施形態に係る保護装置1の機能構成を示す図である。
保護装置1は、制御部11(例えば、CPU)と記憶部12とを備えた情報処理装置(コンピュータ)である。制御部11は、記憶部12に格納されたアクセスプログラムを読み込み実行する。
制御部11は、アクセスプログラムの実行回数を記録する記録部111と、実行回数が上限を超えた場合にアクセスプログラムの実行を制限する制限部112とを備える。
図2は、本実施形態に係るアクセスプログラムに実装される保護手法の第1の例を示すフローチャートである。
ステップS1において、制御部11は、アクセスプログラムの実行が指示された際に、記録部111により記録されている実行回数をカウントアップして、今回までの実行回数を取得する。
ステップS2において、制御部11(制限部112)は、実行回数が上限τを超えたか否かを判定する。この判定がYESの場合、アクセスプログラムは終了し、判定がNOの場合、処理はステップS3に移る。
ステップS3において、制御部11(記録部111)は、更新された実行回数を記録する。
ステップS4において、制御部11は、アクセスプログラムの実行による秘密情報へのアクセスを許可し、メイン処理を実行する。
なお、ステップS2において実行を制限(拒否)した場合、制御部11は、アクセスプログラムを実行できないことを示すエラー出力、及び秘密情報へアクセスするプログラム区間の更新を促す出力を行ってもよい。
ここで、プログラム区間の更新とは、例えば、プログラム中で秘密情報へアクセスするステップの位置(プログラム区間)を移動することである。
図3は、本実施形態に係るアクセスプログラムに実装される保護手法の第2の例を示すフローチャートである。
ステップS11において、制御部11は、アクセスプログラムの実行が指示された際に、記録部111により記録されている実行回数をカウントアップして、今回までの実行回数を取得する。
ステップS12において、制御部11(制限部112)は、実行回数が上限τを超えたか否かを判定する。この判定がYESの場合、処理はステップS13に移り、判定がNOの場合、処理はステップS15に移る。
ステップS13において、制御部11(制限部112)は、アクセスプログラムにおける秘密情報へのアクセス処理のステップを移動する。例えば、プログラムの実行順に関わる外部記憶パラメータ等を更新する。
ステップS14において、制御部11(記録部111)は、実行回数を初期化(1に更新)する。
ステップS15において、制御部11(記録部111)は、更新された実行回数を記録する。
ステップS16において、制御部11は、アクセスプログラムの実行による秘密情報へのアクセスを許可し、メイン処理を実行する。
本実施形態の保護手法は、メモリの秘密情報にアクセスするためのプログラム自体に実装されるものとして説明したが、本保護手法は、保護装置1がアクセスプログラムとは別の制御プログラムを実行することにより実現してもよい。
例えば、制御プログラムを実行する制御部11は、制限対象のアクセスプログラムを終了させた後、更新してもよい。
[第2実施形態]
以下、本発明の第2実施形態について説明する。
本実施形態では、第1実施形態のアクセスプログラムにおける実行回数の上限を決定するための最適化装置を提供する。
図4は、本実施形態に係る最適化装置2の機能構成を示す図である。
最適化装置2は、制御部21(例えば、CPU)と、記憶部22と、入力部23と、出力部24とを備えた情報処理装置(コンピュータ)である。
制御部21は、記憶部22に格納された最適化プログラムを読み込み実行することにより、決定部211として機能し、アクセスプログラムの実行回数の上限τを決定する。
入力部23は、ユーザから、ORAMのブロック構成等のパラメータ(例えば、前述のパラメータN,m,d,n,t等)を受け付け、決定部211に提供する。
出力部24は、決定部211により決定された実行回数の上限τを出力する。
なお、制御部21(決定部211)は、制限対象であるアクセスプログラム自体を入力とし、決定した実行回数の上限τを埋め込んで更新したアクセスプログラムを出力してもよい。
以上の実施形態によれば、同一のプログラムを複数回実行できる状況を想定し、同一のプログラムによるメモリへの複数のアクセスパターンを利用して秘密情報を復元する攻撃を仮定する。そして、評価指標として攻撃成功確率を導入し、この評価指標に基づき、同一のプログラムを実行できる回数に制限を加えることにより、攻撃に対して耐性のある所定の安全性が確保される。
また、実行回数に制限を加えると、プログラムを通常に利用するための利便性が損なわれる可能性があるため、アクセスパターンを用いない基準となるランダムな攻撃と同等以上の安全性を確保できる回数を上限とすることにより、利便性を損なうことなく、十分な安全性を確保できる。
さらに、実行回数が上限に達した場合に、アクセスプログラムを更新し、秘密情報にアクセスする区間を変更することにより、実行回数をリセットでき、アクセスプログラムの実行が妨げられないため、利便性が向上する。
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限るものではない。また、本実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本実施形態に記載されたものに限定されるものではない。
保護装置1による保護方法、及び最適化装置2による最適化方法は、ソフトウェアにより実現される。ソフトウェアによって実現される場合には、このソフトウェアを構成するプログラムが、情報処理装置(コンピュータ)にインストールされる。また、これらのプログラムは、CD−ROMのようなリムーバブルメディアに記録されてユーザに配布されてもよいし、ネットワークを介してユーザのコンピュータにダウンロードされることにより配布されてもよい。さらに、これらのプログラムは、ダウンロードされることなくネットワークを介したWebサービスとしてユーザのコンピュータに提供されてもよい。
1 保護装置
2 最適化装置
11 制御部
12 記憶部
21 制御部
22 記憶部
23 入力部
24 出力部
111 記録部
112 制限部
211 決定部

Claims (9)

  1. メモリに格納された秘密情報へのアクセスを伴う処理をコンピュータに実行させるためのプログラムであって、
    実行回数を記録させる記録ステップと、
    前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行を制限させる制限ステップと、を含むアクセスプログラム。
  2. 前記所定値は、前記メモリからランダムに選択した情報から前記秘密情報の復元を試行する第2の攻撃を上限回数まで繰り返した場合に、当該第2の攻撃が成功する確率である請求項1に記載のアクセスプログラム。
  3. 前記メモリは、既定のアクセス回数毎にダミーブロックを含むブロック位置をシャッフルし、前記既定のアクセス回数の間、同一のブロックへのアクセスをしないORAM(Oblivious RAM)である請求項1又は請求項2に記載のアクセスプログラム。
  4. 前記第1の攻撃の成功確率は、攻撃者が前記アクセスパターンのうち、前記秘密情報の要素数に等しい数のアクセス位置のみが特定のブロック範囲に含まれる場合に前記第1の攻撃を行うと仮定した確率である請求項1から請求項3のいずれかに記載のアクセスプログラム。
  5. 前記制限ステップにおいて、前記コンピュータに、前記制限させる実行回数毎に、前記秘密情報へのアクセスを伴うプログラム区間を更新させる請求項1から請求項4のいずれかに記載のアクセスプログラム。
  6. メモリに格納された秘密情報へのアクセスを伴うプログラムを実行する秘密情報の保護装置であって、
    実行回数を記録する記録部と、
    前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行を制限する制限部と、を備える保護装置。
  7. メモリに格納された秘密情報へのアクセスを伴うプログラムの実行制限回数を決定する最適化装置であって、
    前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記プログラムの実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行回数を、前記実行制限回数として決定する決定部を備える最適化装置。
  8. メモリに格納された秘密情報へのアクセスを伴うプログラムの実行制限回数を決定する最適化方法であって、
    コンピュータが前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記プログラムの実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行回数を、前記実行制限回数として決定する最適化方法。
  9. メモリに格納された秘密情報へのアクセスを伴うプログラムの実行制限回数を決定するための最適化プログラムであって、
    コンピュータに、前記メモリに対するアクセスパターンにより前記秘密情報の復元を試行する第1の攻撃に関して、前記プログラムの実行回数に応じた当該第1の攻撃の成功確率が所定値以上となる場合の実行回数を、前記実行制限回数として決定させるための最適化プログラム。
JP2017113740A 2017-06-08 2017-06-08 アクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラム Active JP6809986B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017113740A JP6809986B2 (ja) 2017-06-08 2017-06-08 アクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017113740A JP6809986B2 (ja) 2017-06-08 2017-06-08 アクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラム

Publications (2)

Publication Number Publication Date
JP2018207409A JP2018207409A (ja) 2018-12-27
JP6809986B2 true JP6809986B2 (ja) 2021-01-06

Family

ID=64958503

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017113740A Active JP6809986B2 (ja) 2017-06-08 2017-06-08 アクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラム

Country Status (1)

Country Link
JP (1) JP6809986B2 (ja)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5865222B2 (ja) * 2012-09-27 2016-02-17 Kddi株式会社 記憶装置、アクセスパターンの秘匿方法およびプログラム
US9495111B2 (en) * 2014-10-10 2016-11-15 The Boeing Company System and method for reducing information leakage from memory
JP6632796B2 (ja) * 2014-10-14 2020-01-22 Kddi株式会社 データベース評価装置、方法及びプログラム、並びにデータベース分割装置、方法及びプログラム

Also Published As

Publication number Publication date
JP2018207409A (ja) 2018-12-27

Similar Documents

Publication Publication Date Title
RU2486588C1 (ru) Система и способ эффективного лечения компьютера от вредоносных программ и последствий их работы
US8516596B2 (en) Cyber attack analysis
Carlini et al. An evaluation of the google chrome extension security architecture
JP5049288B2 (ja) 改竄検出システム、改竄検出方法、改竄検出プログラム、記録媒体、集積回路、認証情報生成装置及び改竄検出装置
US8006078B2 (en) Central processing unit having branch instruction verification unit for secure program execution
US8438402B2 (en) Electronic terminal, control method, computer program and integrated circuit
US20140157415A1 (en) Information security analysis using game theory and simulation
US10637883B1 (en) Systems and methods for determining optimal remediation recommendations in penetration testing
US10628562B2 (en) Method for protecting a computer program from being influenced, and computer system
US20110088095A1 (en) Anti-Tamper System Employing Automated Analysis
CN104834840B (zh) 基于映射漂移技术的密码保护方法
EP2045748B1 (en) Anti-tamper techniques
Parizi et al. Security in online games: Current implementations and challenges
KR102316404B1 (ko) 확장자 랜덤화를 통한 랜섬웨어 피해 방어 방법, 이를 수행하기 위한 기록 매체 및 장치
Anderson et al. Parameterizing moving target defenses
US9081962B2 (en) Anti-tamper techniques
JP6809986B2 (ja) アクセスプログラム、保護装置、最適化装置、最適化方法及び最適化プログラム
CN110708342B (zh) 恶意攻击对信息物理电力系统影响的量化方法及系统
JP6594277B2 (ja) 計算機システム、アクセス制御方法、及び計算機
CN117857221B (zh) 一种针对远程服务平台的权限管理方法及系统
Rodwald Attack on Students’ Passwords, Findings and Recommendations
JP2018136904A (ja) ウイルス駆除システム
Elsayed et al. Integrating Security in Cloud Application Development Cycle
JP6775471B2 (ja) 安全性評価装置、安全性評価方法及び安全性評価プログラム
Butler Improving security technology selections with decision theory

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190723

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200929

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201210

R150 Certificate of patent or registration of utility model

Ref document number: 6809986

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150