JP7509148B2 - DATA PROCESSING APPARATUS, DATA PROCESSING METHOD, AND PROGRAM - Google Patents
DATA PROCESSING APPARATUS, DATA PROCESSING METHOD, AND PROGRAM Download PDFInfo
- Publication number
- JP7509148B2 JP7509148B2 JP2021536928A JP2021536928A JP7509148B2 JP 7509148 B2 JP7509148 B2 JP 7509148B2 JP 2021536928 A JP2021536928 A JP 2021536928A JP 2021536928 A JP2021536928 A JP 2021536928A JP 7509148 B2 JP7509148 B2 JP 7509148B2
- Authority
- JP
- Japan
- Prior art keywords
- chip
- counter value
- data processing
- processing device
- authentication
- 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
Links
- 238000003672 processing method Methods 0.000 title claims description 6
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 title 1
- 238000000034 method Methods 0.000 claims description 26
- 230000005540 biological transmission Effects 0.000 claims description 15
- 238000010586 diagram Methods 0.000 description 21
- 238000004891 communication Methods 0.000 description 15
- 238000012986 modification Methods 0.000 description 12
- 230000004048 modification Effects 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 238000000605 extraction Methods 0.000 description 5
- 230000005021 gait Effects 0.000 description 4
- VIEYMVWPECAOCY-UHFFFAOYSA-N 7-amino-4-(chloromethyl)chromen-2-one Chemical compound ClCC1=CC(=O)OC2=CC(N)=CC=C21 VIEYMVWPECAOCY-UHFFFAOYSA-N 0.000 description 3
- 238000013478 data encryption standard Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 210000003462 vein Anatomy 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000010267 cellular communication Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 208000016339 iris pattern Diseases 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
- 210000004243 sweat Anatomy 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3231—Biological data, e.g. fingerprint, voice or retina
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting 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/72—Protecting 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 in cryptographic circuits
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/12—Transmitting and receiving encryption devices synchronised or initially set up in a particular manner
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/107—License processing; Key processing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Bioethics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Biomedical Technology (AREA)
- Image Input (AREA)
- Collating Specific Patterns (AREA)
Description
本開示は、データ処理装置、データ処理方法、およびプログラムに関し、特に、生体認証の認証結果を安全に伝達することができるようにするデータ処理装置、データ処理方法、およびプログラムに関する。 The present disclosure relates to a data processing device, a data processing method, and a program, and in particular to a data processing device, a data processing method, and a program that enable secure transmission of biometric authentication results.
従来、人間の指紋や顔、虹彩パターンや静脈パターンなどの生体情報を用いて個人を特定する生体認証技術が多く提案されている。 Traditionally, many biometric authentication technologies have been proposed to identify individuals using biometric information such as human fingerprints, faces, iris patterns, and vein patterns.
例えば、特許文献1には、通信端末装置が、生体認証が成功したことを示すメッセージを暗号化してサーバに通知し、サーバが、そのメッセージの通知を受けた場合にサービスの提供を開始する通信システムが開示されている。For example,
一方で、近年、スマートフォンやウェアラブル端末など、生体認証を行うことで動作するデバイスがある。 On the other hand, in recent years, there are devices such as smartphones and wearable devices that operate by performing biometric authentication.
しかしながら、従来、このようなデバイス内で、認証用チップでの生体認証の認証結果を、別の制御用チップに伝達する際に、データの改ざんやリプレイ攻撃を受ける可能性が少なからずあった。However, in the past, when transmitting the biometric authentication results from an authentication chip in such devices to a separate control chip, there was a significant risk of data tampering or replay attacks.
本開示は、このような状況に鑑みてなされたものであり、チップ間で、生体認証の認証結果を安全に伝達することができるようにするものである。 This disclosure has been made in light of these circumstances and makes it possible to securely transmit biometric authentication results between chips.
本開示のデータ処理装置は、第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップとを備え、前記第1のチップは、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、前記第2のチップは、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、前記第1のチップと前記第2のチップは、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取るデータ処理装置である。The data processing device disclosed herein includes a first chip that performs encryption and decryption using a first common key and holds a first counter value, and a second chip that performs encryption and decryption using the first common key and holds a second counter value, the first chip encrypts a command and the first counter value and transmits them to the second chip, the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip, and the first chip and the second chip are data processing devices that synchronize the first counter value and the second counter value each time data is transmitted to and received from the other chip.
本開示のデータ処理方法は、データ処理装置は、第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップとを備え、前記第1のチップが、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、前記第2のチップが、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、前記第1のチップと前記第2のチップが、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取るデータ処理方法である。The data processing method disclosed herein is a data processing device comprising a first chip that performs encryption and decryption using a first common key and holds a first counter value, and a second chip that performs encryption and decryption using the first common key and holds a second counter value, the first chip encrypts a command and the first counter value and transmits them to the second chip, the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip, and the first chip and the second chip synchronize the first counter value and the second counter value each time data is transmitted to and received from each other.
本開示のプログラムは、コンピュータを、第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップとして機能させるためのプログラムであって、前記第1のチップは、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、前記第2のチップは、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、前記第1のチップと前記第2のチップは、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取るプログラムである。The program disclosed herein is a program for causing a computer to function as a first chip that performs encryption and decryption using a first common key and holds a first counter value, and a second chip that performs encryption and decryption using the first common key and holds a second counter value, in which the first chip encrypts a command and the first counter value and transmits them to the second chip, the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip, and the first chip and the second chip synchronize the first counter value and the second counter value each time data is transmitted to and received from each other.
本開示においては、コマンドと第1のカウンタ値が暗号化されて第2のチップに送信され、復号されたコマンドの実行結果と第2のカウンタ値が暗号化されて第1のチップに送信され、前記第1のチップと前記第2のチップにおいて、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期が取られる。In the present disclosure, a command and a first counter value are encrypted and transmitted to a second chip, the execution result of the decrypted command and the second counter value are encrypted and transmitted to a first chip, and the first counter value and the second counter value are synchronized between the first chip and the second chip each time data is transmitted to and received from the other chip.
以下、本開示を実施するための形態(以下、実施の形態とする)について説明する。なお、説明は以下の順序で行う。The following describes the form for implementing the present disclosure (hereinafter, referred to as the embodiment). The description will be given in the following order:
1.データ処理装置の構成例
2.指紋認証装置の構成例
3.指紋認証装置の状態と動作
3-1.指紋認証装置の初期状態
3-2.鍵の共有と保存
3-3.電源投入時の鍵共有
3-4.認証用テンプレートの生成と暗号化
3-5.認証結果の暗号化と伝達
4.変形例
4-1.第1の変形例
4-2.第2の変形例
4-3.第3の変形例
4-4.第4の変形例
4-5.第5の変形例
4-6.第6の変形例
1. Example of the configuration of a data processing device 2. Example of the configuration of a fingerprint authentication device 3. States and operations of the fingerprint authentication device 3-1. Initial state of the fingerprint authentication device 3-2. Sharing and saving keys 3-3. Sharing keys at power-on 3-4. Generating and encrypting authentication templates 3-5. Encrypting and transmitting authentication results 4. Modifications 4-1. First modification 4-2. Second modification 4-3. Third modification 4-4. Fourth modification 4-5. Fifth modification 4-6. Sixth modification
<1.データ処理装置の構成例>
図1は、本開示のデータ処理装置の構成例を示すブロック図である。
1. Example of the configuration of a data processing device
FIG. 1 is a block diagram showing an example of the configuration of a data processing device according to the present disclosure.
図1に示されるデータ処理装置10は、スマートフォンやウェアラブル端末、パーソナルコンピュータ、AR(Augmented Reality)グラスやVR(Virtual Reality)グラスなど、生体認証を行うことで動作するデバイスの一部を構成する。生体認証には、指紋認証や顔認証、虹彩認証や静脈認証、さらには歩容認証などが含まれる。例えば、スマートフォンにおいては、ユーザがスマートフォンを利用する際にユーザ本人の認証が行われ、ウェアラブル端末においては、ユーザがウェアラブル端末を装着する際にユーザ本人の認証が行われる。
The
データ処理装置10は、第1のチップ11、第2のチップ12、およびセンサ13を備えている。
The
第1のチップ11は、第2のチップ12などを制御する制御用チップであり、例えばCPU(Central Processing Unit)や、CPUを含むSOC(System-on-a-Chip)などで構成される。また、第1のチップ11は、SE(Secure Element)や、SEを含むCPUで構成されてもよい。The
第2のチップ12は、センサ13からの特徴情報に基づいて生体認証を行う認証用チップであり、例えばFPGA(Field-Programmable Gate Array)やCPUで構成される。The
センサ13は、生体情報を含むセンサデータを取得するセンサであり、例えば撮像面上にマイクロレンズアレイが配置されたイメージセンサなどで構成される。生体情報には、例えば加速度、角速度、方位、高度、照度、温度、気圧、脈拍、発汗、脳波、触覚、嗅覚、味覚、その他の生体情報、感情、位置情報などが、外部サービスと連携する他のシステムに含まれるセンサによって検出され、外部サービスに投稿されることによって生成された情報が含まれてもよい。また、センサ13は、マイクなどで構成されることで、センサデータとして音声を取得してもよい。さらに、センサ13は、屋内または屋外の位置を検出する位置検出手段を含んでもよい。位置検出手段は、具体的には、GNSS(Global Navigation Satellite System)受信機、例えばGPS(Global Positioning System)受信機、GLONASS(Global Navigation Satellite System)受信機、BDS(BeiDou Navigation Satellite System)受信機および/または通信装置などを含みうる。通信装置は、例えばWi-fi(登録商標)、MIMO(Multi-Input Multi-Output)、セルラー通信(例えば携帯基地局を使った位置検出、フェムトセル)、または近距離無線通信(例えばBluetooth(登録商標)、BLE(Bluetooth Low Energy))などの技術を利用して位置を検出する。The
第1のチップ11と第2のチップ12は、それぞれ同一の共通鍵を用いた認証付き暗号化方式による暗号化と復号を行いながら、互いにデータの送受信を行う。共通鍵は、工場などであらかじめ組み込まれる。The
また、第1のチップ11は、第1のカウンタ値(CTR1)を保持し、第2のチップ12は、第2のカウンタ値(CTR2)を保持している。そして、第1のチップ11と第2のチップ12は、相手とのデータの送受信の度に、カウンタ値CTR1とカウンタ値CTR2の同期を取る。In addition, the
具体的には、第1のチップ11と第2のチップ12は、相手からのデータの受信の後、復号したカウンタ値CTR1とカウンタ値CTR2の一致判定を行う。そして、第1のチップ11と第2のチップ12は、一致判定の後、および、相手へのデータの送信の後、それぞれが保持するカウンタ値CTR1またはカウンタ値CTR2を更新する。Specifically, after receiving data from the other, the
例えば、第1のチップ11は、共通鍵を用いて、カウンタ値CTR1と、第2のチップ12に実行させるコマンドを暗号化して第2のチップ12に送信する。その後、第1のチップ11は、カウンタ値CTR1を1インクリメントする。For example, the
第2のチップ12は、共通鍵を用いて、第1のチップ11からのカウンタ値CTR1とコマンドの検証と復号を行い、復号したカウンタ値CTR1と保持しているカウンタ値CTR2の一致判定を行う。カウンタ値CTR1とカウンタ値CTR2が一致していれば、第2のチップ12は、カウンタ値CTR2を1インクリメントし、復号したコマンドを実行する。具体的には、第2のチップ12は、復号したコマンドに基づいて生体認証を行う。また、カウンタ値CTR1とカウンタ値CTR2が一致していなければ、第2のチップ12は、処理を終了する。The
第2のチップ12は、共通鍵を用いて、インクリメントしたカウンタ値CTR2と、コマンドの実行結果(生体認証の認証結果)を暗号化して第1のチップ11に送信する。その後、第2のチップ12は、カウンタ値CTR2をさらに1インクリメントする。The
第1のチップ11は、共通鍵を用いて、第2のチップ12からのカウンタ値CTR2と生体認証の認証結果の検証と復号を行い、復号したカウンタ値CTR2と保持しているカウンタ値CTR1の一致判定を行う。カウンタ値CTR1とカウンタ値CTR2が一致していれば、第1のチップ11は、カウンタ値CTR1を1インクリメントする。また、カウンタ値CTR1とカウンタ値CTR2が一致していなければ、第1のチップ11は、処理を終了する。The
このように、第1のチップ11によるコマンドの送信から、第2のチップ12による認証結果の送信までの間で、カウンタ値CTR1とカウンタ値CTR2は、2ずつ加算されるように同期が取られる。
In this way, the counter values CTR1 and CTR2 are synchronized so that they are incremented by 2 between the transmission of a command by the
なお、生体認証の認証結果は、図示せぬSEに供給され、例えば、NFC(Near Field Communication)による決済処理などに利用される。The results of the biometric authentication are supplied to an SE (not shown) and used, for example, for payment processing via NFC (Near Field Communication).
以上の構成によれば、データ処理装置10内で、第2のチップ12での生体認証の認証結果を、第1のチップ11に伝達する際に、データの改ざんを防止するとともに、リプレイ攻撃に対する耐性を高めることができる。すなわち、チップ間で、生体認証の認証結果を安全に伝達することが可能となる。このとき、生体認証の認証結果のみが、安全性を保ちつつ、高速かつ少ない通信量で伝達されるようになる。
According to the above configuration, when the authentication result of the biometric authentication in the
以下においては、本開示に係る技術を指紋認証装置に適用した実施の形態について説明する。 Below, we describe an embodiment in which the technology disclosed herein is applied to a fingerprint authentication device.
<2.指紋認証装置の構成例>
図2は、本開示の実施の形態に係る指紋認証装置の構成例を示す図である。
2. Example of the fingerprint authentication device configuration
FIG. 2 is a diagram illustrating an example of a configuration of a fingerprint authentication device according to an embodiment of the present disclosure.
図2に示される指紋認証装置100は、例えば、ウォッチ型のウェアラブル端末などの、生体認証を行うことで動作するデバイスの一部を構成する。The
指紋認証装置100は、CPU110、FPGA120、センサモジュール130、RAM(Random Access Memory)140、不揮発性メモリ150、および設定用ROM(Read Only Memory)160を備えている。また、CPU110には、SE170とRF通信部180が接続されている。The
CPU110は、図1の第1のチップ11に対応し、FPGA120などを制御する制御用チップとして構成される。CPU110は、FPGA120、SE170、RF通信部180との間で、制御信号をやり取りする。CPU110は、カウンタ値CTR1を保持している。1 and is configured as a control chip that controls the
FPGA120は、図1の第2のチップ12に対応し、センサモジュール130からの映像データに基づいて生体認証を行う認証用チップとして構成される。FPGA120は、センサモジュール130との間で、制御信号をやり取りする。FPGA120は、カウンタ値CTR2を保持している。1 and is configured as an authentication chip that performs biometric authentication based on video data from the
FPGA120は、演算部121、抽出部122、および照合部123を備えている。
The
演算部121は、設定用ROM160から提供される演算IP(Intellectual Property)コアであり、指紋認証アルゴリズムやFPGA制御コードを含んでいる。The
抽出部122は、演算部121の指紋認証アルゴリズムに基づいて、イメージセンサ131から供給される映像データから、認証対象となる手指の指紋の特徴量データを抽出する。イメージセンサ131からの映像データと、抽出された特徴量データは、RAM140において、映像データ141と特徴量データ142として一時的に記憶される。Based on the fingerprint authentication algorithm of the
照合部123は、演算部121の指紋認証アルゴリズムに基づいて、抽出部122により抽出された特徴量データを、不揮発性メモリ150に記憶されている認証用テンプレート151と照合する。照合の結果は、指紋認証の認証結果として、CPU110を介して、SE170に供給される。Based on the fingerprint authentication algorithm of the
センサモジュール130は、イメージセンサ131とLEDライト132から構成される。イメージセンサ131は、認証対象となる手指の指紋を撮像し、得られた映像データをFPGA120に供給する。LEDライト132は、FPGA120からのLED電流に基づいて、認証対象となる手指の指紋に光を照射する。The
RAM140は、抽出部122からの映像データ141と特徴量データ142を一時的に記憶する。
The
不揮発性メモリ150は、あらかじめ生成された認証用テンプレート151を記憶する。認証用テンプレート151は、FPGA120の照合部123に読み出され、抽出部122によって抽出された特徴量データとの照合に用いられる。The non-volatile memory 150 stores a
設定用ROM160は、上述した演算IPコアを記憶し、演算部121に提供する。設定用ROM160には、必要に応じて、デバッグコントローラ161が接続される。The
SE170は、CPU110を介してFPGA120から供給された認証結果に基づいて、RF通信部180を介したNFCによる決済処理を行う。なお、SE170は、CPU110に内蔵されていてもよい。Based on the authentication result supplied from
以上のような構成により、指紋認証装置100は、指紋認証による決済処理を実行することができる。
With the above-described configuration, the
<3.指紋認証装置の状態と動作>
以下においては、上述した指紋認証装置100の状態と動作について説明する。
<3. Status and operation of fingerprint authentication device>
The states and operations of the above-mentioned
(3-1.指紋認証装置の初期状態)
図3は、工場における指紋認証装置100の初期状態を示す図である。
(3-1. Initial state of the fingerprint authentication device)
FIG. 3 is a diagram showing the initial state of the
図3以降で説明される指紋認証装置100においては、CPU110、FPGA120、イメージセンサ131、RAM140、不揮発性メモリ150、および設定用ROM160のみが示される。In the
図3の指紋認証装置100において、CPU110は、固有の識別情報IDCを保持している。
In the
一方、FPGA120は、ハードウェア情報として、固有の識別情報IDFを保持している。さらに、FPGA120は、設定情報として、設定用ROM160によって提供された共通鍵Kcommonを保持している。
On the other hand, the
(3-2.鍵の共有と保存)
次に、図4を参照して、工場内で行われる、CPU110とFPGA120における鍵の共有と保存の流れについて説明する。
(3-2. Sharing and storing keys)
Next, a flow of sharing and storing a key between the
CPU110は、ステップS11において、擬似乱数生成器(PRNG)により、共通鍵となる鍵K1を生成する。
In step S11, the
CPU110は、ステップS12において、保持している識別情報IDCとともに、生成した鍵K1をFPGA120に送信する。
In step S12, the
その後、CPU110は、ステップS13において、生成した鍵K1を保存する。
Thereafter, in step S13, the
一方、FPGA120は、ステップS21において、CPU110から送信された識別情報IDCと鍵K1を受信する。
On the other hand, the
その後、FPGA120は、ステップS22において、受信した識別情報IDCと鍵K1を、内部の不揮発領域に保存する。
Thereafter, in step S22, the
図5は、鍵K1の共有と保存が行われた後の指紋認証装置100の状態を示す図である。
FIG. 5 is a diagram showing the state of the
図5の指紋認証装置100においては、CPU110は、図3の状態に加えて、鍵K1を保持している。
In the
一方、FPGA120は、図3の状態に加えて、内部の不揮発領域に、CPU110の識別情報IDCと鍵K1を保持している。FPGA120は、指紋認証装置100の電源がOFFのときには、識別情報IDCと鍵K1のみを保持した状態となる。
3, the
なお、鍵K1は、CPU110が生成する以外にも、外部の装置によって生成され、CPU110とFPGA120に供給されるようにしてもよい。
Note that the key K 1 may be generated by an external device and supplied to the
(3-3.電源投入時の鍵共有)
次に、図6を参照して、電源投入時に行われる、CPU110とFPGA120における鍵共有の流れについて説明する。
(3-3. Key sharing at power-on)
Next, a flow of key sharing between the
FPGA120は、ステップS31において、内部の不揮発領域から鍵K1を読み出す。
In step S31, the
一方、CPU110も、ステップS41において、鍵K1を読み出す。
On the other hand, the
FPGA120とCPU110は、それぞれステップS32,S42において、鍵K1に基づいて、鍵共有を実行する。例えば、鍵K1を共通鍵とした鍵共有プロトコル(ISO/IEC 11770-2)を用いて鍵共有が実行される。このとき、FPGA120とCPU110との間では、ISO/IEC 9798-2をベースとした相互認証も行われる。なお、鍵共有プロトコルは、上述したものに限られない。
In steps S32 and S42, the
ステップS32,S42の結果、FPGA120とCPU110との間で、鍵K2が共有される。
As a result of steps S32 and S42, the key K 2 is shared between the
FPGA120は、ステップS33において、共有された鍵K2を、内部のRAM領域に保存する。
In step S33, the
その後、FPGA120は、ステップS34において、内部に保持しているカウンタ値CTR2を0にセット(リセット)する。Then, in step S34,
一方、CPU110は、ステップS43において、共有された鍵K2に保存する。
On the other hand, in step S43, the
その後、CPU110は、ステップS44において、内部に保持しているカウンタ値CTR1を0にセット(リセット)する。Then, in step S44, the
図7は、電源投入時の鍵共有が行われた後の指紋認証装置100の状態を示す図である。
Figure 7 shows the state of the
図7の指紋認証装置100においては、CPU110は、図5の状態に加えて、鍵K2と、0にセットされたカウンタ値CTR1を保持している。
In the
一方、FPGA120は、図5の状態に加えて、内部のRAM領域に、鍵K2と、0にセットされたカウンタ値CTR2を保持している。
On the other hand, in addition to the state shown in FIG. 5, the
以上のようにして、指紋認証装置100においては、電源投入毎に鍵K2が新たに生成される。
In this manner, in the
(3-4.認証用テンプレートの生成と暗号化)
次に、図8を参照して、電源投入時に行われる、FPGA120における認証用テンプレートの生成と暗号化の流れについて説明する。図8の処理は、イメージセンサ131によってユーザの手指の指紋が撮像され、得られた映像データがFPGA120に供給されることで開始される。
(3-4. Generating and Encrypting an Authentication Template)
Next, a flow of generating and encrypting an authentication template in the
FPGA120は、ステップS51において、所定のアルゴリズムに基づいて、イメージセンサ131からの映像データから、手指の指紋の特徴量データを抽出することで、認証用テンプレートTを生成する。In step S51, the
FPGA120は、ステップS52において、AES(Advanced Encryption Standard)-CMAC(Cipher-based Message Authentication Code)アルゴリズムに基づいて、ストレージ用鍵KSTO=AES_CMAC(K1,IDF||IDC)を生成する。ストレージ用鍵KSTOの生成においては、鍵K1、および、FPGA120の識別情報IDFとCPU110の識別情報IDCを連結したデータIDF||IDCが用いられる。なお、ここでは、AES以外にも、DES(Data Encryption Standard)、トリプルDES,FEAL(the Fast Data Encipherment Algorithm),IDEA(International Data Encryption Algorithm)などの共通鍵ブロック暗号方式が用いられてもよい。また、CMAC以外にも、CBC-MAC(Cipher Block Chaining MAC),HMAC(Hash-based MAC)などのMACアルゴリズムが用いられてもよい。
In step S52, the
FPGA120は、ステップS53において、ストレージ用鍵KSTOを用いて、認証用テンプレートTを暗号化する。
In step S53, the
そして、FPGA120は、ステップS54において、暗号化された認証用テンプレートC2=AES_Enc(KSTO,T)を、不揮発性メモリ150に保存する。
Then, in step S54, the
図9は、認証用テンプレートの生成と暗号化が行われた後の指紋認証装置100の状態を示す図である。
Figure 9 shows the state of the
図9の指紋認証装置100においては、不揮発性メモリ150に、暗号化された認証用テンプレートC2が記憶されている。
In the
(3-5.認証結果の暗号化と伝達)
次に、図10を参照して、CPU110とFPGA120における認証結果の暗号化と伝達の流れについて説明する。図10の処理は、例えば、ウォッチ型のウェアラブル端末として構成される指紋認証装置100の装着時、センサモジュール130にユーザの手指がかざされたことが検知されることで開始される。
(3-5. Encryption and transmission of authentication results)
Next, a flow of encryption and transmission of authentication results in the
CPU110は、ステップS61において、FPGA120に生体認証(指紋認証)を実行させるコマンドcommandを生成し、共通鍵である鍵K2を用いた認証付き暗号化方式AEAD(Authenticated Encryption with Associated Data)とAESにより暗号化する。このとき、コマンドcommandとともに、カウンタ値CTR1も暗号化される。
In step S61, the
CPU110は、ステップS62において、コマンドcommandとカウンタ値CTR1が暗号化された暗号化データCOMを、FPGA120に送信する。In step S62, the
その後、CPU110は、ステップS63において、カウンタ値CTR1を1インクリメントする。
Then, in step S63, the
一方、FPGA120は、ステップS71において、CPU110からの暗号化データCOMを受信し、ステップS72において、共通鍵である鍵K2を用いて、暗号化データCOMの検証(改ざんされていないかの検証)と復号を行う。
On the other hand, the
FPGA120は、ステップS73において、復号したカウンタ値CTR1と、保持しているカウンタ値CTR2が一致するか否かを判定する。In step S73,
カウンタ値CTR1とカウンタ値CTR2が一致しないと判定された場合、ステップS74に進み、処理は異常終了する。 If it is determined that counter value CTR1 and counter value CTR2 do not match, processing proceeds to step S74 and terminates abnormally.
一方、カウンタ値CTR1とカウンタ値CTR2が一致すると判定された場合、ステップS75に進み、FPGA120は、カウンタ値CTR2を1インクリメントする。
On the other hand, if it is determined that the counter value CTR1 and the counter value CTR2 match, the process proceeds to step S75, and the
その後、FPGA120は、ステップS76において、不揮発性メモリ150に記憶されている認証用テンプレートC2を用いて、復号されたコマンドcommandを実行することで、認証対象となる手指の指紋認証を行う。具体的には、FPGA120は、イメージセンサ131により取得された映像データと、認証用テンプレートC2に基づいて、認証対象となる手指の指紋認証を行う。
Thereafter, in step S76, the
FPGA120は、ステップS77において、指紋認証の成功・失敗にかかわらず、その認証結果resultを生成し、共通鍵である鍵K2を用いたAEADとAESにより暗号化する。このとき、認証結果resultとともに、インクリメントされたカウンタ値CTR2も暗号化される。
In step S77, the
FPGA120は、ステップS78において、認証結果resultとカウンタ値CTR2が暗号化された暗号化データRESPを、CPU110に送信する。In step S78,
その後、FPGA120は、ステップS79において、カウンタ値CTR2を1インクリメントする。 Then, in step S79, FPGA120 increments counter value CTR2 by 1.
一方、CPU110は、ステップS64において、FPGA120からの暗号化データRESPを受信し、ステップS65において、共通鍵である鍵K2を用いて、暗号化データRESPの検証と復号する。
On the other hand, the
CPU110は、ステップS66において、復号したカウンタ値CTR2と、保持しているカウンタ値CTR1が一致するか否かを判定する。In step S66, the
カウンタ値CTR2とカウンタ値CTR1が一致しないと判定された場合、ステップS67に進み、処理は異常終了する。 If it is determined that counter value CTR2 and counter value CTR1 do not match, processing proceeds to step S67 and terminates abnormally.
一方、カウンタ値CTR2とカウンタ値CTR1が一致すると判定された場合、ステップS68に進み、CPU110は、カウンタ値CTR1を1インクリメントする。
On the other hand, if it is determined that counter value CTR2 and counter value CTR1 match, processing proceeds to step S68, in which
指紋認証の認証結果は、SE170に供給され、例えば、RF通信部180を介したNFCによる決済処理などに利用される。The results of the fingerprint authentication are supplied to SE170 and used, for example, for payment processing via NFC via the
以上の処理によれば、指紋認証装置100内で、FPGA120での指紋認証の認証結果を、CPU110に伝達する際に、認証付き暗号化方式による暗号化と復号が行われるとともに、カウンタ値の同期が取られる。これにより、データの改ざんを防止するとともに、リプレイ攻撃に対する耐性を高めることができる。すなわち、チップ間で、指紋認証の認証結果を安全に伝達することが可能となる。このとき、指紋認証の認証結果のみが、安全性を保ちつつ、高速かつ少ない通信量で伝達されるようになる。
According to the above process, when the authentication result of fingerprint authentication in
<4.変形例>
以下においては、上述した実施の形態の変形例について説明する。
4. Modifications
In the following, a modification of the above-described embodiment will be described.
(4-1.第1の変形例)
図11は、SE170のみが指紋認証の認証結果を知るようにした指紋認証装置100の構成例を示している。
(4-1. First Modified Example)
FIG. 11 shows an example of the configuration of a
図11の構成では、CPU110は認証結果を知る必要がないので、CPU110を単なる通信経路としてFPGA120からSE170に、直接、認証結果が伝達される。In the configuration of Figure 11, since the
この場合、図4の処理と同様にして、SE170とFPGA120において鍵K1の共有が行われる。その後、図6,8,10の処理と同様の処理が、SE170とFPGA120との間で行われる。
In this case, the key K1 is shared between the
このような構成によれば、より少ない手順で、例えば、RF通信部180を介したNFCによる決済処理が行われるようになる。
With this configuration, payment processing can be performed, for example, by NFC via the
(4-2.第2の変形例)
図12は、CPU110とSE170のそれぞれが指紋認証の認証結果を知るようにした指紋認証装置100の構成例を示している。
(4-2. Second Modified Example)
FIG. 12 shows an example of the configuration of a
図12の構成では、FPGA120からCPU110とSE170のそれぞれに、認証結果が伝達される。In the configuration of Figure 12, the authentication result is transmitted from
この場合、図4の処理に従って、CPU110とFPGA120において鍵K1の共有が行われる。その後、図6,8,10の処理が、CPU110とFPGA120との間で行われる。
In this case, the key K1 is shared between the
さらに、図4の処理と同様にして、SE170とFPGA120において、鍵K1とは異なる鍵K1’の共有が行われる。その後、図6,8,10の処理と同様の処理が、SE170とFPGA120との間で行われる。
4, a key K 1 ' different from the key K 1 is shared between the
このような構成によれば、CPU110とSE170のそれぞれに、指紋認証の認証結果を安全に伝達することが可能となる。
With this configuration, it is possible to securely transmit the fingerprint authentication results to both the
(4-3.第3の変形例)
図13は、CPU110とSE170のそれぞれが指紋認証の認証結果を知るようにした指紋認証装置100の他の構成例を示している。
(4-3. Third Modified Example)
FIG. 13 shows another example of the configuration of the
図13の構成では、FPGA120からCPU110に、認証結果が伝達される。その後、CPU110からSE170に、CPU110によって復号された認証結果が伝達される。In the configuration of FIG. 13, the authentication result is transmitted from
この場合、図4の処理に従って、CPU110とFPGA120において鍵K1の共有が行われる。その後、図6,8,10の処理が、CPU110とFPGA120との間で行われる。
In this case, the key K1 is shared between the
さらに、図4の処理と同様にして、SE170とCPU110において、鍵K1とは異なる鍵K1’の共有が行われる。その後、図6,8,10の処理と同様の処理が、SE170とCPU110との間で行われる。
4, a key K 1 ' different from key K 1 is shared between
このような構成によっても、CPU110とSE170のそれぞれに、指紋認証の認証結果を安全に伝達することが可能となる。
With this configuration, it is possible to securely transmit the fingerprint authentication results to both the
(4-4.第4の変形例)
以上においては、例えば、ウェアラブル端末の装着時にユーザ本人の認証を行うことを想定した構成について説明してきた。
(4-4. Fourth Modified Example)
The above has described a configuration assuming that authentication of the user is performed when the wearable terminal is worn, for example.
これに限らず、例えば、図14に示されるように、SE170において認証結果が必要になった際に、SE170が、FPGA120に対して認証結果を問合わせ、FPGA120が、SE170に対して、保持している認証結果を回答するようにしてもよい。Without being limited to this, for example, as shown in FIG. 14, when an authentication result is required in SE170, SE170 may inquire about the authentication result from FPGA120, and FPGA120 may respond to SE170 with the authentication result that it holds.
この構成は、ウェアラブル端末を、決済時に一度POS端末にタッチさせることでユーザ本人の認証を行い、決済額が一定額より高額である場合には、再度POS端末にタッチさせることでユーザ本人の認証を行う場合などに適用することができる。このような構成によれば、認証の安全性をさらに高めることが可能となる。This configuration can be used in cases where the wearable device is touched once to a POS terminal at the time of payment to authenticate the user, and then touched to the POS terminal again to authenticate the user if the payment amount is higher than a certain amount. This configuration can further increase the security of authentication.
(4-5.第5の変形例)
以上においては、同一デバイス内における最低限のセキュリティを担保した暗号化と復号を行う構成について説明してきたが、本開示に係る技術は、同一デバイス内でなく、ネットワークを介して暗号化と復号を行う構成にも適用できる。
(4-5. Fifth Modification)
The above describes a configuration in which encryption and decryption are performed within the same device while ensuring a minimum level of security, but the technology disclosed herein can also be applied to a configuration in which encryption and decryption are performed over a network rather than within the same device.
図15は、本開示に係る技術を、ネットワークを介して接続されたサーバとデバイスに適用したシステムの構成例を示している。 Figure 15 shows an example system configuration in which the technology disclosed herein is applied to a server and a device connected via a network.
図15に示されるシステムにおいては、サーバ210と、CPU110、FPGA120、およびイメージセンサ131を備えるデバイス220とが、ネットワークNWを介して接続されている。In the system shown in FIG. 15, a
図15の構成では、デバイス220からサーバ210に、認証結果が伝達される。サーバ210は、デバイス220からの認証結果を利用した処理を実行する。In the configuration of FIG. 15, the authentication result is transmitted from the
この場合、図4の処理と同様にして、サーバ210とデバイス220(FPGA120)において鍵K1の共有が行われる。その後、図6,8,10の処理と同様の処理が、サーバ210とデバイス220との間で行われる。
In this case, the key K1 is shared between the
(4-6.第6の変形例)
本開示に係る技術は、例えば指紋認証のような、1回のみの認証を行う構成に限らず、例えば歩容認証のような、継続的に複数回の認証を行う構成に適用することもできる。具体的には、FPGA120において、数秒間に1回、加速度センサから得られるセンサデータに基づいて認証が行われ、認証結果がCPU110に送信されるようにする。
(4-6. Sixth Modification)
The technology according to the present disclosure is not limited to a configuration in which authentication is performed only once, such as fingerprint authentication, but can also be applied to a configuration in which authentication is performed continuously multiple times, such as gait authentication. Specifically, in the
図16は、継続的に複数回の認証を行う構成において、認証結果の暗号化と伝達の流れについて説明する図である。 Figure 16 is a diagram explaining the process of encrypting and transmitting authentication results in a configuration in which multiple authentications are performed continuously.
なお、図16のステップS81,S91より前には、図10のステップS71乃至S75,S61乃至S63の処理と同様の処理が実行される。また、図16のステップS81乃至S84,S91乃至S95の処理は、図10のステップS76乃至S79,S64乃至S68の処理と同様である。 Note that before steps S81 and S91 in Figure 16, processing similar to the processing of steps S71 to S75 and S61 to S63 in Figure 10 is executed. Also, the processing of steps S81 to S84 and S91 to S95 in Figure 16 is similar to the processing of steps S76 to S79 and S64 to S68 in Figure 10.
図16の処理では、FPGA120が、ステップS85において、認証結果を必要回数送信したか否かを判定する。認証結果が必要回数送信されるまで、FPGA120は、ステップS81乃至S84を繰り返し、CPU110は、ステップS91乃至S95を繰り返す。In the process of FIG. 16, in step S85,
すなわち、FPGA120は、復号したコマンドに基づいて、複数回の生体認証を行う。そして、FPGA120は、1回毎に生体認証の認証結果を暗号化して、複数回、CPU110に送信する。That is, the
このとき、FPGA120は、CPU110からのコマンドに含まれる送信回数だけ、認証結果をCPU110に送信してもよいし、CPU110から送信終了コマンドを受信するまで、認証結果をCPU110に送信してもよい。また、FPGA120は、送信終了メッセージをCPU110に送信することで、認証結果の送信を停止するようにしてもよい。At this time,
以上の処理によれば、歩容認証を行うデバイス内でも、データの改ざんを防止するとともに、リプレイ攻撃に対する耐性を高めることができ、チップ間で、歩容認証の認証結果を安全に伝達することが可能となる。 The above processing makes it possible to prevent data tampering even within the device performing gait authentication and to increase resistance to replay attacks, making it possible to safely transmit gait authentication results between chips.
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。The above-mentioned series of processes can be executed by hardware or by software. When the series of processes are executed by software, the programs that make up the software are installed on a computer. Here, computers include computers that are built into dedicated hardware, and general-purpose personal computers, for example, that can execute various functions by installing various programs.
上述した指紋認証装置100を含むコンピュータでは、CPU110とFPGA120が、図示せぬ記憶部や不揮発性メモリ150に記憶されているプログラムをロードして実行することにより、上述した一連の処理が行われる。In a computer including the above-mentioned
コンピュータ(CPU110とFPGA120)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディアに記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。The program executed by the computer (
コンピュータでは、プログラムは、リムーバブルメディアをドライブに装着することにより、記憶部や不揮発性メモリ150にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、記憶部や不揮発性メモリ150にインストールすることができる。その他、プログラムは、設定用ROM160に、あらかじめインストールしておくことができる。In a computer, a program can be installed in the storage unit or non-volatile memory 150 by inserting a removable medium into a drive. The program can also be installed in the storage unit or non-volatile memory 150 via a wired or wireless transmission medium. Alternatively, the program can be pre-installed in the
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。 The program executed by the computer may be a program in which processing is performed chronologically in the order described in this specification, or a program in which processing is performed in parallel or at the required timing, such as when called.
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。In this specification, the steps of describing a program to be recorded on a recording medium include not only processes that are performed chronologically in the order described, but also processes that are not necessarily performed chronologically but are executed in parallel or individually.
本開示に係る技術の実施の形態は、上述した実施の形態に限定されるものではなく、本開示に係る技術の要旨を逸脱しない範囲において種々の変更が可能である。The embodiments of the technology disclosed herein are not limited to the embodiments described above, and various modifications are possible without departing from the gist of the technology disclosed herein.
また、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。 Furthermore, the effects described in this specification are merely examples and are not limiting, and other effects may also exist.
さらに、本開示に係る技術は以下のような構成をとることができる。
(1)
第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、
前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップと
を備え、
前記第1のチップは、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、
前記第2のチップは、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、
前記第1のチップと前記第2のチップは、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取る
データ処理装置。
(2)
前記第1のチップと前記第2のチップは、
前記相手からの前記データの受信の後、復号した前記第1のカウンタ値と前記第2のカウンタ値の一致判定を行い、
前記一致判定の後、および、前記相手への前記データの送信の後、それぞれが保持する前記第1のカウンタ値または前記第2のカウンタ値を更新する
(1)に記載のデータ処理装置。
(3)
前記第1のチップと前記第2のチップは、前記一致判定の結果、前記第1のカウンタ値と前記第2のカウンタ値が一致した場合に処理を続行し、一致しない場合には処理を終了する
(2)に記載のデータ処理装置。
(4)
前記第2のチップは、
復号した前記コマンドに基づいて生体認証を行い、
前記生体認証の認証結果を暗号化して前記第1のチップに送信する
(1)乃至(3)のいずれかに記載のデータ処理装置。
(5)
前記第1のチップと前記第2のチップは、認証付き暗号化方式による暗号化と復号を行う
(4)に記載のデータ処理装置。
(6)
前記第1のチップと前記第2のチップは、前記データ処理装置の電源投入時に、それぞれが保持する第2の共通鍵に基づいて前記第1の共通鍵を共有するとともに、それぞれが保持する前記第1のカウンタ値と前記第2のカウンタ値をリセットする
(4)に記載のデータ処理装置。
(7)
前記第1のチップと前記第2のチップは、所定の鍵共有プロトコルを用いて前記第1の共通鍵を共有する
(6)に記載のデータ処理装置。
(8)
前記第2のチップは、前記第2の共通鍵に基づいて暗号化した認証用テンプレートを用いて、前記生体認証を行う
(6)または(7)に記載のデータ処理装置。
(9)
生体情報を含むセンサデータを取得するセンサをさらに備え、
前記第2のチップは、前記センサにより取得された前記センサデータと、前記認証用テンプレートに基づいて、前記生体についての前記生体認証を行う
(8)に記載のデータ処理装置。
(10)
前記第2の共通鍵は、前記第1のチップにより擬似乱数生成器を用いて生成され、前記第2のチップに送信されることで、前記第1のチップと前記第2のチップに保持される
(6)乃至(9)のいずれかに記載のデータ処理装置。
(11)
前記第1のチップは、CPU(Central Processing Unit)により構成される
(4)乃至(10)のいずれかに記載のデータ処理装置。
(12)
前記第1のチップは、SE(Secure Element)により構成される
(4)乃至(10)のいずれかに記載のデータ処理装置。
(13)
第3の共通鍵を用いた暗号化と復号を行う第3のチップをさらに備え、
前記第1のチップは、復号した前記認証結果を前記第3の共通鍵を用いて暗号化して前記第3のチップに送信する
(4)乃至(10)のいずれかに記載のデータ処理装置。
(14)
前記第1のチップは、CPU(Central Processing Unit)により構成され、
前記第3のチップは、SE(Secure Element)により構成される
(13)に記載のデータ処理装置。
(15)
前記第2のチップは、
復号した前記コマンドに基づいて、複数回の前記生体認証を行い、
1回毎に前記生体認証の認証結果を暗号化して、複数回、前記第1のチップに送信する
(4)に記載のデータ処理装置。
(16)
前記第2のチップは、前記コマンドに含まれる送信回数だけ、前記認証結果を前記第1のチップに送信する
(15)に記載のデータ処理装置。
(17)
前記第2のチップは、前記第1のチップから送信終了コマンドを受信するまで、前記認証結果を前記第1のチップに送信する
(15)に記載のデータ処理装置。
(18)
前記第2のチップは、送信終了メッセージを前記第1のチップに送信することで、前記認証結果の送信を停止する
(15)に記載のデータ処理装置。
(19)
データ処理装置は、
第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、
前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップと
を備え、
前記第1のチップが、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、
前記第2のチップが、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、
前記第1のチップと前記第2のチップが、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取る
データ処理方法。
(20)
コンピュータを、
第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、
前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップと
して機能させるためのプログラムであって、
前記第1のチップは、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、
前記第2のチップは、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、
前記第1のチップと前記第2のチップは、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取る
プログラム。
Furthermore, the technology according to the present disclosure can have the following configuration.
(1)
a first chip that performs encryption and decryption using a first common key and stores a first counter value;
a second chip that performs encryption and decryption using the first common key and stores a second counter value;
the first chip encrypts a command and the first counter value and transmits them to the second chip;
the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip;
A data processing device, wherein the first chip and the second chip synchronize the first counter value and the second counter value each time data is transmitted to and received from the other chip.
(2)
The first chip and the second chip
After receiving the data from the other party, a match determination is performed between the decrypted first counter value and the decrypted second counter value;
The data processing device according to any one of
(3)
The data processing device according to claim 2, wherein the first chip and the second chip continue processing if the first counter value and the second counter value match as a result of the match determination, and terminate processing if they do not match.
(4)
The second chip includes:
performing biometric authentication based on the decrypted command;
The data processing device according to any one of (1) to (3), further comprising: a data processing device that encrypts a result of the biometric authentication and transmits the encrypted result to the first chip.
(5)
The data processing device according to any one of
(6)
The data processing device according to claim 4, wherein the first chip and the second chip share the first common key based on a second common key held by each of them when the data processing device is powered on, and reset the first counter value and the second counter value held by each of them.
(7)
The data processing device according to (6), wherein the first chip and the second chip share the first common key by using a predetermined key sharing protocol.
(8)
The data processing device according to (6) or (7), wherein the second chip performs the biometric authentication using an authentication template encrypted based on the second common key.
(9)
Further comprising a sensor for acquiring sensor data including biological information;
The data processing device according to (8), wherein the second chip performs the biometric authentication on the living body based on the sensor data acquired by the sensor and the authentication template.
(10)
The data processing device according to any one of (6) to (9), wherein the second common key is generated by the first chip using a pseudorandom number generator, and transmitted to the second chip, so that the second common key is stored in the first chip and the second chip.
(11)
The data processing device according to any one of (4) to (10), wherein the first chip is configured by a CPU (Central Processing Unit).
(12)
The data processing device according to any one of (4) to (10), wherein the first chip is configured by a SE (Secure Element).
(13)
a third chip that performs encryption and decryption using a third common key;
The data processing device according to any one of (4) to (10), wherein the first chip encrypts the decrypted authentication result by using the third common key and transmits the encrypted result to the third chip.
(14)
The first chip is configured with a CPU (Central Processing Unit),
The data processing device according to (13), wherein the third chip is configured by a SE (Secure Element).
(15)
The second chip includes:
performing the biometric authentication a plurality of times based on the decrypted command;
The data processing device according to claim 4, further comprising: encrypting a result of the biometric authentication each time and transmitting the encrypted result to the first chip a plurality of times.
(16)
The data processing device according to any one of
(17)
The data processing device according to any one of
(18)
The data processing device according to any one of
(19)
The data processing device comprises:
a first chip that performs encryption and decryption using a first common key and stores a first counter value;
a second chip that performs encryption and decryption using the first common key and stores a second counter value;
the first chip encrypts a command and the first counter value and transmits them to the second chip;
the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip;
A data processing method, wherein the first chip and the second chip synchronize the first counter value and the second counter value each time the first chip transmits or receives data to or from the other chip.
(20)
Computer,
a first chip that performs encryption and decryption using a first common key and stores a first counter value;
a program for causing a second chip to function as a second chip that performs encryption and decryption using the first common key and holds a second counter value,
the first chip encrypts a command and the first counter value and transmits them to the second chip;
the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip;
A program for causing the first chip and the second chip to synchronize the first counter value with the second counter value every time data is transmitted to and received from the other chip.
10 データ処理装置, 11 第1のチップ, 12 サーバ, 13 センサ, 100 指紋認証装置, 110 CPU, 120 FPGA, 131 イメージセンサ, 140 RAM, 150 不揮発性メモリ, 170 SE, 180 RF通信部10 Data processing device, 11 First chip, 12 Server, 13 Sensor, 100 Fingerprint authentication device, 110 CPU, 120 FPGA, 131 Image sensor, 140 RAM, 150 Non-volatile memory, 170 SE, 180 RF communication unit
Claims (20)
前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップと
を備え、
前記第1のチップは、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、
前記第2のチップは、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、
前記第1のチップと前記第2のチップは、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取る
データ処理装置。 a first chip that performs encryption and decryption using a first common key and stores a first counter value;
a second chip that performs encryption and decryption using the first common key and stores a second counter value;
the first chip encrypts a command and the first counter value and transmits them to the second chip;
the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip;
A data processing device, wherein the first chip and the second chip synchronize the first counter value and the second counter value each time data is transmitted to and received from the other chip.
前記相手からの前記データの受信の後、復号した前記第1のカウンタ値と前記第2のカウンタ値の一致判定を行い、
前記一致判定の後、および、前記相手への前記データの送信の後、それぞれが保持する前記第1のカウンタ値または前記第2のカウンタ値を更新する
請求項1に記載のデータ処理装置。 The first chip and the second chip
After receiving the data from the other party, a match determination is performed between the decrypted first counter value and the decrypted second counter value;
The data processing device according to claim 1 , wherein after the match determination and after the data is transmitted to the other party, the first counter value or the second counter value held by each of the devices is updated.
請求項2に記載のデータ処理装置。 3. The data processing device according to claim 2, wherein the first chip and the second chip continue processing when the first counter value and the second counter value match as a result of the match determination, and terminate processing when they do not match.
復号した前記コマンドに基づいて生体認証を行い、
前記生体認証の認証結果を暗号化して前記第1のチップに送信する
請求項1に記載のデータ処理装置。 The second chip includes:
performing biometric authentication based on the decrypted command;
The data processing device according to claim 1 , wherein the biometric authentication result is encrypted and transmitted to the first chip.
請求項4に記載のデータ処理装置。 The data processing device according to claim 4 , wherein the first chip and the second chip perform encryption and decryption using an authenticated encryption method.
請求項4に記載のデータ処理装置。 The data processing device according to claim 4 , wherein the first chip and the second chip share the first common key based on a second common key held by each of them when the data processing device is powered on, and reset the first counter value and the second counter value held by each of them.
請求項6に記載のデータ処理装置。 The data processing device according to claim 6 , wherein the first chip and the second chip share the first common key by using a predetermined key sharing protocol.
請求項6に記載のデータ処理装置。 The data processing device according to claim 6 , wherein the second chip performs the biometric authentication using an authentication template encrypted based on the second common key.
前記第2のチップは、前記センサにより取得された前記センサデータと、前記認証用テンプレートに基づいて、前記生体についての前記生体認証を行う
請求項8に記載のデータ処理装置。 Further comprising a sensor for acquiring sensor data including biological information;
The data processing device according to claim 8 , wherein the second chip performs the biometric authentication for the living body based on the sensor data acquired by the sensor and the authentication template.
請求項6に記載のデータ処理装置。 The data processing device according to claim 6 , wherein the second common key is generated by the first chip using a pseudorandom number generator and transmitted to the second chip, and is held in the first chip and the second chip.
請求項4に記載のデータ処理装置。 The data processing device according to claim 4 , wherein the first chip is configured by a CPU (Central Processing Unit).
請求項4に記載のデータ処理装置。 The data processing device according to claim 4 , wherein the first chip is configured by a SE (Secure Element).
前記第1のチップは、復号した前記認証結果を前記第3の共通鍵を用いて暗号化して前記第3のチップに送信する
請求項4に記載のデータ処理装置。 a third chip that performs encryption and decryption using a third common key;
The data processing device according to claim 4 , wherein the first chip encrypts the decrypted authentication result by using the third common key and transmits the encrypted result to the third chip.
前記第3のチップは、SE(Secure Element)により構成される
請求項13に記載のデータ処理装置。 The first chip is configured with a CPU (Central Processing Unit),
The data processing device according to claim 13 , wherein the third chip is configured by a SE (Secure Element).
復号した前記コマンドに基づいて、複数回の前記生体認証を行い、
1回毎に前記生体認証の認証結果を暗号化して、複数回、前記第1のチップに送信する
請求項4に記載のデータ処理装置。 The second chip includes:
performing the biometric authentication a plurality of times based on the decrypted command;
The data processing device according to claim 4 , wherein the authentication result of the biometric authentication is encrypted each time and transmitted to the first chip a plurality of times.
請求項15に記載のデータ処理装置。 The data processing device according to claim 15 , wherein the second chip transmits the authentication result to the first chip a number of times included in the command.
請求項15に記載のデータ処理装置。 The data processing device according to claim 15 , wherein the second chip transmits the authentication result to the first chip until a transmission end command is received from the first chip.
請求項15に記載のデータ処理装置。 The data processing device according to claim 15 , wherein the second chip stops transmitting the authentication result by transmitting a transmission end message to the first chip.
第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、
前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップと
を備え、
前記第1のチップが、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、
前記第2のチップが、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、
前記第1のチップと前記第2のチップが、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取る
データ処理方法。 The data processing device comprises:
a first chip that performs encryption and decryption using a first common key and stores a first counter value;
a second chip that performs encryption and decryption using the first common key and stores a second counter value;
the first chip encrypts a command and the first counter value and transmits them to the second chip;
the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip;
A data processing method, wherein the first chip and the second chip synchronize the first counter value and the second counter value each time the first chip transmits or receives data to or from the other chip.
第1の共通鍵を用いた暗号化と復号を行い、第1のカウンタ値を保持する第1のチップと、
前記第1の共通鍵を用いた暗号化と復号を行い、第2のカウンタ値を保持する第2のチップと
して機能させるためのプログラムであって、
前記第1のチップは、コマンドと前記第1のカウンタ値を暗号化して前記第2のチップに送信し、
前記第2のチップは、復号した前記コマンドの実行結果と前記第2のカウンタ値を暗号化して前記第1のチップに送信し、
前記第1のチップと前記第2のチップは、相手とのデータの送受信の度に、前記第1のカウンタ値と前記第2のカウンタ値の同期を取る
プログラム。 Computer,
a first chip that performs encryption and decryption using a first common key and stores a first counter value;
a program for causing a second chip to function as a second chip that performs encryption and decryption using the first common key and holds a second counter value,
the first chip encrypts a command and the first counter value and transmits them to the second chip;
the second chip encrypts the execution result of the decrypted command and the second counter value and transmits them to the first chip;
A program for causing the first chip and the second chip to synchronize the first counter value with the second counter value every time data is transmitted to and received from the other chip.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019139318 | 2019-07-30 | ||
JP2019139318 | 2019-07-30 | ||
PCT/JP2020/027633 WO2021020144A1 (en) | 2019-07-30 | 2020-07-16 | Data processing device, data processing method, and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2021020144A1 JPWO2021020144A1 (en) | 2021-02-04 |
JP7509148B2 true JP7509148B2 (en) | 2024-07-02 |
Family
ID=74229043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021536928A Active JP7509148B2 (en) | 2019-07-30 | 2020-07-16 | DATA PROCESSING APPARATUS, DATA PROCESSING METHOD, AND PROGRAM |
Country Status (4)
Country | Link |
---|---|
US (1) | US12019766B2 (en) |
EP (1) | EP4007207B1 (en) |
JP (1) | JP7509148B2 (en) |
WO (1) | WO2021020144A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115361140B (en) * | 2022-08-19 | 2023-11-24 | 广州万协通信息技术有限公司 | Method and device for verifying security chip key |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007013366A (en) | 2005-06-29 | 2007-01-18 | Sony Corp | Communication processor, communication processing system and method, and computer program |
JP2010108054A (en) | 2008-10-28 | 2010-05-13 | Mitsubishi Electric Corp | Authentication system, authentication method, authentication program, authentication apparatus, and request device |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06244793A (en) * | 1993-02-16 | 1994-09-02 | Fujitsu Ltd | System for certificating mobile terminal |
US5914471A (en) * | 1993-07-20 | 1999-06-22 | Koninklijke Ptt Nederland N.V. | Method and apparatus for recording usage data of card operated devices |
EP1508865A4 (en) * | 2002-05-29 | 2006-06-07 | Sony Corp | Information processing system |
DE102006004237A1 (en) * | 2006-01-30 | 2007-08-16 | Siemens Ag | Method and device for agreeing a common key between a first communication device and a second communication device |
JP2009140231A (en) | 2007-12-06 | 2009-06-25 | Sony Corp | Communication system and communication terminal apparatus |
JP2013251609A (en) * | 2012-05-30 | 2013-12-12 | Sony Corp | Information processing device, ic chip, and information processing method |
WO2016178728A1 (en) | 2015-05-01 | 2016-11-10 | Marvell World Trade Ltd. | Systems and methods for secured data transfer via inter-chip hopping buses |
EP3345339B1 (en) | 2015-09-03 | 2021-06-30 | Signify Holding B.V. | Network node |
US10402574B2 (en) * | 2016-12-30 | 2019-09-03 | Intel Corporation | Techniques for multi-domain memory encryption |
US11429751B2 (en) * | 2019-07-01 | 2022-08-30 | Rajant Corporation | Method and apparatus for encrypting and decrypting data on an integrated circuit |
-
2020
- 2020-07-16 WO PCT/JP2020/027633 patent/WO2021020144A1/en unknown
- 2020-07-16 EP EP20847941.0A patent/EP4007207B1/en active Active
- 2020-07-16 JP JP2021536928A patent/JP7509148B2/en active Active
- 2020-07-16 US US17/618,206 patent/US12019766B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007013366A (en) | 2005-06-29 | 2007-01-18 | Sony Corp | Communication processor, communication processing system and method, and computer program |
JP2010108054A (en) | 2008-10-28 | 2010-05-13 | Mitsubishi Electric Corp | Authentication system, authentication method, authentication program, authentication apparatus, and request device |
Also Published As
Publication number | Publication date |
---|---|
WO2021020144A1 (en) | 2021-02-04 |
EP4007207A1 (en) | 2022-06-01 |
US12019766B2 (en) | 2024-06-25 |
US20220261485A1 (en) | 2022-08-18 |
EP4007207B1 (en) | 2023-09-20 |
JPWO2021020144A1 (en) | 2021-02-04 |
EP4007207A4 (en) | 2022-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9832020B2 (en) | Cryptographic protocol for portable devices | |
US20200104826A1 (en) | Contactless card emulation system and method | |
JP5859953B2 (en) | Biometric authentication system, communication terminal device, biometric authentication device, and biometric authentication method | |
US6948066B2 (en) | Technique for establishing provable chain of evidence | |
US7028184B2 (en) | Technique for digitally notarizing a collection of data streams | |
US6968453B2 (en) | Secure integrated device with secure, dynamically-selectable capabilities | |
EP3280090A1 (en) | User authentication method and device, and wearable device registration method and device | |
US9218473B2 (en) | Creation and authentication of biometric information | |
US9497573B2 (en) | Security protocols for unified near field communication infrastructures | |
US20020095587A1 (en) | Smart card with integrated biometric sensor | |
US20020095586A1 (en) | Technique for continuous user authentication | |
KR20170042549A (en) | Method for the authentication of a first electronic entity by a second electronic entity, and electronic entity implementing such a method | |
US10511438B2 (en) | Method, system and apparatus using forward-secure cryptography for passcode verification | |
CN111401901A (en) | Authentication method and device of biological payment device, computer device and storage medium | |
US20220231852A1 (en) | Neighbor awareness networking password authentication | |
US11308190B2 (en) | Biometric template handling | |
JP7509148B2 (en) | DATA PROCESSING APPARATUS, DATA PROCESSING METHOD, AND PROGRAM | |
US20140230014A1 (en) | Information processing device and information processing method | |
KR101745482B1 (en) | Communication method and apparatus in smart-home system | |
JP7099461B2 (en) | Wireless communication equipment, wireless communication methods and wireless communication systems | |
US9386017B2 (en) | Authentication device, system and method | |
Choi et al. | A Fully Integrated CMOS Security‐Enhanced Passive RFID Tag | |
JP6790839B2 (en) | Secure element, UIM card, authentication method, and authentication program | |
JP2020088638A (en) | Verification device and verification method | |
JP2010034967A (en) | Ternary authentication method and system therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230525 |
|
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: 20240603 |