JP7313395B2 - 情報処理装置とその制御方法、及びプログラム - Google Patents

情報処理装置とその制御方法、及びプログラム Download PDF

Info

Publication number
JP7313395B2
JP7313395B2 JP2021072073A JP2021072073A JP7313395B2 JP 7313395 B2 JP7313395 B2 JP 7313395B2 JP 2021072073 A JP2021072073 A JP 2021072073A JP 2021072073 A JP2021072073 A JP 2021072073A JP 7313395 B2 JP7313395 B2 JP 7313395B2
Authority
JP
Japan
Prior art keywords
information processing
storage means
processing apparatus
information
boot program
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
JP2021072073A
Other languages
English (en)
Other versions
JP2022166687A (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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2021072073A priority Critical patent/JP7313395B2/ja
Priority to US17/718,572 priority patent/US12039052B2/en
Priority to CN202210409265.1A priority patent/CN115221499A/zh
Publication of JP2022166687A publication Critical patent/JP2022166687A/ja
Application granted granted Critical
Publication of JP7313395B2 publication Critical patent/JP7313395B2/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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • 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/602Providing cryptographic facilities or services
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • 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/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Description

本発明は、情報処理装置とその制御方法、及びプログラムに関する
OSが利用するための周辺デバイスのベースアドレスや割り当てサイズは、各周辺デバイスと周辺デバイスが実装されるボードの仕様によって決定される。例えば、ARM向けLinux(登録商標)カーネルにおいて、デバイスツリーと呼ばれるハードウェア情報の記述方法が規定されており、デバイスツリーをブートプログラムがOSに通知するように構成している。
近年、情報処理装置を含むファームウェアを内蔵した装置では、攻撃者からファームウェア改ざんの攻撃を受けるリスクが高まっている。このため、近年の情報処理装置では、起動時にファームウェアの正当性を検証し、ファームウェアが正当でないと判定された場合は、情報処理装置を動作させないようにする機能を備えたものがある。
起動時に、ハードウェア構成情報であるデバイスツリーの正当性を検証することで、「悪意のあるプログラム」と「悪意を持って装着されたハードウェア」の組合せによる攻撃を防止しなければならない。
デバイスツリーには様々なハードウェア構成情報が記載されている。ハードウェア構成情報には、デバイスの個体ごとに共通な情報と固有な情報とがある。CPU情報やバス接続情報、クロック情報などは共通なハードウェア構成情報であるが、MACアドレスなどはデバイスの個体ごとに固有な情報である。そのため、デバイスの個体ごとに異なるデバイスツリーを所持することになり、情報の正当性の検証に必要な署名を、デバイス個体ごと作成する必要がある。
特許文献1は、情報処理装置に入力したセキュリティポリシーを、その情報処理装置が搭載するセキュリティ機能で順守できない場合に、そのことをセキュリティ管理者に通知することを記載している。また特許文献2は、多様な構成を取り得る情報処理装置において、取り得る構成に関してPCR(Platform Configuration Regsister)に登録される完全性保証情報の期待値をユーザの手動操作ではなく自動的に取得することを記載している。更に特許文献3は、情報処理装置が起動する際に使用する第二の起動情報が格納された第二の起動デバイスを識別可能な第二の個体情報を記憶しておく。そして情報処理装置が、第一の起動デバイスに記憶された第一の起動情報を使用して起動する際、その第一の起動デバイスから取得した第一の個体情報が記憶されていない場合に、その情報処理装置の起動を中止することを記載している。
特開2016-206861号公報 特開2019-133220号公報 特開2019-153050号公報
上述の情報の正当性の検証に必要な署名をデバイス個体ごと作成するためには、デバイス個体ごとに異なる電子署名を作成する必要がある。例えば、生産工程においてネットワークチップを基板に実装し、MACアドレスが決定してから各デバイス個体のデバイスツリーへMACアドレス情報を記載して、デバイスツリーの署名作成を行わなければならない。しかし、生産工程で電子署名を作成する場合、秘密鍵を海外などの生産拠点に渡す必要がある。生産拠点を複数持つ場合、秘密鍵をそれら複数の生産拠点に提供しなければならず、その提供する経路が複数になることによる漏洩リスクの上昇を伴うため、秘密鍵の提供はできる限り避けるのが望ましい。
本発明の目的は、上記従来技術の課題の少なくとも一つを解決することにある。
本発明の目的は、開発拠点のみで扱って、生産拠点での扱いを不要にすることで、秘密鍵が漏洩するリスクを避けることができる技術を提供することにある。
上記目的を達成するために本発明の一態様に係る情報処理装置は以下のような構成を備える。即ち、
情報処理装置であって、
ブートプログラムを記憶する第1記憶手段と、
前記情報処理装置のハードウェア構成情報を記憶する第2記憶手段と、
揮発性の第3記憶手段と、
起動時、前記ブートプログラムにより前記第2記憶手段に記憶された前記ハードウェア構成情報の正当性を検証する第1検証手段と、
前記第1検証手段によって正当性が検証された前記ハードウェア構成情報を前記第3記憶手段に記憶させる制御手段と、を有し、
前記制御手段は、前記ブートプログラムにより、前記第記憶手段に記憶された前記ハードウェア構成情報に前記情報処理装置の個体に依存する固有情報を追記することを特徴とする。
本発明によれば、秘密鍵を開発拠点のみで扱って、生産拠点での扱いを不要にすることで、秘密鍵が漏洩するリスクを避けられるという効果がある。
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
添付図面は明細書に含まれ、その一部を構成し、本発明の実施形態を示し、その記述と共に本発明の原理を説明するために用いられる。
本発明の実施形態に係る情報処理装置の主要部の構成を示すブロック図。 実施形態に係る情報処理装置の起動処理の概要を説明するフローチャート。 実施形態に係る情報処理装置の検証処理の概要を説明するフローチャート。
以下、添付図面を参照して本発明の実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これら複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一もしくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
図1は、本発明の実施形態に係る情報処理装置の主要部の構成を示すブロック図である。
この情報処理装置は、CPU(Central Processing Unit)10、セキュリティチップ11、ブートROM(Read Only Memory)12、ストレージ13、RAM(Random Access Memory)14を含んでいる。CPU10は、種々のプログラムを実行するための中央処理演算装置であり、この情報処理装置全体を制御する。セキュリティチップ11は、電子署名を検証するための鍵情報を内部に保持しており、起動時にブートプログラムの電子署名1211を検証する機能を備える。ブートROM12は読み取り専用記憶装置であり、情報処理装置が起動する際に利用するためのブートプログラム121と、その電子署名1211を格納している。
ストレージ13は、カーネル131とその電子署名1311、デバイスツリー132とその電子署名1321を格納した不揮発記憶領域を有している。ストレージ13は、例えば、eMMC(embedded MMC)やハードディスク、ソリッドステートドライブ等によって実現できる。カーネル131は、各種リソース制御やスケジューリング等を行う。デバイスツリー132は、カーネル131が利用するハードウェアのプロパティ情報のことである。電子署名1211,1311,1321は、それぞれブートプログラム121、カーネル131、デバイスツリー132から算出されたダイジェストに対して、鍵生成アルゴリズムで生成した秘密鍵を用いて、公開鍵暗号アルゴリズムによって暗号化したデータである。ダイジェストの生成については、例えば、SHA1アルゴリズムなどを適用する。RAM14は、CPU10が各種プログラムを動作する際に一時的な情報を格納するためのメモリである。
図2は、実施形態に係る情報処理装置の起動処理の概要を説明するフローチャートである。尚、このフローチャートで示す処理は、CPU10がRAM14に展開したプログラムを実行することにより達成される。
情報処理装置に電源が投入されるとまずS201でCPU10は、セキュリティチップ11を起動する。セキュリティチップ11が起動すると、電子署名1211を用いて、ブートROM12に格納されているブートプログラム121の検証処理を行う。次にS202に進みCPU10は、この検証処理によってブートプログラム121が改ざんされているかどうか判定する。ブートプログラム121が改ざんされていなくて正当であると判定するとS203に処理を進める。一方、S202で、ブートプログラム121が改ざんされていて正常でないと判定するとCPU10はS210に処理を進める。S210でCPU10は、起動不良のエラー報知を行い、以降の処理を実行せず、情報処理装置の起動を停止する。
一方、S203でCPU10は、ブートプログラム121をRAM14にロードして、そのブートプログラム121を起動する。そしてS204でCPU10は、ブートプログラム121により、電子署名1311及び1321を用いて、ストレージ13に格納されているカーネル131、デバイスツリー132の検証処理を行う。そしてS205に進みCPU10は、その検証処理によってカーネル131、デバイスツリー132が正当であるか、即ち、改ざんされているかどうか判定する。カーネル131、デバイスツリー132が改ざんされていなくて正常であると判定するとS206に処理を進め、そうでないときは前述のS210に処理を進める。
S206でブートプログラム121を実行しているCPU10は、正常であると判定したカーネル131、デバイスツリー132をストレージ13からRAM14にロードする。そしてS207に進みブートプログラム121を実行しているCPU10は、ブートROM12からデバイスの個体に依存する固有情報122を取得する。ここで、デバイスの個体に依存する固有情報122は、例えばMACアドレスなどであり、生産工程でブートROM12に書き込まれている。そしてS208に進みブートプログラム121を実行しているCPU10は、RAM14にロードされたデバイスツリー132に、S207で取得したデバイスの個体に依存する固有情報122を追記する。そしてS209に進みブートプログラム121を実行しているCPU10は、RAM14にロードされたカーネル131の実行を開始する。またS210では、ブートプログラム121、カーネル131、デバイスツリー132が正常でないと判定した場合、起動不良のエラー報知を行い、以降の処理を実行せず、情報処理装置の起動を停止する。
図3は、実施形態に係る情報処理装置の検証処理の概要を説明するフローチャートである。このフローチャートは、図2のS201やS204で行われる改ざんの有無を判定する処理の詳細である。
まずS301でCPU10は、電子署名1211,1311,1321を公開鍵によって復号して第1のダイジェストを算出する。この公開鍵による復号処理は、例えば楕円暗号やRSA暗号など、種々の公開鍵暗号技術の復号アルゴリズムを適用できる。次にS302に進みCPU10は、電子署名以外のバイナリ領域(電子署名1211に対するブートプログラム121、電子署名1311に対応するカーネル131、電子署名1321に対応するデバイスツリー132)に対して、第2のダイジェストを算出する。この第2のダイジェストを生成するために用いられるアルゴリズムは、電子署名1211,1311,1321を生成するときに用いたものと同じものを適用する。次にS303に進みCPU10は、S301で求めた第1のダイジェストと、S302で求めた第2のダイジェストとを比較する。そしてこれらが一致すると後続の判定処理(S202,S205)で改ざん無しと判定される。
以上説明したように実施形態に係る情報処理装置によれば、デバイスの個体に依存するハードウェア構成情報を回避して、デバイス共通のハードウェア構成情報にすることで、電子署名をデバイス個体ごとに作成する必要がなくなる。これによって、各生産拠点への秘密鍵の譲渡が不要となり、鍵情報の漏洩リスクを避けることが可能となる。
尚、本実施形態は、本発明を説明するための1例であり、この構成に限定されるものではない。例えば、本実施形態ではARM向けLinux(登録商標)カーネルに利用されるデバイスツリー132を例にとって説明したが、コントローラボードに搭載されるメモリ領域のOSへの伝達手段として、デバイスツリー132ではない手段を用いても構わない。例えば、ACPIテーブル、E820マップ等を用いる構成であってもよい。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は上記実施形態に制限されるものではなく、本発明の精神及び範囲から逸脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
10…CPU、11…セキュリティチップ、12…ブートROM、13…ストレージ、14…RAM、121…ブートプログラム、122…MACアドレス、131…カーネル、132…デバイスツリー、1211,1311,1321…電子署名

Claims (13)

  1. 情報処理装置であって、
    ブートプログラムを記憶する第1記憶手段と、
    前記情報処理装置のハードウェア構成情報を記憶する第2記憶手段と、
    揮発性の第3記憶手段と、
    起動時、前記ブートプログラムにより前記第2記憶手段に記憶された前記ハードウェア構成情報の正当性を検証する第1検証手段と、
    前記第1検証手段によって正当性が検証された前記ハードウェア構成情報を前記第3記憶手段に記憶させる制御手段と、を有し、
    前記制御手段は、前記ブートプログラムにより、前記第記憶手段に記憶された前記ハードウェア構成情報に前記情報処理装置の個体に依存する固有情報を追記することを特徴とする情報処理装置。
  2. 前記第1記憶手段に記憶されている前記ブートプログラムの正当性を検証する第2検証手段を、更に有することを特徴とする請求項1に記載の情報処理装置。
  3. 前記第2検証手段は、セキュリティチップにより実現されることを特徴とする請求項2に記載の情報処理装置。
  4. 前記第1記憶手段は、読み取り専用であることを特徴とする請求項1に記載の情報処理装置。
  5. 前記固有情報を記憶する読み取り専用の記憶手段を、更に有することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記固有情報は、前記情報処理装置の生産工程で前記読み取り専用の記憶手段に記憶されることを特徴とする請求項5に記載の情報処理装置。
  7. 前記第1検証手段は、対応する電子署名を用いて、前記第2記憶手段に記憶されているカーネル及びデバイスツリーの検証処理を行うことを特徴とする請求項1乃至6のいずれか1項に記載の情報処理装置。
  8. 前記制御手段は、前記デバイスツリーに前記固有情報を追記することを特徴とする請求項7に記載の情報処理装置。
  9. 前記第2記憶手段は、読み書き可能な不揮発の記憶手段であることを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. 前記固有情報は、MACアドレスを含むことを特徴とする請求項1乃至9のいずれか1項に記載の情報処理装置。
  11. 前記第3記憶手段は、RAMであることを特徴とする請求項1乃至10のいずれか1項に記載の情報処理装置。
  12. ブートプログラムを記憶する第1記憶手段と、情報処理装置のハードウェア構成情報を記憶する第2記憶手段と、揮発性の第3記憶手段とを有する情報処理装置を制御する制御方法であって、
    起動時、前記ブートプログラムにより前記第2記憶手段に記憶された前記ハードウェア構成情報の正当性を検証する検証工程と、
    前記検証工程で正当性が検証された前記ハードウェア構成情報を前記第3記憶手段に記憶させる制御工程と、
    記ブートプログラムにより、前記第記憶手段に記憶されたハードウェア構成情報に前記情報処理装置の個体に依存する固有情報を追記する工程と、
    を有することを特徴とする制御方法。
  13. コンピュータに、請求項12に記載の制御方法の各工程のすべてを実行させるためのプログラム。
JP2021072073A 2021-04-21 2021-04-21 情報処理装置とその制御方法、及びプログラム Active JP7313395B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021072073A JP7313395B2 (ja) 2021-04-21 2021-04-21 情報処理装置とその制御方法、及びプログラム
US17/718,572 US12039052B2 (en) 2021-04-21 2022-04-12 Information processing apparatus, method of controlling the same, and storage medium
CN202210409265.1A CN115221499A (zh) 2021-04-21 2022-04-19 信息处理装置及其控制方法和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021072073A JP7313395B2 (ja) 2021-04-21 2021-04-21 情報処理装置とその制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2022166687A JP2022166687A (ja) 2022-11-02
JP7313395B2 true JP7313395B2 (ja) 2023-07-24

Family

ID=83606565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021072073A Active JP7313395B2 (ja) 2021-04-21 2021-04-21 情報処理装置とその制御方法、及びプログラム

Country Status (2)

Country Link
JP (1) JP7313395B2 (ja)
CN (1) CN115221499A (ja)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012009938A (ja) 2010-06-22 2012-01-12 Toshiba Tec Corp 情報処理装置及びプログラム
JP2014098951A (ja) 2012-11-13 2014-05-29 Kddi Corp 端末装置、完全性検証システム、およびプログラム
JP2015210687A (ja) 2014-04-28 2015-11-24 株式会社コンテック ソフトウェアの保護方法およびこの方法を実施する機器
JP2019215754A (ja) 2018-06-13 2019-12-19 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム
US20200242255A1 (en) 2019-01-29 2020-07-30 Johnson Controls Technology Company Systems and methods for monitoring attacks to devices
JP2020140561A (ja) 2019-02-28 2020-09-03 キヤノン株式会社 情報処理装置、情報処理方法
JP2021047620A (ja) 2019-09-18 2021-03-25 キヤノン株式会社 情報処理装置、ソフトウェア管理方法及びプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012009938A (ja) 2010-06-22 2012-01-12 Toshiba Tec Corp 情報処理装置及びプログラム
JP2014098951A (ja) 2012-11-13 2014-05-29 Kddi Corp 端末装置、完全性検証システム、およびプログラム
JP2015210687A (ja) 2014-04-28 2015-11-24 株式会社コンテック ソフトウェアの保護方法およびこの方法を実施する機器
JP2019215754A (ja) 2018-06-13 2019-12-19 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム
US20200242255A1 (en) 2019-01-29 2020-07-30 Johnson Controls Technology Company Systems and methods for monitoring attacks to devices
JP2020140561A (ja) 2019-02-28 2020-09-03 キヤノン株式会社 情報処理装置、情報処理方法
JP2021047620A (ja) 2019-09-18 2021-03-25 キヤノン株式会社 情報処理装置、ソフトウェア管理方法及びプログラム

Also Published As

Publication number Publication date
CN115221499A (zh) 2022-10-21
US20220342996A1 (en) 2022-10-27
JP2022166687A (ja) 2022-11-02

Similar Documents

Publication Publication Date Title
CN109669734B (zh) 用于启动设备的方法和装置
US5844986A (en) Secure BIOS
US10275598B2 (en) Providing a secure execution mode in a pre-boot environment
JP5390703B2 (ja) 隠れ実行環境における整合性検証及び証明の提供
JP5260081B2 (ja) 情報処理装置及びその制御方法
US8438377B2 (en) Information processing apparatus, method and computer-readable storage medium that encrypts and decrypts data using a value calculated from operating-state data
US20100082960A1 (en) Protected network boot of operating system
US20110289294A1 (en) Information processing apparatus
TWI582632B (zh) 使用多重鑑別碼模組以進入安全計算環境之方法及系統、以及處理器
JP5346608B2 (ja) 情報処理装置およびファイル検証システム
KR20100125371A (ko) 보안 부팅 메커니즘을 포함하는 컴퓨터 시스템
KR20050008847A (ko) 휴면 보호
US11971993B2 (en) Firmware-based secure tenancy transfer
US20210367781A1 (en) Method and system for accelerating verification procedure for image file
US20230195473A1 (en) Peripheral component interconnect express device startup method and apparatus, and storage medium
JP6930884B2 (ja) Bios管理装置、bios管理システム、bios管理方法、及び、bios管理プログラム
JP7313395B2 (ja) 情報処理装置とその制御方法、及びプログラム
US12039052B2 (en) Information processing apparatus, method of controlling the same, and storage medium
CN108595981B (zh) 加密安卓系统的方法
CN116956267A (zh) 平台证书的基于管理控制器的验证

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220412

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230308

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230502

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230711

R151 Written notification of patent or utility model registration

Ref document number: 7313395

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151