JP2023527349A - スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバ - Google Patents

スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバ Download PDF

Info

Publication number
JP2023527349A
JP2023527349A JP2022572460A JP2022572460A JP2023527349A JP 2023527349 A JP2023527349 A JP 2023527349A JP 2022572460 A JP2022572460 A JP 2022572460A JP 2022572460 A JP2022572460 A JP 2022572460A JP 2023527349 A JP2023527349 A JP 2023527349A
Authority
JP
Japan
Prior art keywords
virtual code
code
authentication
authentication virtual
verification
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.)
Granted
Application number
JP2022572460A
Other languages
English (en)
Other versions
JP7509923B2 (ja
Inventor
フン ユ、チャン
Original Assignee
センストーン インコーポレイテッド
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
Priority claimed from KR1020220021278A external-priority patent/KR102479730B1/ko
Application filed by センストーン インコーポレイテッド filed Critical センストーン インコーポレイテッド
Priority claimed from PCT/KR2022/002954 external-priority patent/WO2022186605A1/ko
Publication of JP2023527349A publication Critical patent/JP2023527349A/ja
Application granted granted Critical
Publication of JP7509923B2 publication Critical patent/JP7509923B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
    • 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/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Finance (AREA)
  • Software Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバが提供される。前記方法は、ICチップが内蔵されたカードタギング時に、前記カードに時間データを送信するステップ、前記時間データに基づいて生成された1次認証用仮想コードを前記カードから受信するステップ、前記1次認証用仮想コードを用いて2次認証用仮想コードを生成するステップと、前記1次認証用仮想コードと前記2次認証用仮想コードの内、少なくとも1つをサーバに送信するステップと、前記サーバが前記少なくとも1つの検証を実行するように要請するステップを含む。

Description

本発明は、スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバに関する。
コードフォームデータは多くの分野で用いられている。決済時に用いられるカード番号、口座番号だけでなく、ユーザ識別のためのIPIN番号、住民登録番号などがコード形態データ認証用仮想コード生成装置である。
しかし、このようなコードデータを利用する過程で流出する事故が多く発生する。カード番号の場合、カード表面に実際のカード番号がそのまま記載されており、他人に視覚的に流出し、磁気を利用した決済時にカード番号がそのままPOS装置に伝達されながら流出する。
実際のコードがそのまま流出しないように仮想コードを利用しようとする試みが多かったが、仮想コードに対応する実際のコードを探索するためにユーザを識別するためのデータが必要であった。
しかし、OTP(One Time Password)の場合、別途のOTP生成装置を必要とし、不便を伴い、特にユーザ端末の場合、OTP生成に用いられるシードデータの流出によりセキュリティ上の脆弱性が存在する。
したがって、多くのユーザが所持しているカードのカードデータに基づいてユーザ認証に必要な仮想セキュリティコードを生成するもののような、OTPコードを生成するが、別途のOTP生成装置を必要とせず、同時にシードデータが流出しないようにしてセキュリティを高める方策が必要である。
本発明が解決しようとする課題は、スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバを提供することにある。
本発明が解決しようとする課題は、以上で述べた課題に限定されず、言及されていない他の課題は、以下の記載から通常の技術者に明確に理解することができる。
前記課題を解決するための本発明の一態様による認証用仮想コード生成装置によって実行される認証用仮想コード生成方法は、ICチップが内蔵されたカードタギング(Tagging)時に、前記カードに時間データを送信するステップ、前記時間データに基づいて生成された1次認証用仮想コードを前記カードから受信するステップ、前記1次認証用仮想コードを用いて2次認証用仮想コードを生成するステップ、前記1次認証用仮想コード及び前記2次認証仮想コードの内、少なくとも1つをサーバに送信するステップ及び前記サーバが前記少なくとも1つの検証を実行するように要請するステップを含む。
本発明において、前記1次認証用仮想コードは、複数のコードを含み、前記複数のコードの内、第1コードは、前記時間データ及び第1OTPに基づいて生成され、前記複数のコードの内、第2コードは、コードは、前記第1コード内で前記カードの識別情報である第1UID(user identification)を除外して生成することができる。
本発明において、前記2次認証用仮想コードを生成するステップは、前記第1コードから前記認証用仮想コード生成装置の識別情報である第2UIDを除外して第3コードを生成し、前記第1コード、前記第2コードと前記第3コードとを組み合わせて前記2次認証用仮想コードを生成することができる。
本発明において、前記カードは、前記第1コードと前記第2コードに基づいて検証が行われ、前記認証用仮想コード生成装置は、前記第1コードと前記第3コードに基づいて検証が行われる。
本発明において、前記2次認証用仮想コードを生成するステップは、前記1次認証用
仮想コードに基づいて第2OTPを生成し、前記第2OTP及び前記認証用仮想コード生成装置の識別情報であることを特徴とする。2UIDに基づいて前記2次認証用仮想コードを生成することができる。
本発明において、前記2次認証用仮想コードは、前記2次認証用仮想コードに含まれた前記第2OTPと検証用第2OTPとの比較を通じて検証され、前記検証用第2OTPは、前記第2OTP生成時用いられたシードデータと同じシードデータに基づいて前記サーバによって生成されたものであり得る。
本発明において、前記1次認証用仮想コードは、オフライン出入コントロール.及びオンラインログイン時のユーザ認証用に用いることができる。
本発明において、前記2次認証用仮想コードは、金融決済時にユーザ認証用に用いることができる。
本発明において、前記時間データは、組み合わせた形態であり得APDU(Application Protocol Data Unit)命令語と結合された形態で有り得る。
前述の課題を解決するための本発明の他の態様に係るスマートカード装置は、カードタギングを介して認証用仮想コード生成装置から時間データを受信するNFCモジュール及び前記受信された時間データに基づいて1次認証用仮想コードを生成するICモジュールを含み、前記1次認証用仮想コードは自ら送信されてユーザ認証に用いられるか、2次認証用仮想コード生成に用いられるものであり、前記2次認証用仮想コードは、前記1次認証用仮想コードを用いて前記認証用仮想コード生成装置により生成されるものであり、前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも1つは、サーバにより検証が行われるよう前記認証用仮想コード生成装置によって前記サーバに送信される。
前述の課題を解決するための本発明のさらに他の態様による認証用仮想コード生成装置は、ICチップが内蔵されたカードタギング時に、前記カードに時間データを送信し、前記時間データに基づいて生成された1次認証用仮想コードを前記カードから認証認証用仮想コードを受信する通信部、前記1次認証用仮想コードを用いて2次認証用仮想コードを生成するコード生成部、と前記通信部を介して前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも1つを、サーバに送信し、前記サーバが前記少なくとも1つの検証を実行するように要請する検証要請部を含む。
前述の課題を解決するための本発明のさらに他の態様によるサーバによって実行される認証用仮想コード検証方法において、認証用仮想コード生成装置から1次認証用仮想コード及び2次認証用仮想コードの内、少なくとも1つを受信するステップと、前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも1つに対した検証を実行するステップを含み、前記2次認証用仮想コードが複数のコードを含む場合、前記検証実行ステップは、前記複数のコードの内、第1コードと第2コードとに基づいてカードの識別情報である第1UID(user identification)を抽出して前記カードの検証を実行し、前記複数のコードの内、前記第1コード及び第3コードに基づいて、前記認証用仮想コード生成装置の識別情報である第2UIDを抽出して、前記認証用仮想コード生成装置の検証を行う。
本発明において、前記2次認証用仮想コードが第2OTP及び前記第2UIDを含む場合、前記検証実行ステップは、前記第2OTP生成時に用いられたシードデータと同じシードデータに基づいて検証用第2OTPを生成し、前記第2次認証用仮想コードに含まれる前記第2OTPと前記検証用第2OTPを比較し、前記第2OTPと前記検証用第2OTPが同一であると前記カード及び前記認証用仮想コード生成装置の検証を完了することができる。
本発明において、前記1次認証用仮想コードが受信された場合、前記検証実行ステップは、第一検証アルゴリズムを用いて前記1次認証用仮想コードに基づいてカードの識別情報である第1UID(user identification)を抽出して前記カードの検証を実行できる。
これに加えて、本発明を実現するための他の方法、他のシステム、及び前記方法を実行するためのコンピュータプログラムを記録するコンピュータ可読記録媒体をさらに提供することができる。
本発明に係れば、カードタギング時に認証用仮想コード生成装置がスマートカード装置に時間データを提供することにより、別途のOTP装置なしでNFC方式に基づいて獲得した時間データを用いてユーザ認証に必要な仮想セキュリティコードを生成できる。
認証用仮想コード生成装置にスマートカード装置をタギングする際、2つの装置間データが送受信される際にそのデータの消臭を防御するため、スマートカード装置で生成された1次認証用仮想コードを再加工して認証用仮想コード生成装置で2次認証用仮想コードを新たに生成することができる。
また、オフライン出入コントロールまたはオンラインログイン状況においては、1次認証用仮想コード検証を通じてユーザ認証を行い、金融決済状況では、1次認証用仮想コードを用いて生成された2次認証用仮想コードの検証を通じてユーザ認証を行うことで、状況によってセキュリティレベルを異なりにすることができる。
また、スマートカード装置がオフライン立ち入り禁止状況と金融決済状況のすべてに適用できるため、金融カード(個人カードまたは法人カード)を会社の出入カードにも拡張して活用することができる。
本発明の効果は前記の効果に限定されず、言及されていない他の効果は以下の記載から通常の技術者に明確に理解され得る。
図1は、本発明に係る認証用仮想コードベースのユーザ認証システムの構成図である。 図2は、本発明に係るスマートカート装置の概略構成図である。 図3は、本発明に係る認証用仮想コード生成装置の概略構成図である。 図4は、本発明に係る認証用仮想コード生成装置によって実行される認証用仮想コード生成方法のフローチャートである。 図5は、本発明に係る時間データを説明するための図である。 図6は、本発明に係る1次認証用仮想コード検証を説明するための図である。 図7は、本発明に係る2次認証用仮想コード検証を説明するための図である。 図8は、本発明に係るスマートカード装置によって実行される認証用仮想コード生成方法のフローチャートである。
本発明の利点及び特徴、それとそれらを達成する方法は、添付の図面と共に詳細に後述されている実施形態を参照することによって明らかになる。しかしながら、本発明は、以下に開示される実施形態に限定されるものではなく互いに異なる、様々な形態で実現することができ、単に本実施形態は、本発明の開示が完全するようにし、本発明が属する技術分野の通常の技術者に本発明のカテゴリーを完全に知らせるために提供されるものであり、本発明は請求項のカテゴリーによって定義されるだけである。
本明細書で用いられた用語は実施形態を説明するためのものであり、本発明を限定することを意図するものではない。本明細書において、単数形は、文句で特に言及しない限り、複数形も含む。本明細書で用いられる「含む(comprises)」及び/または「含む(comprising)」は、言及された構成要素に加えて、1つ以上の他の構成要素の存在または追加を排除しない。明細書全体にわたって同じ図面番号は同じ構成要素を指し、「及び/または」は、言及された構成要素のそれぞれ及び1つ以上のすべての組み合わせを含む。仮に「第1」、「第2」などが様々な構成要素を叙述するために用いられるが、これらの構成要素はこれらの用語によって限定されないことは勿論である。これらの用語は、但し1つの構成要素を他の構成要素と区別するために用いられるものである。したがって、以下で言及される第1構成要素は、本発明の技術的思想内で第2構成要素であり得ることもあることは勿論である。
他の定義がなければ、本明細書で用いられる全ての用語(技術及び科学用語を含む)は、本発明が属する技術分野の通常の技術者に共通的に理解され得る意味で使用され得る。さらに、一般的に用いられる辞書で定義されている用語は、特に明白に定義されていない限り、理想的または過度に解釈されない。
説明の前に、本明細書で用いられる用語の意味を簡単に説明する。しかしながら、用語の説明は本明細書の理解を助けるためのものであり、明示的に本発明を限定する事項として記載しない場合に本発明の技術的思想を限定する意味で使用することではないことに注意すべきである
本明細書において「文字」は、コードを構成する構成要素として、大文字のアルファベット、小文字のアルファベット、数字及び特殊文字などの全部または一部を含む。
本明細書において「コード」とは、文字が羅列された文字列を意味する。
本明細書において、「OTP(One Time Password)」は、ユーザ認証のために一時的に生成され、単位時間ごとに変更されるランダムコードとして、文字からなる特
定の桁数のコードを含むことができる。
本明細書において「認証用仮想コード」とは、認証用仮想コード生成手段で生成されるコードとして、認証用仮想コード検証手段で検証されるコードを意味する。すなわち、「認証用仮想コード」とは、検証を行うことができるように単位カウント毎に一時的に付与された仮想コードを意味する。ここで、認証用仮想コード生成手段は、実施形態によってスマートカード装置になることができ、認証用仮想コード生成装置がされることもできるが、これに限定されない。
本明細書において「細部コード」は、認証用仮想コードに含まれる一部のコードを意味する。
本明細書において、「単位カウント」は、特定の時間間隔に設定され、時間間隔が経過するにつれて変更されることと定義された単位である。例えば、1カウントは特定の時間間隔(例えば1.5秒)に設定して用いられる。
本明細書において「認証用仮想コード生成関数」とは、認証用仮想コードを生成するために用いられる関数を意味する。
本明細書において、「ユーザ」は、スマートカード装置を用いてセキュリティを必要とする特定の空間(オフラインまたはオンライン空間)に近づいたり、スマートカード装置を用いて金融決済を行うユーザで有り得るが、これに限定されるものはない。
本明細書において「UID(user identification)」は、ユーザを識別するためにユーザごとに重複しないように付与される固有のコード形式の値を意味する。
本明細書において「時間データ」とは、現在時点の時間データを意味する。すなわち、認証用仮想コードの生成及び検証に用いられる時間データは、すべて同じ時点の時間データを意味することができる。
以下、添付の図面を参照して本発明の実施形態を詳細に説明する。
図1は、本発明に係る認証用仮想コードベースのユーザ認証システムの構成図である。
図2は、本発明に係るスマートカート装置の概略構成図である。
図3は、本発明に係る認証用仮想コード生成装置の概略構成図である。
図4は、本発明に係る認証用仮想コード生成装置によって実行される認証用仮想コード生成方法のフローチャートである。
図5は、本発明に係る時間データを説明するための図である。
図6は、本発明に係る1次認証用仮想コード検証を説明するための図である。
図7は、本発明に係る2次認証用仮想コード検証を説明するための図である。
図8は、本発明に係るスマートカード装置によって実行される認証用仮想コード生成方法のフローチャートである。
図1を参照すると、認証用仮想コードベースのユーザ認証システム(以下、システム)は、管制サーバ100、スマートカード装置10、認証用仮想コード生成装置20、及びサーバ30を含む。ここで、システムは、図1に示す構成要素よりさらに少ない数の構成要素やさらに多くの構成要素を含むことができる。
スマートカード装置10は、ユーザが使用する実物カードを意味する。実施形態に係れば、スマートカード装置10の表面には、カードまたはユーザを識別足りる情報の内、一部のみが表示され得、またはいかなる情報も表示されないことがある。
実施形態に従って、スマートカード装置10は、出入コントロール用(access control)のカードで有り得、金融決済用のカード(例えば、クレジットカード、チェックカード、現金カード、法人カードなど)で有り得る。
具体的に、スマートカード装置10が出入コントロール用出入カードの場合、スマートカード装置10は、ユーザがオフライン上でセキュリティを必要とする特定のスペースに出入するときに用いられるか、またはオンライン上で特定のウェブサイトまたは
アプリ(application)にログインするときに用いられる。スマートカード装置10が金融決済用カードである場合、スマートカード装置10は、ユーザが金融取引を進める際に用いられる。しかしながら、カードの形態、種類及び目的は前述したものに限定されない。スマートカード装置10の詳細な説明は後述する。
認証用仮想コード生成装置20は、出入コントロール装置(例えば、ゲートリーダ、ドアロックなど)で有り得、ユーザが使用するユーザ端末で有り得る。このとき、ユーザ端末は、アプリケーションを駆動することができるアプリケーションプロセッサ(application processor, AP)を備えた任意の電子機器である。ユーザ端末は、携帯不能なデスクトップ(desktop)コンピュータまたは携帯可能なモバイル機器(例えば、スマートフォン(smart phone)、タブレットPC、PDA(personal digital assistant))、EDA(enterprise digital assistant)、PMP(portable multimedia player)、PND(personal navigation device)、ウェアラブルデバイス(wearable device)などを含み、これらに限定されない。認証用仮想コード生成装置20の詳細な説明は後述する。
サーバ30は、認証用仮想コード検証手段として、認証用仮想コード生成装置20から受信した認証用仮想コードの検証を行う。しかしながら、これに限定されず、実施形態に従って、サーバ30の代わりに認証用仮想コード生成装置20が認証用仮想コードを検証することもできる。
このとき、サーバ30は、認証用仮想コード生成装置20と通信するセキュリティ関連サーバまたは金融会社サーバで有り得るが、これに限定されない。また、図1を参照すると、サーバ30は1つのサーバで構成されたもので示されているが、複数のサーバが互いに連携したシステム形態で構成されることもある。
図1に示すように、スマートカード装置10、認証用仮想コード生成装置20及びサーバ30は、通信網を介して互いに各種のデータ、信号又は情報を送受信することができる。
ここで、通信網は様々な形態の通信網を利用することができ、例えば、WLAN(WirelessLAN)、ワイファイ(Wi-Fi)、Wibro(Wireless Broadband Internet)、ワイマックス(WiMAX)、HSDPA(High Speed Downlink Packet Access)などの無線通信方式またはイーサネット(Ethernet)、xDSL(ADSL、VDSL)、HFC(Hybrid Fiber Coax)、FTTC(Fiber to The Curb)、FTTH(Fiber To The Home)などの有線通信方式を用いることができる。
一方、通信網は、前記に提示された通信方式に限定されるものではなく、前述した通信方式以外にも、その他広く公知られたかまたは今後開発されるあらゆる形態の通信方式を含むことができる。
図2を参照すると、スマートカード装置10は、NFCモジュール12及びICモジュール14を含むことができる。ここで、スマートカード装置10は、図2に示す構成要素よりさらに少ない数の構成要素またはさらに多くの構成要素を含むことができる。
NFC(Narrow Frequency Communication)モジュール12(すなわち、NFCチップ)は通信モジュールとして、認証用仮想コード生成装置20と各種データを送受信することができる。ここで、NFCモジュール12はアプレット(applet)の形態で形成することができるが、これに限定されるものではない。NFCモジュール12は、スマートカード装置10が認証用仮想コード生成装置20にタギング(tag)されると、認証用仮想コード生成装置20から時間データを受信することができる。
ICモジュール14(すなわち、ICチップ)は、1次認証用の仮想コードを生成することができる。ここで、ICモジュール14はアプレット(applet)の形態で形成することができるが、これに限定されるものではない。
ICモジュール14は、受信した時間データを用いて1次認証用仮想コードを生成することができる。具体的に、ICモジュール14は、受信した時間データだけでなく、メモリ(図示せず)に貯蔵されたカードデータ及び認証用仮想コード生成関数を用いて1次認証用仮想コードを生成することができる。
ここで、カードデータは、当該スマートカード装置10の發給を申請したユーザのユーザ識別情報とカード識別情報とを含むことができる。ここで、前記カード識別情報は、前記スマートカード装置10の識別情報である第1UID(user identification)、シークレット(secret)、カード番号、シリアル番号を含むことができ、これに限定されず、カード関連情報はすべて含むことができる。ここで、前記ユーザ識別情報は住民登録番号を含むことができ、これに限定されず、ユーザ関連の個人情報を全て含むことができる。
ICモジュール14には、ユーザ識別情報及びカード識別情報の他にも、スマートカード装置10を発給して管理する会社(例えば、カード制作会社、金融会社、セキュリティ会社、オンラインウェブ又はアプリサービス会社等)のURL住所などを貯蔵することができる。例えば、スマートカード装置10のICモジュール14に特定の金融会社のURLアドレスが貯蔵されている場合には、認証用仮想コード生成装置20に該当スマートカード装置10がタギングされると、認証用仮想コード生成装置20は、前記URLアドレスを獲得することができる。この時、URLアドレスは、当該金融会社のプログラムまたはアプリケーションのインストール情報または実行情報に関するもので有り得る。
すなわち、ICモジュール14には、ユーザ識別情報及びカード識別情報以外にも様々な情報が貯蔵される。このような各種情報は、認証用仮想コード生成装置20にスマートカード装置10がタギングされると、認証用仮想コード生成装置20は、スマートカード装置10から該当情報を受信することになる。
スマートカード装置10は、スマートカード装置10の全般的な動作を制御するプロセッサ(図示せず)をさらに含むことができる。プロセッサ(図示せず)は、上で注意深く見た構成要素を介して入力または出力される信号、データ、情報などを処理または貯蔵されたアプリケーションプログラムを駆動することができる。ここでは、プロセッサ(図示せず)がICモジュール14と区別される構成で説明したが、実施形態によってICモジュール14がプロセッサ(図示せず)の役割を果たすことができる。
図3を参照すると、認証用仮想コード生成装置20は、通信部22、メモリ24、及びプロセッサ26を含むことができる。ここで、認証用仮想コード生成装置20は、図3に示す構成要素よりさらに少ない数の構成要素またはさらに多くの構成要素を含むことができる。
通信部22は、前記スマートカード装置10が認証用仮想コード生成装置20にタギングされると、前記通信網を介して前記スマートカード装置10に時間データを送信し、前記時間データに基づいて生成された1次認証用仮想コードを前記スマートカード装置10から受信することができる。その以外にも、2装置はタギング時に様々なデータを互いに送受信することができる。
メモリ24は、認証用仮想コード生成装置20の様々な機能を支援するデータを貯蔵することができる。メモリ24は、認証用仮想コード生成装置20で駆動される複数の応用プログラム(application programまたはアプリケーション(application))、認証用仮想コード生成装置20の動作のための少なくとも1つのプロセス、データ、命令語を貯蔵できる。そのようなアプリケーションプログラムの内、少なくとも一部は、認証用仮想コード生成装置20の基本的な機能のために存在することができる。
プロセッサ26は、前記アプリケーションプログラムに関連した動作以外にも、通常的に、認証用仮想コード生成装置20の全般的な動作を制御することができる。プロセッサ26は、前記の構成要素を介して入力または出力される信号、データ、情報などを処理するか、またはメモリ24に貯蔵されたアプリケーションプログラムを駆動することによって、前記スマートカード装置10またはサーバ30に適した情報または機能を提供または処理することができる。
さらに、プロセッサ26は、メモリ24に貯蔵されたアプリケーションプログラムを駆動するために、図3と共に注意深く見た構成要素の内、少なくとも一部を制御することができる。さらに、プロセッサ26は、前記アプリケーションプログラムを駆動するために、認証用仮想コード生成装置20に含まれる構成要素の内、少なくとも2つ以上を互いに組み合わせて動作させることができる。
図3を参照すると、プロセッサ26はコード生成部262及び検証要請部164を含むことができる。ここで、プロセッサ26は、図3に示す構成要素よりさらに少ない数の構成要素またはさらに多くの構成要素を含むことができる。
コード生成部262は、スマートカード装置10で生成された1次認証用仮想コードを用いて2次認証用仮想コードを生成することができる。
検証要請部264は、通信部22を介して、前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも1つをサーバに送信し、前記サーバが前記少なくとも1つの検証を行うように要請することができる。
図3に示されていないが、プロセッサ26は、コード生成部262及び検証要請部264他にも、様々な演算動作及び判断動作などを実行する構成要素をさらに含むことができる。
以下においては、図4~図7を参照して、認証用仮想コード生成装置20によって実行される認証用仮想コードベースのユーザ認証方法について詳細に説明する。
図4を参照すると、認証用仮想コード生成装置20の通信部22は、ICチップが内蔵されたカードタギング時に、前記スマートカード装置10に時間データを送信することができる(S110)。
スマートカード装置10はそれ自体で時間データを獲得することができないので、タギングによって認証用仮想コード生成装置20から時間データの提供を受けることができる。
このとき、前記時間データは、APDU(Application Protocol Data Unit)命令語と組み合わせた形態で有り得る。図5を参照すると、時間データは、APDU命令語の後に結合された形式でスマートカード装置10に伝達され得る。しかし、結合形態はこれに限定されない。
認証用仮想コード生成装置20の通信部22は、前記時間データに基づいて生成された1次認証用仮想コードを前記スマートカード装置10から受信することができる(S120)。
すなわち、スマートカード装置10は、時間データを受信し、受信した時間データとカード内に貯蔵されていたカードデータ(例えば、シークレット、第1UID)を共に用いて1次認証用仮想コードを生成し、これを認証用仮想コード生成装置20に伝達することができる。
前記1次認証用仮想コードは、第1コード及び第2コードを含むことができる。ここで、第1コード及び第2コードは、前記1次認証用仮想コードの詳細コードであり、1次認証用仮想コードは、第1コード及び第2コード以外にもさらに多くの詳細コードを含むことができる。
前記1次認証用仮想コードの第1コードは、前記時間データ及び第1OTPに基づいて生成され得る。まず、スマートカード装置10は、第1認証用仮想コード生成関数を用いてカード内に貯蔵されていたシークレット値と前記時間データをシードデータとして第1OTPを生成することができる。この時、シードデータは、実施形態によって、シークレット値及び時間データ以外の値をさらに用いることもある。
その後、スマートカード装置10は、第1認証用仮想コード生成関数を用いて、前記受信した時間データに生成された第1OTPを加算して第1コードを生成することができる。
スマートカード装置10は第1認証用仮想コード生成関数を用いて、前記第1コードから前記カードの識別情報である第1UID(useridentification)を除外して前記第2コードを生成することができる。ここで、第1UIDは、スマートカード装置10に貯蔵されたデータとしてスマートカード装置10を識別することができる固有値である。
第1コード=時間データ+第1OTP
第2コード=第1コード-第1UID
スマートカード装置10は、生成された詳細コード(第1コード及び第2コード)を組み合わせて1次認証用仮想コードを生成することができる。一実施形態として、スマートカード装置10は、第1認証用仮想コード生成関数を用いて複数の詳細コードを特定の規則に従って結合することによって、前記1次認証用仮想コードを生成することができる。前記第1認証用仮想コード生成関数は、複数の詳細コードを組み合わせる規則(すなわち、詳細コード結合関数)を含むことができる。
複数の詳細コードを組み合わせて1つの認証用仮想コードを生成する方式としては、様々な方式を適用することができる。前記詳細コード結合関数の一例として、スマートカード装置10は、M桁の第1コードとN桁の第2コードとを交互に配置する方式で認証用仮想コードを生成することができる。さらに、別の例として、詳細コード結合関数は、第1コードの後に第2コードを結合する関数であり得る。認証用仮想コードに含まれる詳細コードが増えるにつれて、詳細コード結合関数も多様に生成することができる。
このように生成された1次認証用仮想コードは、認証用仮想コード生成装置20に送信される。
認証用仮想コード生成装置20のコード生成部262は、前記1次認証用仮想コードを用いて2次認証用仮想コードを生成することができる(S130)。
ステップS130の以前に、認証用仮想コード生成装置20のコード生成部262は、前記スマートカード装置10の種類に応じて2次認証用仮想コードを生成するか否かをまず判断することができる。さらに詳細には、コード生成部262は、1次認証用仮想コードと共に受信されたカードデータに基づいて前記判断動作を実行することができる(実施形態に従って、カードデータはタギング時に受信されることもできる)。すなわち、コード生成部262は、前記カードデータに基づいて前記スマートカード装置10が出入コントロール用カードであるか金融決済用カードであるかを判断することができる。そして、前記スマートカード装置10が出入コントロール用カードであることで確認されると、2次認証用仮想コードを生成せず、前記カードデータに基づいて前記スマートカード装置10が金融決済用カードであることで確認されると、2次認証用仮想コードを生成することができる。
実施形態に係れば、認証用仮想コード生成装置20の種類に応じて、2次認証用仮想コード生成の有無を決定することができる。具体的には、認証用仮想コード生成装置20が出入コントロール装置である場合、前記判断動作なしに2次認証用仮想コードを生成しないことがある。認証用仮想コード生成装置20がユーザ端末である場合、コード生成部262は、スマートカード装置10の種類に応じて2次認証用仮想コードを生成するか否かを判断することができる。より詳細には、コード生成部262は、1次認証用仮想コードと共に受信されたカードデータに基づいて前記判断動作を実行することができる(実施形態に係れば、カードデータはタギング時に受信されることもできる)。すなわち、コード生成部262は、前記カードデータに基づいてスマートカード装置10が出入コントロール用カードであると確認された場合、2次認証用仮想コードを生成せず、前記カードデータに基づいて前記スマートカード装置10が金融決済用カードであることが確認されると、2次認証用仮想コードを生成することができる。
前記では、コード生成部262が前記判定動作を行うものとして説明したが、これに限定されず、プロセッサ260の他の構成要素が前記判断動作を実行することもできる。
前記過程に介して2次認証用仮想コードを生成すると判定されると、ステップS130において、コード生成部262は、前記1次認証用仮想コードを用いて2次認証用仮想コードを生成することができる。このとき、2次認証用仮想コードを生成するためには、まずサーバ30で1次認証用仮想コードの検証を行わければならない。サーバ30は、検証を通じて1次認証用仮想コードに含まれる複数の詳細コート(第1コード及び第2コード)を抽出し、これを認証用仮想コード生成装置20に伝達することができる。
前記では、2次認証用仮想コード生成のための1次認証用仮想コードの検証をサーバ30で行うものとして説明したが、実施形態によりサーバ30ではない認証用仮想コード生成装置20が該当検証を実行することもある。認証用仮想コードの検証方法の説明は後述する。
本明細書において2次認証用仮想コードを生成する方式は、OTP演算を1回実行する方式と2回実行する方式に区分することができる。
OTP演算を一回行う方式(第1方式)は、スマートカード装置10で1次認証用仮想コードが生成されるときのみOTP演算が行われ、2次認証用仮想コードのコード長が長くなる。
前記第1方式において、コード生成部262は、第2認証用仮想コード生成関数を用いて受信した第1コードにおける前記認証用仮想コード生成装置20の識別情報である第2UIDを除外して第3コードを生成できる。ここで、第2UIDは、認証用仮想コード生成装置20に貯蔵されたデータとして認証用仮想コード生成装置20を識別することができる固有値である。
第3コード=第1コード-第2UID
その後、コード生成部262は、第2認証用仮想コード生成関数を用いてスマートカード装置10で生成された第1コード、スマートカード装置10で生成された第2コード及び認証用仮想コード生成装置20で生成された第3コードを組み合わせて2次認証用仮想コードを生成することができる。
コード生成部262は、生成された複数の詳細コード(第1コード、第2コード及び第3コード)を組み合わせて2次認証用仮想コードを生成することができる。一実施形態として、コード生成部262は、第2認証用仮想コード生成関数を用いて複数の詳細コードを特定の規則に従って結合することによって前記第2次認証用仮想コードを生成することができる。前記第2認証用仮想コード生成関数は、複数の詳細コードを組み合わせる規則(すなわち、詳細コード結合関数)を含むことができる。複数の詳細コードを組み合わせて1つの認証用仮想コードを生成する方式としては、前述した方式を適用することができる。
前記第1方式において、1次認証用仮想コードに含まれた第1コード及び第2コードと、2次認証用仮想コードに含まれる第1コード及び第2コードは共にスマートカード装置10で生成されたもので同じコードを意味する。第3コードがスマート認証装置20で新たに生成され、前記第1コード及び第2コードと結合されて2次認証用仮想コードが生成されることである。
OTP演算を2回行う方式(第2方式)は、スマートカード装置10で1次認証用仮想コードが生成されるときOTP演算が行われ、その後認証用仮想コード生成装置20で2次認証用仮想コードが生成されるときOTP演算がもう1回実行され、2次認証仮想コードのコード長には変化がない(つまり、1次認証仮想コードの長さと同じ)。
前記第2方式において、コード生成部262は、前記1次の認証用仮想コードに基づいて第2OTPを生成し、前記第2OTP及び前記認証用仮想コード生成装置の識別情報である第2UIDに基づいて前記2次認証用仮想コードを生成することができる。ここで、第2UIDは、認証用仮想コード生成装置20に貯蔵されたデータとして認証用仮想コード生成装置20を識別することができる固有値である。
コード生成部262は第2認証用仮想コード生成関数を用いて、前記時間データ及び
シークレット値だけでなく、前記第1認証用仮想コードを追加シードデータとしてさらに活用して前記第2OTPを生成することができる。
その後、コード生成部262は、第2認証用仮想コード生成関数を用いてスマートカード装置10で生成された第1コードに含まれる前記時間データ(時間データは、2次認証用仮想コード生成要請時点であり得る)に、前記生成された第2OTPを加えて第1コードを生成することができる。コード生成部262は、第2認証用仮想コード生成関数を用いて、前記第1コードにおける前記認証用の仮想コード生成装置20の識別情報である第2UID(user identification)を除外して第2コードを生成することができる。ここで、第2UIDは、認証用仮想コード生成装置20に貯蔵されたデータとして認証用仮想コード生成装置20を識別することができる固有値である。
第1コード=時間データ+第2OTP
第2コード=第1コード-第2UID
ここで、時間データは現在時点の時間データとして、前記1次認証用仮想コードを生成する際に用いられる時間データと前記2次認証用仮想コードを生成する際に用いられる時間データは同じで有り得る。すなわち、第1OTPと第2OTPは同じ時点で生成されるので、同じ現在時間データを利用することができる。
コード生成部262は、生成された詳細コード(第1コード及び第2コード)を組み合わせて2次認証用仮想コードを生成することができる。一実施形態で、コード生成部262は、第2認証用仮想コード生成関数を用いて複数の詳細コードを特定の規則に従って結合することによって前記2次認証用仮想コードを生成することができる。前記第2認証用仮想コード生成関数は、複数の詳細コードを組み合わせる規則(すなわち、詳細コード結合関数)を含むことができる。複数の詳細コードを組み合わせて1つの認証用仮想コードを生成する方式としては、前述した方式を適用することができる。
前記第2方式において、1次認証用仮想コードに含まれる第1コード及び第2コードと、2次認証用仮想コードに含まれた第1コード及び第2コードはそれぞれスマートカード装置10と認証用仮想コード生成装置20で生成されたものでそれぞれ異なるコードである。すなわち、1次認証用仮想コードに含まれる第1コード及び第2コードは、第1OTP及び第1UIDを用いて生成されたものであり、2次認証用仮想コードに含まれた第1コード及び第2コードは、第2OTP及び第2UIDを用いて生成されたものであるからそれぞれ異なる。
前述した第1認証用仮想コード生成関数と第2認証用仮想コード生成関数は、それぞれスマートカード装置10と認証用仮想コード生成装置20に貯蔵されるが、駆動された最初の時点は同じで有り得る。すなわち、ユーザがスマートカード装置10の発給を受けて認証用仮想コード生成装置20に最初のタギングを介してサーバ30に前記スマートカード装置10に対するユーザ登録を完了すると、スマートカード装置10と認証用仮想コード生成装置20のそれぞれに貯蔵された第1認証用仮想コード生成関数と第2認証用仮想コード生成関数が駆動を開始することができる。すなわち、第1認証用仮想コード生成関数と第2認証用仮想コード生成関数は同じで有り得る。
このようにユーザ登録が完了すると、サーバには、スマートカード装置10の識別情報である第1UIDと認証用仮想コード生成装置20の識別情報である第2UIDの内、少なくとも1つが貯蔵することができる。すなわち、サーバ30は、ユーザ登録時に検証アルゴリズム内でユーザに割り当てられる領域に、前記第1UID及び前記第2UIDの内、少なくとも1つを貯蔵することができる。実施形態に従って、サーバ30は、第1UIDを1つの領域に貯蔵し、前記第2UIDを前記第1UIDとマッチングさせて貯蔵することができる。実施形態に従って、サーバ30は、1つの領域に前記第2UIDを貯蔵し、第1UIDを前記第2UIDとマッチングさせて貯蔵することができる。実施形態に係れば、サーバ30は、2つの領域のそれぞれに前記第1UID及び前記第2UIDを貯蔵することができる。
また、ユーザ登録時に、サーバ30は、前記第1UID及び前記第2UIDだけでなく、前記スマートカード装置10と関連した前記カードデータ及び前記認証用仮想コード生成装置20に関連した端末データを一緒に貯蔵することができる。
認証用仮想コード生成装置20の通信部22は、前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも1つをサーバに送信することができる(S140)。
認証用仮想コード生成装置20の検証要請部264は、前記サーバ30が前記少なくとも1つの検証を行うように要請することができる(S150)。
実施形態に従って、スマートカード装置10が出入コントロール用の出入カードである場合、すなわち、ユーザがスマートカード装置10を用いてオフライン上でセキュリティを必要とする特定のスペースに出入したり、オンライン上で特定のウェブサイトまたはアプリにログインする場合、サーバ30は、1次認証用仮想コードに対する検証要請を受信することができる。具体的に、スマートカード装置10で生成された1次認証用仮想コードは、自らサーバ30に送信され、ユーザ認証に用いられる。
図6を参照すると、認証用仮想コード生成装置20(より詳細には、検証要請部264は、スマートカード装置10で生成された1次認証用仮想コードをサーバ30に送信して検証を要請することができる。サーバ30は、検証アルゴリズムに基づいて1次認証用仮想コードに対する検証を行い、検証結果を認証用仮想コード生成装置20に送信することができる。
このとき、認証用仮想コード生成装置20は、1次認証用仮想コードをサーバ30に直接伝達して検証要請を行うこともできるが、ユーザが1次認証用仮想コードを視覚的に確認したりまたはコピーして他のプログラムまたはウェブページに入力またはコピペすることができるようにディスプレイ部(図示せず)に出力することができる。認証用仮想コード生成装置20は、ユーザによって入力またはコピペされた1次認証用仮想コードをサーバ30に送信して検証要請を行うことができる。
認証用仮想コード生成装置20は、検証結果に応じてオフライン出入コントロール及びオンラインログイン時にユーザ認証を行うことができる。すなわち、1次認証用仮想コードが正常コードであれば、ユーザが前記セキュリティを必要とする特定のスペースに出入することを許可するか、前記特定のウェブサイトまたはアプリにログインすることを許可することができる。
実施形態に従って、スマートカード装置10が金融決済用カードである場合、すなわち、ユーザがスマートカード装置10を用いて金融取引を進行する場合、サーバ30は前記2次認証用仮想コードの検証要請を受信できる。すなわち、スマートカード装置10で生成された1次認証用仮想コードは認証用仮想コード生成装置20に送信されて2次認証用仮想コード生成に用いることができる。
図7を参照すると、認証用仮想コード生成装置20(より詳細には、コード生成部262は、スマートカード装置10で生成された1次認証用仮想コードを用いて2次認証用仮想コードを生成できる。認証用仮想コード生成装置20(より詳細には、検証要請部264は、生成された2次認証用仮想コードをサーバ30に送信して検証を要請することができる。サーバ30は、検証アルゴリズムに基づいて2次認証用仮想コードに対する検証を行い、検証結果を認証用仮想コード生成装置20に送信することができる。
このとき、認証用仮想コード生成装置20は、2次認証用仮想コード生成のためのシードデータを獲得するために、サーバ30に1次認証用仮想コードの検証要請を行うことができる。サーバ30は、検証アルゴリズムに基づいて1次認証用仮想コードから第1コード、第2コード、時間データ、シークレット値、第1UIDの内、少なくとも1つを抽出して認証用仮想コード生成装置20へ伝達することができる。認証用仮想コード生成装置20は、第1コード、第2コード、時間データ、シークレット値、第1UID、1次認証用仮想コードの内、少なくとも1つをシードデータとして2次認証用仮想コードを生成することができる。前述したように、2次認証用仮想コード生成のための1次認証用仮想コードの検証はサーバ30で行うことができるが、実施形態にしたがって認証用仮想コード生成装置20が直接該当検証を実行することもできる。
認証用仮想コード生成装置20は、検証結果に応じて金融決済時にユーザ認証を行うことができる。すなわち、2次認証用仮想コードが正常コードであれば、ユーザに金融取引を進めるようにすることができる。
以下においては、認証用仮想コードの検証方法を具体的に説明する。
実施形態に従って、サーバ30が1次認証用仮想コードに対する検証要請を受信した場合、第1認証用仮想コード生成関数に対応する検証アルゴリズムを用いて、前記1次認証用仮想コードに基づいて第1UIDが貯蔵された領域を探索して第1UIDを抽出することができる。
このとき、前述したように、前記1次認証用仮想コードは複数の詳細コードを含むが、複数の詳細コードは、第1UIDの貯蔵領域探索の開始地点を設定する第1コードと特定の探索方式に応じて、開始点から前記第1UIDの貯蔵領域への探索経路を設定する第2コードで構成され得る。
第1コードと第2コードは、認証用仮想コード検証手段を備えるサーバ30内で1次認証用仮想コードを検証するための相関関係を有するが、認証用仮想コード生成手段を備えるスマートカード装置10は、セキュリティを向上させるために第1コードを生成する第1関数と第2コードを生成する第2関数を詳細コード生成関数として含むだけであり、第1コードと第2コードとの相関関係に対するデータを含まないことかある。
さらに、一実施形態として、1次認証用仮想コードが第1コードと第2コードの特定の規則に従って組み合わせて生成される場合、第1コードと第2コードは検証アルゴリズム内の実際の値(第1UID)の貯蔵領域を探索するためのそれぞれの役割を実行することができる。例えば、第1コードは貯蔵位置探索の開始地点を設定し、第2コードは特定の探索方式に従って前記開始地点から前記第1UIDの貯蔵領域への探索経路を設定する。したがって、以後、スマートカード装置10で単位カウント毎に正常に生成された認証用仮想コードが提供されると、サーバ30は、第1コードに対応する開始地点から第2コードに対応する探索経路に従って移動した地点を第1UIDが貯蔵された領域と判断する。
具体的に、サーバ30は、検証アルゴリズムを用いて1次認証用仮想コードに含まれる複数の詳細コードを抽出することができる。前記1次認証用仮想コードは、複数の詳細コードを特定の規則に従って結合して生成されるものである。サーバ30は、1次認証用仮想コード生成時に用いられる詳細コード結合関数と同じ関数を適用して、1次認証用仮想コードから複数の詳細コードを抽出することができる。例えば、2つの詳細コード(すなわち、第1コード及び第2コード)が結合された1次認証用仮想コードが生成された場合、サーバ30は、1次認証用仮想コードの文字配列で詳細コード結合関数を適用して第1コードと第2コードを分離することができる。このとき、詳細コード間には相関関係を含むことができる。
1次認証用仮想コードが第1コード及び第2コードを含む場合、詳細コード間に相関関係を有する一実施形態で、サーバ30は第1コードに対応する探索の開始地点を決定し、前記探索開始地点から第2コードに対応する探索経路に従って移動した地点に対応する値を第1UIDとみなすことができる。
さらに、別の実施形態として、スマートカード装置10が単位カウントごとに新しい1次認証用仮想コードを提供することにより、サーバ30は、各カウントごとに変更される第1コード及び第2コードに基づいて開始地点と探索経路を設定して第1UIDを探索することができる。
さらに、一実施形態として、サーバ30は、相関関係を有する複数の詳細コードを用いて第1UIDを見つけるための検証アルゴリズムを含むことができる。検証アルゴリズムは、1次認証用仮想コードに含まれる各々の細部コード適用時に第1UID探索が可能するようにするアルゴリズムである。例えば、1次認証用仮想コードから第1UIDの探索の開始地点を決定する第1コードと、開始地点からの貯蔵領域の方向を提示する第2コードとを含む場合、検証アルゴリズムは第1コードに対応する地点で第2コードに対応する方向を指示するときに、その位置に第1UIDが配置されるように調整するアルゴリズムである。検証アルゴリズムを用いることによって、サーバ30は、1次認証用仮想コードに含まれる第1コードと第2コードが変更されても第1UIDを見つけることができる。
さらに、一実施形態として、前記1次認証用仮想コードが時間データに第1OTPを加えた第1コードと、前記第1コードから第1UIDを除外した第2コードを組み合わせて生成した場合、サーバ30は、前記第1コード値から前記第2コード値を減算して実際の値(すなわち、第1UID)を抽出することができる。
さらに、一実施形態として、サーバ30は、貯蔵領域を検索して抽出された第1UIDと前記第1コード値から前記第2コード値を減算して抽出された第1UIDを比較し、2つの値が同じであれば、前記1次認証用仮想コードが正常なコードであると判断することができる。しかし、このような比較過程がなくても、サーバ30は、それぞれの値のみでも該当1次認証用仮想コードが正常なコードであるか否かを判断することができる(例えば、抽出された値がサーバ30のDB内に貯蔵された情報と一致するかどうかによって判断)。
実施形態にしたがって、サーバ30が2次認証用仮想コードの検証要請を受信した場合、第2認証用仮想コード生成関数に対応する検証アルゴリズムを用いて前記2次認証用仮想コードに基づく第1UIDが貯蔵された領域と第2UIDが貯蔵された領域の内、少なくとも1つを検索して、第1UID及び第2UIDの内、少なくとも1つを抽出することができる。
前記第1方式において、前記2次認証用仮想コードは、前述したように、第1コード、第2コード及び第3コードを組み合わせて生成される。サーバ30は、第2認証用仮想コード生成関数に対応する検証アルゴリズムを用いて、第2認証用仮想コードに基づいて第1UIDが貯蔵された領域を探索して第1UIDを抽出し、第2UIDが貯蔵された領域を探索して第2UIDを抽出することができる。
サーバ30は、検証アルゴリズムを用いて2次認証用仮想コードに含まれた複数の詳細コードを抽出することができる。前記2次認証用仮想コードは、特定の規則に従って複数の詳細コードを組み合わせて生成されるものである。サーバ30は、2次認証用仮想コード生成時に用いられた詳細コード結合関数と同じ関数を適用して、2次認証用仮想コードから複数の詳細コードを抽出することができる。例えば、3つの詳細コード(すなわち、第1コード、第2コード及び第3コード)が結合された2次認証用仮想コードが生成された場合、サーバ30は、2次認証用仮想コードの文字配列で詳細コード結合関数を適用して、第1コード、第2コード、及び第3コードを分離することができる。このとき、詳細コード間には相関関係を含めることができる。
2次認証用仮想コード第1コード、第2コード、及び第3コードを含む場合、詳細コード間に相関関係を有する一実施形態として、サーバ30は、第1コードに対応する検索の開始地点を決定し、前記検索開始点から第2コードに対応する探索経路に従って移動した点に対応する値を第1UIDとみなすことができる。そして、第1コードに対応する探索の開始地点を決定し、前記開始地点から第3コードに対応する探索経路に従って移動した地点に対応する値を第2UIDとみなすことができる。
また、別の実施形態として、認証用仮想コード生成装置20が単位カウント毎に新しい2次認証用仮想コードを提供することにより、サーバ30は各カウント毎に変更される第1コード、第2コードそして、第3コードに基づいて開始地点と探索経路を設定して第1UID及び第2UIDを探索することができる。
さらに、一実施形態として、サーバ30は、相関関係を有する複数の詳細コードを用いて第1UID及び第2UIDを見つけるための検証アルゴリズムを含むことができる。検証アルゴリズムは、2次認証用仮想コードに含まれる各々の細部コード適用時に第1UID探索及び第2UID探索が可能するためにするアルゴリズムである。例えば、2次認証用仮想コードから第1UID及び第2UIDの探索の開始地点を決定する第1コードと、開始地点からの第1UID貯蔵領域の方向を提示する第2コードと
開始地点からの第2UID貯蔵領域の方向を提示する第3コードを含む場合、検証アルゴリズムは、第1コードに対応する地点で第2コードに対応する方向を示すときにその位置に第1UIDが配置されるように調整し、第1コードに対応する地点で第3コードに対応する方向を指示するときに、該当位置に第2UIDが配置されるように調整するアルゴリズムである。検証アルゴリズムを用いることによって、サーバ30は、2次認証用仮想コードに含まれた第1コード、第2コード及び第3コードが変更されても、第1UID及び第2UIDを見つけることができる。
また、一実施形態として、前記2次認証用仮想コードが前記時間データに第1OTPを加えた第1コードと、前記第1コードから第1UIDを除外した第2コードと、前記第1コードから第2UIDを除外した第3コードが結合して生成された場合、サーバ30は、前記第1コード値から前記第2コード値を減算して実際の値(すなわち、第1UID)を抽出し、前記第1コード値から前記第3コード値を減算して実際の値(すなわち、第2UID)を抽出することができる。
すなわち、前記サーバ30は、前記第1コード及び第2コードに基づいて前記第1UIDを抽出して前記スマートカード装置10の検証を行い、前記第1コード及び前記第3コードに基づいて前記第2UIDを抽出して前記認証用仮想コード生成装置20の検証を行うことができる。
さらに、一実施形態として、サーバ30は、前記貯蔵領域を検索して抽出された第1UIDと前記第1コード値から前記第2コード値を減算して抽出された第1UIDとを比較し、2つの値が同じであると、前記2次認証用仮想コードに対する1次検証を完了し(すなわち、前記スマートカード装置に対する検証)、前記貯蔵領域を探索して抽出された第2UIDと、前記第1コード値から前記第3コード値を減算して抽出された第2UIDを比較し、2つの値が等しい場合、前記2次認証用仮想コードに対する2次検証を完了し(すなわち、前記認証用仮想コード生成装置に対する検証)、前記2次認証用仮想コードが正常なコードであると判断できる。しかしながら、このような比較過程がなくても、サーバ30は、それぞれの値のみでも該当2次認証用仮想コードが正常なコードであるか否かを判断することができる(例えば、抽出された値がサーバ30のDB内に貯蔵された情報と一致するかどうかによって判断)。
前記第2方式において、前記2次認証用仮想コードは、前述したように、1次認証用仮想コードに基づいて生成された第2OTPと、前記第2UIDに基づいて生成された第1コード及び第2コードを組み合わせて生成される。サーバ30は、受信した前記2次認証用仮想コードに含まれた前記第2OTPと検証用第2OTPの比較を通じて、前記2次認証用仮想コードの検証を行うことができる。ここで、前記検証用第2OTPは、前記第2OTP生成時に用いられたシードデータと同じシードデータに基づいて前記サーバ30によって生成され得る。
具体的には、サーバ30は、前記2次認証用仮想コードから前記第1コードと第2コードを分離し、分離された第1コードと第2コードに基づいて前記第2UIDを検索して一緒に貯蔵されていたカードデータ(例えば、シークレット値)を確認することができる。ここで、詳細コードを分離し、詳細コードを用いて実際の値を検索する方法は前述した通りである。
その後、サーバ30は、検索された第2UIDにマッチングさせている第1UIDを検索することができる。
サーバ30は、このように第2UIDを通じて抽出された値、すなわちシークレット値及び第1UIDと、現在時間データを用いて1次認証用仮想コードを生成し、生成された1次認証用仮想コードと、前記シークレット値及び時間データをシードデータとして検証用の第2OTPを生成することができる。
このように生成された検証用第2OTPと前記第2認証用仮想コードに含まれた第2OTPとを比較したとき、2つの値が等しい場合、サーバ30は、前記第2認証用仮想コードが正常なコードであると判断することができる。すなわち、前記第2OTPと前記検証用第2OTPが同一であれば、シードデータとして用いられた値(1次認証用仮想コードと前記シークレット値及び時間データ)が全て同一であり、かつ1次認証用仮想コードが等しい場合、該当値で生成される2次認証用仮想コードも同じであるので、前記スマートカード装置10及び前記認証用仮想コード生成装置20が正常であることで検証することができる。
以下においては、図8を参照して、スマートカード装置10によって実行される認証用仮想コードベースのユーザ認証方法について詳細に説明する。
図8を参照すると、スマートカード装置10は、カードタギングを介して認証用仮想コード生成装置から時間データを受信し(S210)、前記受信した時間データに基づいて1次認証用仮想コードを生成する。(S220)。
スマートカード装置10が1次認証用仮想コードを生成すること、ユーザ認証用装置20が2次認証用仮想コードを生成することと、サーバ30が1次認証用仮想コード及び2次認証用仮想コードの内の少なくとも1つに対して検証を行うことは、前記図1~図7を参照して説明したのと重複するので、詳細な説明は省略する。
一方、本発明のスマートカード装置10は、金融決済用及び出入コントロール用の機能を共に行うことができる。すなわち、スマートカード装置10が会社の法人カードであるか、職員の個人カードである場合、各ユーザは当該カードを用いて会社の出入カードとして用いられる。
図4及び図8に示すステップは順次実行されるものとして記載しているが、これは本実施形態の技術思想を例示的に説明したことに過ぎず、本実施形態が属する技術分野で通常の知識を有する者であれば本実施形態の本質的な特性から逸脱しない範囲で、図4及び図8に記載されたステップの順序を変更して実行するか、又は1つ以上のステップを並列に実行することで様々に修正及び変形して適用可能であるので、図4及び図8に記載されたステップは時系列的な順序に限定されない。
以上で前述した本発明は、前記認証用仮想コード生成方法を実行するためのコンピュータプログラムを記録するコンピュータ可読記録媒体をさらに提供することができる。
前記前述のプログラムは、前記コンピュータがプログラムを読み込み、プログラムとして実現された方法を実行させるために、前記コンピュータのプロセッサ(CPU)が前記コンピュータのデバイスインタフェースを介して読み取ることができるC、C++、JAVA、機械語などのコンピュータ言語でコード化されたコード(Code)を含むことができる。そのようなコードは、前記方法を実行するために必要な機能を定義した。
関数などに関連する機能コード(Functional Code)を含むことができ、前記機能をコンピュータのプロセッサが所定の手順で実行するために必要な実行手順関連制御コードを含むことができる。さらに、そのようなコードは、前記機能を前記コンピュータのプロセッサが実行するために必要な追加情報、またはメディアがコンピュータの内部または外部メモリのどの位置する(アドレス番地)で参照されるべきかについてのメモリ参照関連コードをさらに含み得る。また、前記コンピュータのプロセッサが前記機能を実行させるためにリモート(Remote)にあるいずれの他のコンピュータやサーバ等と通信が必要な場合、コードは前記コンピュータの通信モジュールを用いて遠隔にあるいずれの他のコンピュータやサーバ等とどのようにして通信すべきか、通信時どのような情報やメディアを送受信すべきかなどの通信関連コードをさらに含むことができる。
本発明の実施形態に関連して説明された方法またはアルゴリズムのステップは、ハードウェアで直接実現されるか、ハードウェアによって実行されるソフトウェアモジュールで実現されるか、またはそれらの組み合わせによって実現することができる。ソフトウェアモジュールは、RAM(Random Access Memory)、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、フラッシュメモリ(Flash Memory)、ハードディスク、リムーバブルディスク、CD-ROM、または本発明が属する技術分野でよく知られた任意の形態のコンピュータ可読記録媒体に常駐することもできる。
以上、添付図面を参照して本発明の実施形態を説明したが、本発明が属する技術分野の通常の技術者は、本発明がその技術的思想や必須の特徴を変更することなく他の具体的な形態で実施することができるということが理解できる。したがって、以上で記述した実施形態はあらゆる点で例示的なものであり、限定的なものではないと理解すべきである。

Claims (15)

  1. 認証用仮想コード生成装置によって実行される方法において、
    ICチップが組み込まれたカードタギング時に、カードに時間データを送信するステップと
    前記時間データに基づいて生成された1次認証用仮想コードを前記カードから受信するステップと
    前記1次認証用仮想コードを用いて2次認証用仮想コードを生成するステップと
    前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも一方をサーバに送信するステップと、
    前記サーバが前記少なくとも1つの検証を実行するように要請するステップと
    を含む、認証用仮想コード生成方法。
  2. 前記1次認証用仮想コードは、複数のコードを含み、
    前記複数のコードの内、第1コードは、前記時間データ及び第1OTPに基づいて生成され、
    前記複数のコードの内、第2コードは、前記第1コードにおいて前記カードの識別情報である第1UID(user identification)を除外して生成される、請求項1に記載の認証用仮想コード生成方法。
  3. 前記2次認証用仮想コードを生成するステップは、
    前記第1コードから前記認証用仮想コード生成装置の識別情報である第2UIDを除外して第3コードを生成し、
    前記第1コード、前記第2コード、及び前記第3コードを組み合わせて前記2次認証用仮想コードを生成する、請求項2に記載の認証用仮想コード生成方法。
  4. 前記カードは、前記第1コード及び前記第2コードに基づいて検証が実行され、
    前記認証用仮想コード生成装置は、前記第1コード及び前記第3コードに基づいて検証が行われる、請求項3に記載の認証用仮想コード生成方法。
  5. 前記2次認証用仮想コードを生成するステップは、
    前記1次認証用仮想コードに基づいて第2OTPを生成し、
    前記第2OTP及び前記認証用仮想コード生成装置の識別情報である第2UIDに基づいて前記2次認証用仮想コードを生成する、請求項2に記載の認証用仮想コード生成方法。
  6. 前記2次認証用仮想コードは、
    前記2次認証用仮想コードに含まれる前記第2OTPと検証用第2OTPの比較を通じて検証され、
    前記検証用第2OTPは、
    前記第2OTP生成時に用いられるシードデータと同じシードデータに基づいて前記サーバによって生成されたものである、請求項5に記載の認証用仮想コード生成方法。
  7. 前記1次認証用仮想コードは、
    オフライン出入コントロール及びオンラインログイン時にユーザ認証用に用いられる、請求項1に記載の認証用仮想コード生成方法。
  8. 前記2次認証用仮想コードは、
    金融決済時にユーザ認証用に用いられる、請求項1に記載の認証用仮想コード生成方法。
  9. 前記時間データは、APDU(Application Protocol Data Unit)命令語と組み合わせた形態である、請求項1に記載の認証用仮想コード生成方法。
  10. コンピュータと組み合わせて、請求項1~9の内、いずれか一項に記載の方法を実行するためにコンピュータ可読記録媒体に貯蔵されたプログラム。
  11. カードタギングを介して認証用仮想コード生成装置から時間データを受信するNFCモジュールと、
    前記受信された時間データに基づいて1次認証用仮想コードを生成するICモジュールとを含み、
    前記1次認証用仮想コードは自ら送信されてユーザ認証に用いられるか、2次認証用仮想コード生成に用いられるものであり、前記2次認証用仮想コードは、前記1次認証用仮想コードを用いて前記認証用仮想コード生成装置によって生成されるものであり、
    前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも一方は、サーバによって検証が行われるように前記認証用仮想コード生成装置によって前記サーバに伝送される、スマートカード装置。
  12. ICチップが内蔵されたカードタギング時に、前記カードに時間データを送信し、前記時間データに基づいて生成された1次認証用仮想コードを前記カードから受信する通信部と
    前記1次認証用仮想コードを用いて2次認証用仮想コードを生成するコード生成部と、
    前記通信部を介して前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも1つをサーバに送信し、前記サーバが前記少なくとも1つの検証を行うように要請する検証要請部とを含む、認証用仮想コード生成装置。
  13. サーバによって実行される方法において、
    認証用仮想コード生成装置から、1次認証用仮想コード及び2次認証用仮想コードの内、少なくとも1つを受信するステップと、
    前記1次認証用仮想コード及び前記2次認証用仮想コードの内、少なくとも1つの検証を実行するステップとを含み、
    前記2次認証用仮想コードが複数のコードを含む場合、前記検証実行ステップは、
    前記複数のコードの内、第1コード及び第2コードに基づいてカードの識別情報である第1UID(user identification)を抽出して前記カードの検証を行い、
    前記複数のコードの内、前記第1コード及び第3コードに基づいて前記認証用仮想コード生成装置の識別情報である第2UIDを抽出し、前記認証用仮想コード生成装置の検証を行う、認証用仮想コード検証サーバ。
  14. 前記2次認証仮想コードが第2OTP及び第2UIDを含む場合、前記検証実行ステップは、
    前記第2OTP生成時に用いられたシードデータと同じシードデータに基づいて検証用第2OTPを生成し、
    前記2次認証用仮想コードに含まれる前記第2OTPと前記検証用第2OTPとを比較し、
    前記第2OTPと前記検証用第2OTPが同一であれば、前記カード及び前記認証用仮想コード生成装置の検証を完了する、請求項13に記載の認証用仮想コード検証サーバ。
  15. 前記1次認証用仮想コードが受信された場合、
    前記検証実行ステップは、
    第1検証アルゴリズムを用いて、前記1次認証用仮想コードに基づいてカードの識別情報である第1UID(user identification)を抽出して前記カードの検証を行う、請求項13に記載の認証用仮想コード検証サーバ。
JP2022572460A 2021-03-04 2022-03-02 スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバ Active JP7509923B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR10-2021-0029035 2021-03-04
KR20210029035 2021-03-04
KR1020220021278A KR102479730B1 (ko) 2021-03-04 2022-02-18 스마트 카드 장치, 인증용가상코드 생성 장치, 이를 이용한 인증용가상코드 생성 방법 및 인증용가상코드 검증 서버
KR10-2022-0021278 2022-02-18
PCT/KR2022/002954 WO2022186605A1 (ko) 2021-03-04 2022-03-02 스마트 카드 장치, 인증용가상코드 생성 장치, 이를 이용한 인증용가상코드 생성 방법 및 인증용가상코드 검증 서버

Publications (2)

Publication Number Publication Date
JP2023527349A true JP2023527349A (ja) 2023-06-28
JP7509923B2 JP7509923B2 (ja) 2024-07-02

Family

ID=83117606

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022572460A Active JP7509923B2 (ja) 2021-03-04 2022-03-02 スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバ

Country Status (4)

Country Link
US (1) US20220286449A1 (ja)
EP (1) EP4083887A4 (ja)
JP (1) JP7509923B2 (ja)
CN (1) CN115668255A (ja)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008027381A (ja) 2006-07-25 2008-02-07 Sony Corp 認証システム、認証サーバ及び認証方法
KR101272600B1 (ko) * 2011-08-23 2013-06-10 (주)에이티솔루션즈 엔에프씨를 이용한 무선 결제 방법 및 시스템과 이를 위한 무선단말
JP2013084032A (ja) 2011-10-06 2013-05-09 Asahi Seiko Co Ltd クレジットカードの決済システム及び決済方法
KR101561499B1 (ko) 2014-11-27 2015-10-20 주식회사 미래테크놀로지 엔에프씨 인증카드를 이용한 인증방법
KR101644568B1 (ko) 2015-10-15 2016-08-12 주식회사 한국엔에프씨 이동통신단말기간 카드 결제를 수행하는 모바일 카드 결제 시스템 및 방법
US11694187B2 (en) 2019-07-03 2023-07-04 Capital One Services, Llc Constraining transactional capabilities for contactless cards

Also Published As

Publication number Publication date
EP4083887A1 (en) 2022-11-02
US20220286449A1 (en) 2022-09-08
JP7509923B2 (ja) 2024-07-02
EP4083887A4 (en) 2023-07-26
CN115668255A (zh) 2023-01-31

Similar Documents

Publication Publication Date Title
KR102525471B1 (ko) 인증용가상코드를 이용한 사용자 접근 관리 방법 및 시스템
CN101751629B (zh) 使用变化唯一值的多因素认证的方法和系统
CN108804906B (zh) 一种用于应用登陆的系统和方法
US20220094678A1 (en) Systems and methods for user authentication based on multiple devices
US10142308B1 (en) User authentication
CN113273133B (zh) 用于通信通道交互期间的自动认证的令牌管理层
US10885507B1 (en) Transferring a customer from an ATM transaction to a device-based transaction during an error state, and applications thereof
KR102363940B1 (ko) 인증용가상코드를 이용한 사용자 인증 방법 및 시스템
KR20110002968A (ko) 생체 인증을 이용한 금융 거래 서비스 제공 방법 및 시스템과 그를 위한 휴대용 저장 장치
KR20230008657A (ko) 다른 용도의 인증용가상코드 생성 방법 및 장치
KR20230030606A (ko) 카드 태깅 기반의 가상 보안 코드 생성 장치
JP2023527349A (ja) スマートカード装置、認証用仮想コード生成装置、これを用いた認証用仮想コード生成方法及び認証用仮想コード検証サーバ
KR102479730B1 (ko) 스마트 카드 장치, 인증용가상코드 생성 장치, 이를 이용한 인증용가상코드 생성 방법 및 인증용가상코드 검증 서버
KR102479731B1 (ko) 가상인증코드 기반의 절차 승인 장치 및 방법
KR20230096928A (ko) 스마트 카드 장치, 데이터 일치 여부 판단을 통해 가상보안코드를 생성하는 장치 및 그 방법
KR20150114358A (ko) 카드 접촉을 통한 사용자 인증 시스템 및 이의 실행 방법
JP7469490B2 (ja) 仮想認証コード基盤の手続き承認装置及びその方法
US20240020704A1 (en) Method for registering user in holderless card by using authentication virtual code
KR102499695B1 (ko) 블록 체인을 사용한 did 시스템 및 인증 방법
KR20170072654A (ko) 스마트 뱅킹 보안강화 장치 및 그 방법
KR20230131445A (ko) 인증용 가상코드 기반의 인증을 통해 해킹을 방지하기 위한 장치 및 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221124

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230313

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20230315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230313

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240305

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240620