JP2008033949A - Biometric system - Google Patents

Biometric system Download PDF

Info

Publication number
JP2008033949A
JP2008033949A JP2007227792A JP2007227792A JP2008033949A JP 2008033949 A JP2008033949 A JP 2008033949A JP 2007227792 A JP2007227792 A JP 2007227792A JP 2007227792 A JP2007227792 A JP 2007227792A JP 2008033949 A JP2008033949 A JP 2008033949A
Authority
JP
Japan
Prior art keywords
fingerprint
information
image
writer
reader
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
JP2007227792A
Other languages
Japanese (ja)
Other versions
JP4586055B2 (en
Inventor
Masahiro Mimura
昌弘 三村
Yoichi Seto
洋一 瀬戸
Takuo Ishizuka
拓雄 石塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007227792A priority Critical patent/JP4586055B2/en
Publication of JP2008033949A publication Critical patent/JP2008033949A/en
Application granted granted Critical
Publication of JP4586055B2 publication Critical patent/JP4586055B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Collating Specific Patterns (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a fingerprint collation system with high safety and capable of reducing costs. <P>SOLUTION: This biometric system has an IC card 100 having tamper resistance and a reader/writer 110 having the tamper resistance which reads and writes information to the IC card 100, wherein the reader/writer 110 performs preprocessing of a fingerprint image read by a fingerprint input part 113 by a preprocessing part 112, transmits extracted intermediate information to the IC card 100, the IC card 100 collates the intermediate information and fingerprint information 104, when collation is matched, makes authentication information 105 to be used for electronic authentication usable to perform the electronic authentication with an application 131. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、重要施設における入退室の管理や情報システムのアクセス管理に使われる生体情報照合技術に関し、特に、指紋照合技術に関する。   The present invention relates to a biometric information matching technique used for management of entry / exit in an important facility and access management of an information system, and more particularly to a fingerprint matching technique.

従来から、指紋等の生体情報を使って、あらかじめ登録した特定の利用者に対してのみ、施設への入退室や情報システムの利用を許可するアクセスコントロール技術が知られている。このようなアクセスコントロール技術としては、例えば、以下のようなものがある。   2. Description of the Related Art Conventionally, there is known an access control technique for permitting entry / exit into a facility and use of an information system only for a specific user registered in advance using biometric information such as a fingerprint. Examples of such access control techniques include the following.

(1)クライアント認証型装置
特開平09-198501号公報(以下、文献1という)には、あらかじめドア管理装置に記録した利用者の生体情報と、入退出時に入力した生体情報とを照合することで管理区域への不正な侵入を防止するものが記載されている。
(1) Client Authentication Type Device In Japanese Patent Application Laid-Open No. 09-198501 (hereinafter referred to as Document 1), the user's biometric information recorded in advance in the door management device is collated with the biometric information input at the time of entry / exit. Describes what prevents unauthorized entry into the controlled area.

(2)サーバ認証型指紋照合装置
特開平10-124668号公報(以下、文献2という)には、サーバが利用者の生体情報ファイルをもち、クライアントにおいて入力された利用者の生体情報をサーバで照合することで、コンピュータシステムへの不正なアクセスを防止するものが記載されている。
(2) Server Authentication Type Fingerprint Verification Device In Japanese Patent Laid-Open No. 10-124668 (hereinafter referred to as Document 2), the server has a user's biometric information file, and the user's biometric information input at the client is stored on the server. A document that prevents unauthorized access to a computer system by collation is described.

(3)携帯型指紋照合装置
特開平10-149446号公報(以下、文献3という)には、ICカードなどの携帯型記録装置に利用者の生体情報を記録し、新たに入力した利用者の生体情報をクライアントで照合することにより、コンピュータシステムなどへの不正なアクセスを防止するものが記載されている。
(3) Portable Fingerprint Verification Device In Japanese Patent Application Laid-Open No. 10-149446 (hereinafter referred to as Document 3), a user's biometric information is recorded on a portable recording device such as an IC card, and the newly input user's information is recorded. A device that prevents unauthorized access to a computer system or the like by collating biometric information with a client is described.

前述した文献1に記載された方法では、ドア管理装置が耐タンパ性を有しない装置で実現されている場合、利用者の指紋情報や照合結果の偽造、改ざん、盗用等により、正しい利用者になりすます不正(なりすまし)が可能になるという問題がある。   In the method described in the above-mentioned document 1, when the door management device is realized by a device that does not have tamper resistance, the user is prevented from being falsified, falsified, stolen, etc. There is a problem that impersonation is possible.

これに対して、前述した文献2に記載された方法では、サーバで利用者固有の情報である生体情報を集中管理し、指紋照合を行うため、文献1に記載された方法で問題となる指紋情報や照合結果の偽造、改ざん、盗用等は困難となる。しかし、指紋等の個人情報が集中管理されることに対して、利用者の心理的抵抗が大きかったり、一度に多数の生体情報が盗難される恐れがあったり、多数の利用者管理のために、生体情報を記録するファイルの管理にかかるコストが増大する等といった問題がある。   On the other hand, in the method described in Document 2 described above, since the biometric information, which is user-specific information, is centrally managed by the server and fingerprint matching is performed, fingerprints that are problematic in the method described in Document 1 are used. It is difficult to forge, falsify or steal information and verification results. However, since personal information such as fingerprints is centrally managed, there is a risk that the user's psychological resistance is large, a large number of biometric information may be stolen at the same time, There is a problem that the cost for managing a file for recording biometric information increases.

一方、文献3に記載された方法では、ICカードなどの耐タンパ性を有する携帯型記憶装置に生体情報を記録するため、文献2に記載された方法で問題となる利用者の心理的抵抗、大量の生体情報の盗難、および生体情報の管理にかかるコストの問題を解決できる。しかもICカードに実装された指紋入力装置およびCPUによって指紋の入力と照合を行うため、文献1に記載された方法で問題となる指紋情報や照合結果の偽造、改ざん、盗用等を防止でき、安全性が高いといえる。しかし、ICカードに生体情報の入力機能および生体情報の照合機能を実装する必要があり、装置のコストが高くなるという問題がある。   On the other hand, in the method described in Document 3, since biometric information is recorded in a tamper-resistant portable storage device such as an IC card, the psychological resistance of the user, which is a problem in the method described in Document 2, It is possible to solve the problem of the cost of theft of a large amount of biological information and the management of biological information. Moreover, since fingerprint input and verification are performed by the fingerprint input device and the CPU mounted on the IC card, forgery, falsification, theft, etc. of fingerprint information and verification results that are problematic in the method described in Document 1 can be prevented. It can be said that the nature is high. However, it is necessary to mount a biometric information input function and a biometric information collation function on the IC card, which increases the cost of the apparatus.

本発明の目的は、安全性が高く、かつ、コストを低減することができる指紋照合システムを提供することにある。   An object of the present invention is to provide a fingerprint collation system that is highly safe and can reduce costs.

本発明に係る生体認証システムは、耐タンパ性を有した演算機能付き携帯型記憶装置と、前記携帯型記憶装置に対して情報の読み書きを行う耐タンパ性を有したリーダライタとを備える。   A biometric authentication system according to the present invention includes a tamper-resistant portable storage device with an arithmetic function and a tamper-resistant reader / writer that reads and writes information from and to the portable storage device.

そして、前記リーダライタは、生体情報を入力する生体情報入力装置を備え、当該生体情報入力装置で入力した生体情報の前処理を行い、当該前処理を行った中間情報を前記携帯型記憶装置に送信する。   The reader / writer includes a biometric information input device that inputs biometric information, performs preprocessing of the biometric information input by the biometric information input device, and stores the intermediate information subjected to the preprocessing in the portable storage device. Send.

また、前記携帯型記憶装置は、生体情報のテンプレートと、電子認証に使われる秘密鍵とを備え、前記中間情報と前記テンプレートとの照合を行い、当該照合が一致したときに、前記秘密鍵を使用可能にする。   The portable storage device includes a biometric information template and a secret key used for electronic authentication. The portable information storage device compares the intermediate information with the template. Make it available.

前記生体情報が指紋情報の場合は、前記リーダライタは、指紋照合に必要な指紋画像情報を前記携帯型記憶装置に順次送信し、前記携帯型記憶装置は、前記指紋画像情報を順次処理することで、指紋照合を行うようにしてもよい。   When the biometric information is fingerprint information, the reader / writer sequentially transmits fingerprint image information necessary for fingerprint verification to the portable storage device, and the portable storage device sequentially processes the fingerprint image information. Thus, fingerprint verification may be performed.

また、前記テンプレートに記録された登録指紋と、あらたに入力された入力指紋との位置ずれを補正するための情報を、指紋のコア位置を使って算出し、前記登録指紋の特徴点周辺の小画像を、前記入力指紋の画像上の位置ずれ補正した座標周辺でマッチングすることによって探索し、一致した小画像の個数をもって、前記テンプレートと前記指紋画像の同一性を判定するようにしてもよい。また、指紋のコア位置を算出する際、隆線の垂線ベクトルを探索し、当該垂線ベクトルが大きく変化する位置を、指紋のコアと決定するようにしてもよい。   Also, information for correcting the positional deviation between the registered fingerprint recorded in the template and the newly input fingerprint is calculated using the core position of the fingerprint, and a small area around the feature point of the registered fingerprint is calculated. The image may be searched by matching around the coordinates of the input fingerprint image where the positional deviation is corrected, and the identity between the template and the fingerprint image may be determined based on the number of matching small images. Further, when calculating the fingerprint core position, the ridge perpendicular vector may be searched, and the position where the perpendicular vector greatly changes may be determined as the fingerprint core.

また、前記テンプレートに記録された登録指紋と、あらたに入力された入力指紋との位置ずれを補正するための情報を、入力指紋および登録指紋のそれぞれについて、各特徴点の周辺に特定の輝度分布を持つ画像を作成し、当該画像の相互相関により算出するようにしてもよい。   In addition, information for correcting the positional deviation between the registered fingerprint recorded in the template and the newly input fingerprint, and a specific luminance distribution around each feature point for each of the input fingerprint and the registered fingerprint It is also possible to create an image having, and calculate based on the cross-correlation of the image.

以上詳細に説明したように、本発明によれば、利用者固有の情報を携帯型記録装置により個人管理するので、利用者の心理的抵抗を減らすことができる。また、一度に多数の生体情報が盗難される可能性を軽減し、生体情報の記録管理にかかるコストを低減することができる。   As described above in detail, according to the present invention, user-specific information is personally managed by the portable recording device, so that the psychological resistance of the user can be reduced. Further, it is possible to reduce the possibility of a large number of biological information being stolen at a time, and to reduce the cost for recording management of biological information.

また、生体情報および生体情報照合機能を耐タンパ性を有する携帯型記憶装置の内部に実装することで、利用者の生体情報および照合結果の偽造、改ざん、盗用を困難にしなりすましを防ぐことができる。   In addition, by mounting the biometric information and biometric information collation function inside a tamper-resistant portable storage device, it is possible to prevent forgery, falsification, and theft of the biometric information and collation results of the user and prevent spoofing. .

また、生体情報入力機能および生体情報照合の前処理機能をリーダライタに実装するので、一般的な演算機能付き携帯型記憶装置であるICカード等のCPUで生体情報照合を行え、システムのコストを低減することができる。   In addition, since the biometric information input function and the preprocessing function for biometric information collation are installed in the reader / writer, the biometric information collation can be performed by a CPU such as an IC card which is a portable storage device with a general calculation function, thereby reducing the system cost Can be reduced.

以下、本発明の実施の形態について、図面を参照しつつ、詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

ここでは、高いセキュリティが必要とされる銀行の事務システムを例に、携帯型記録装置としてICカードを用い、ホストコンピュータで稼働している銀行業務用アプリケーションに対するアクセス管理を行う場合について説明する。また、生体情報としては、指紋を用いる場合について説明する。   Here, a case where a bank office system that requires high security is taken as an example and an IC card is used as a portable recording device and access management for a banking application running on a host computer will be described. A case where a fingerprint is used as the biometric information will be described.

図1は、本発明によるアクセス管理システムの概略を説明するための図である。同図に示すように、本システムは、ホストコンピュータ130と、端末120と、リーダライタ110と、ICカード100とを備える。   FIG. 1 is a diagram for explaining the outline of an access management system according to the present invention. As shown in the figure, this system includes a host computer 130, a terminal 120, a reader / writer 110, and an IC card 100.

ホストコンピュータ130は、銀行業務を行うためのもので、職員が銀行業務を行うためのアプリケーション131が実行されている。アプリケーション131は、職員があらかじめ登録された正しい利用者であることを確認(本人認証)した後に利用可能となるものである。   The host computer 130 is for performing banking operations, and an application 131 for executing banking operations by staff is executed. The application 131 can be used after confirming that the staff is a pre-registered correct user (person authentication).

端末120は、アプリケーション131を利用するための端末であり、ホストコンピュータ130とネットワーク140によって接続されている。端末120は、ホストコンピュータ130とリーダライタ110およびICカード100とが本人認証に必要な情報を交換する際の中継を行うものでもある。   The terminal 120 is a terminal for using the application 131 and is connected to the host computer 130 via the network 140. The terminal 120 also serves as a relay when the host computer 130, the reader / writer 110, and the IC card 100 exchange information necessary for personal authentication.

リーダライタ110は、ICカード100に対するデータの読み書きをするための装置で、端末120に接続されている。リーダライタ110は、インターフェース111と、指紋入力部113と、前処理部112とを備える。インターフェース111は、端末120やICカード100との間で情報を伝達する。指紋入力部113は、職員の指から指紋を読み取る。前処理部112は、読み取った指紋画像の前処理を行い、指紋照合に必要となる情報をICカード100と交換する。   The reader / writer 110 is a device for reading and writing data with respect to the IC card 100 and is connected to the terminal 120. The reader / writer 110 includes an interface 111, a fingerprint input unit 113, and a preprocessing unit 112. The interface 111 transmits information between the terminal 120 and the IC card 100. The fingerprint input unit 113 reads a fingerprint from an employee's finger. The preprocessing unit 112 performs preprocessing of the read fingerprint image, and exchanges information necessary for fingerprint collation with the IC card 100.

ICカード100は、おのおのの職員が持つ演算機能付き携帯型記憶装置である。ICカード100は、インターフェース101と、指紋照合処理部102と、電子認証処理部103と、指紋情報104と、認証情報105とを備える。インターフェース101は、リーダライタ110との間で情報を伝達する。指紋照合処理部102は、指紋情報104に記録された指紋情報と、新たに入力した指紋とを照合する。電子認証処理部103は、認証情報105を使って、ホストコンピュータ130と電子認証を行う。   The IC card 100 is a portable storage device with a calculation function possessed by each staff member. The IC card 100 includes an interface 101, a fingerprint collation processing unit 102, an electronic authentication processing unit 103, fingerprint information 104, and authentication information 105. The interface 101 transmits information to and from the reader / writer 110. The fingerprint collation processing unit 102 collates the fingerprint information recorded in the fingerprint information 104 with the newly input fingerprint. The electronic authentication processing unit 103 performs electronic authentication with the host computer 130 using the authentication information 105.

次に、本システムにおけるアプリケーション131に対するアクセス管理の概要について説明する。   Next, an outline of access management for the application 131 in this system will be described.

職員はあらかじめ自分の指紋情報104が記録されたICカード100を持っており、アプリケーション131へアクセスする際、ICカード100をリーダライタ110に接続し、リーダライタ110の指紋入力部113を用いてあらたに指紋を入力する。   The staff member has the IC card 100 in which his / her fingerprint information 104 is recorded in advance, and when accessing the application 131, the IC card 100 is connected to the reader / writer 110, and the fingerprint input unit 113 of the reader / writer 110 is used. Enter your fingerprint.

指紋が入力されると、前処理部112で指紋照合のための前処理を行った後に、前処理部112と指紋照合処理部102とで照合に必要となる情報を交換しながら、新たに入力した指紋と指紋情報104とが一致しているか否かを判定する。   When a fingerprint is input, after pre-processing for fingerprint matching is performed by the pre-processing unit 112, new information is input while exchanging information necessary for matching between the pre-processing unit 112 and the fingerprint matching processing unit 102. It is determined whether the fingerprint and the fingerprint information 104 match.

その結果、一致していた場合には電子認証処理部103の認証情報105へのアクセスを許可し、アプリケーション131と電子認証処理部103との間で電子認証を行う。電子認証が行われると、端末120からアプリケーション130へのアクセスが可能となり、職員はアプリケーション131を利用可能となる。   As a result, if they match, access to the authentication information 105 of the electronic authentication processing unit 103 is permitted, and electronic authentication is performed between the application 131 and the electronic authentication processing unit 103. When electronic authentication is performed, the terminal 120 can access the application 130, and the staff can use the application 131.

次に、本システムの構成要素の詳細について説明する。   Next, details of the components of the system will be described.

まず、ICカード100の構造について説明する。   First, the structure of the IC card 100 will be described.

図2は、ICカード100の構造を示す図である。   FIG. 2 is a diagram illustrating the structure of the IC card 100.

同図に示すように、ICカード100は、I/Oポート210と、CPU220と、RAM230と、EEPROM240と、ROM250とを備える。ICカード100の各構成要素は、バス260に接続され、バス260を介してデータ交換を行う。   As shown in the figure, the IC card 100 includes an I / O port 210, a CPU 220, a RAM 230, an EEPROM 240, and a ROM 250. Each component of the IC card 100 is connected to the bus 260 and exchanges data via the bus 260.

I/Oポート210は、リーダライタ110との間でデータ交換を行うためのポートである。CPU220は、四則演算やビット演算などを行う演算処理部である。RAM230は、CPU220が演算を行う際に一時的なデータの格納等に用いる書き換え可能なメモリである。   The I / O port 210 is a port for exchanging data with the reader / writer 110. The CPU 220 is an arithmetic processing unit that performs four arithmetic operations, bit operations, and the like. The RAM 230 is a rewritable memory used for temporary data storage when the CPU 220 performs an operation.

ROM250は、読み出し専用メモリであり、指紋照合プログラム251や電子認証プログラム252やその他のプログラムおよびデータが記録されている。EEPROM240は、電気的に書き替え可能な不揮発性メモリであり、ICカード100の正当性を証明するための電子証明書241や、ICカード100の秘密鍵242や、職員が正しいICカードの持ち主であることを証明するための指紋情報243などが記録されている。   The ROM 250 is a read-only memory, and stores a fingerprint collation program 251, an electronic authentication program 252, other programs and data. The EEPROM 240 is an electrically rewritable non-volatile memory, and an electronic certificate 241 for proving the validity of the IC card 100, the private key 242 of the IC card 100, and the staff who owns the correct IC card. Fingerprint information 243 and the like for verifying the existence are recorded.

指紋情報243は、登録に使用した指紋のコアの座標、所定数の特徴点の座標及び各特徴点の周辺の小画像(チップ画像)からなる。以下、本実施形態では、指紋情報243に含まれる特徴点の数が30個の場合について説明する。   The fingerprint information 243 includes the coordinates of the fingerprint core used for registration, the coordinates of a predetermined number of feature points, and a small image (chip image) around each feature point. Hereinafter, in the present embodiment, a case where the number of feature points included in the fingerprint information 243 is 30 will be described.

図3は、指紋情報243の構成例を示す図である。同図に示すように、指紋情報243は、チップ(画像)の数と、コアのXY座標と、チップ画像のXY座標と、チップ画像の画像データ(バイナリデータ)とを有する。各情報の利用方法については、後述する。   FIG. 3 is a diagram illustrating a configuration example of the fingerprint information 243. As shown in the figure, the fingerprint information 243 includes the number of chips (images), the XY coordinates of the core, the XY coordinates of the chip image, and the image data (binary data) of the chip image. A method of using each information will be described later.

ICカード100は、外部からの不正なアクセスや装置の破壊によるデータ解析を防止する耐タンパ性を有しており、内部に保持したデータやプログラムを外部から不正な方法で参照できないよう設計されている。また、内部に保持したデータへのアクセスコントロール機能を有しており、ICカード100内部のデータにアクセスするためには、共通鍵などによる認証を行う等、CPU220の許可が必要になる。ICカード100の秘密鍵242は、ICカード100の電源投入時にはアクセス不許可に設定されており、外部あるいは内部のプログラムからアクセスすることはできない。   The IC card 100 has tamper resistance to prevent data analysis due to unauthorized access from outside or destruction of the device, and is designed so that data and programs held inside cannot be referred to from outside by an unauthorized method. Yes. Further, it has an access control function to the data held inside, and in order to access the data inside the IC card 100, it is necessary to permit the CPU 220 such as performing authentication using a common key or the like. The secret key 242 of the IC card 100 is set to not permit access when the IC card 100 is turned on, and cannot be accessed from an external or internal program.

ここでは、ICカード100は、職員を識別するため各職員に対して1つだけ発行され、各職員が1枚だけ持つことのできるものとする。   Here, it is assumed that only one IC card 100 is issued to each staff member in order to identify the staff member, and each staff member can have only one card.

なお、本実施形態では、指紋照合プログラム251および電子認証プログラム252をROM250に記録されるものとして説明するが、これらのプログラムは、EEPROM240に実装することも可能である。   In the present embodiment, the fingerprint collation program 251 and the electronic authentication program 252 are described as being recorded in the ROM 250. However, these programs can also be implemented in the EEPROM 240.

次に、リーダライタ110の構造について説明する。   Next, the structure of the reader / writer 110 will be described.

図4は、リーダライタ110の構造を示す図である。   FIG. 4 is a diagram illustrating the structure of the reader / writer 110.

同図に示すように、リーダライタ110は、I/Oポート310と、CPU320と、RAM330と、指紋センサ340と、ROM350とを備える。リーダライタ100の各構成要素は、バス360に接続され、バス360を介してデータ交換を行う。   As shown in the figure, the reader / writer 110 includes an I / O port 310, a CPU 320, a RAM 330, a fingerprint sensor 340, and a ROM 350. Each component of the reader / writer 100 is connected to the bus 360 and exchanges data via the bus 360.

I/Oポート310は、ICカード110や端末120との間でデータ交換を行うためのポートである。CPU320は、四則演算やビット演算などリーダライタ110に必要な演算を行う演算処理部である。RAM330は、CPU320が演算する際に一時的に用いるデータ等を格納するためのメモリである。指紋センサ340は、指紋を電子的に読み取るものである。   The I / O port 310 is a port for exchanging data with the IC card 110 and the terminal 120. The CPU 320 is an arithmetic processing unit that performs arithmetic operations necessary for the reader / writer 110 such as four arithmetic operations and bit operations. The RAM 330 is a memory for storing data temporarily used when the CPU 320 performs calculations. The fingerprint sensor 340 reads a fingerprint electronically.

ROM350は、読み出し専用メモリであり、指紋画像の前処理などを行い、ICカード100と通信しながら指紋の照合を行う前処理プログラム351や指紋の読み取りを制御する指紋読み取りプログラム352やその他のプログラムおよびデータが記録されている。   The ROM 350 is a read-only memory, and performs a preprocessing of a fingerprint image and the like, a preprocessing program 351 that performs fingerprint collation while communicating with the IC card 100, a fingerprint reading program 352 that controls fingerprint reading, and other programs, Data is recorded.

リーダライタ110は、耐タンパ性を有しており、内部に保持したデータやプログラムを外部から不正な方法で参照できないよう設計されている。   The reader / writer 110 has tamper resistance, and is designed so that data and programs held inside cannot be referred to from outside by an unauthorized method.

次に、本実施形態における指紋照合の概要について説明する。   Next, an outline of fingerprint matching in this embodiment will be described.

図5は、本実施形態における指紋照合の概略フローを示す図である。   FIG. 5 is a diagram showing a schematic flow of fingerprint matching in the present embodiment.

まず、職員がホストコンピュータ130のアプリケーション131を利用する際、アプリケーション131は、端末120に職員の指紋照合を要求し、端末120はリーダライタ110に指紋照合要求を発行する(S400)。   First, when the staff member uses the application 131 of the host computer 130, the application 131 requests the terminal 120 for fingerprint verification of the staff member, and the terminal 120 issues a fingerprint verification request to the reader / writer 110 (S400).

端末120から指紋照合要求を受け取ったリーダライタ110は、指紋読み取りプログラム352を実行し、指紋センサ340から職員の指紋を取得する(S405)。読み取られた指紋は、例えば、1ピクセルあたり8ビットの濃淡をもつ指紋画像としてRAM330に記録される。指紋センサ340による指紋の読み取りは、通常用いられている方法、例えば、上述した文献2の記載の方法を用いて行う。   The reader / writer 110 that has received the fingerprint collation request from the terminal 120 executes the fingerprint reading program 352 and acquires the fingerprints of the staff from the fingerprint sensor 340 (S405). The read fingerprint is recorded in the RAM 330 as a fingerprint image having a density of 8 bits per pixel, for example. Fingerprint reading by the fingerprint sensor 340 is performed using a commonly used method, for example, the method described in Document 2 described above.

次に、前処理プログラム351が指紋画像の前処理を行い、照合に必要な情報として中間指紋情報を抽出してRAM330に記録する(S410)。前処理の詳細については、後述する。   Next, the pre-processing program 351 pre-processes the fingerprint image, extracts intermediate fingerprint information as information necessary for collation, and records it in the RAM 330 (S410). Details of the preprocessing will be described later.

次に、中間指紋情報と、あらかじめICカード100に記録してあった職員の指紋情報243を指紋照合プログラム251が照合する(S415)。照合処理の詳細については、後述する。   Next, the fingerprint collation program 251 collates the intermediate fingerprint information with the employee's fingerprint information 243 previously recorded on the IC card 100 (S415). Details of the verification process will be described later.

照合の結果、両者が一致していなかった場合は(S415:NG)、処理を終了する。一方、両者が一致していた場合は(S415:OK)、ICカード100の秘密鍵242を電子認証プログラム252からアクセス可能になるよう活性化する(S420)。   As a result of the collation, when the two do not match (S415: NG), the process ends. On the other hand, if they match (S415: OK), the private key 242 of the IC card 100 is activated so that it can be accessed from the electronic authentication program 252 (S420).

そして、電子認証プログラム252が、活性化された秘密鍵242を用いて、アプリケーション131と電子認証を行う(S425)。例えば、ANSI/ITU X.509に記載された方法などにより、ICカード100とアプリケーション131間の相互認証を行う。   Then, the electronic authentication program 252 performs electronic authentication with the application 131 using the activated secret key 242 (S425). For example, ANSI / ITU X. The mutual authentication between the IC card 100 and the application 131 is performed by the method described in 509.

次に、前述した前処理の詳細について説明する。前処理では、指紋のコアと特徴点の座標算出、および指紋の2値画像作成を行い、これらを前処理後の中間指紋情報としてRAM330に記録する。   Next, details of the above-described preprocessing will be described. In the preprocessing, the coordinates of the fingerprint core and feature points are calculated, and the binary image of the fingerprint is created, and these are recorded in the RAM 330 as intermediate fingerprint information after the preprocessing.

図6は、指紋のコアおよび特徴点の例を示す図である。指紋のコアとは、同図に示すように、指紋の特徴的な構造を指す。また、特徴点とは、指紋を形成する隆線(凸部の連なり)の端点や分岐点を指す。通常、各指に、指紋のコアは一個存在し、特徴点は複数個存在する。   FIG. 6 is a diagram illustrating an example of a fingerprint core and feature points. As shown in the figure, the fingerprint core indicates a characteristic structure of the fingerprint. A feature point refers to an end point or a branch point of a ridge (a series of convex portions) forming a fingerprint. Normally, each finger has one fingerprint core and a plurality of feature points.

図7は、前処理の概略フローを示す図である。   FIG. 7 is a diagram showing a schematic flow of preprocessing.

まず、入力された指紋画像に、隆線強調およびノイズ除去処理などを施し、処理後の8ビット濃淡指紋画像をRAM330に記録する(S600)。本処理は、通常用いられている方法、例えば、特開平11-134498号公報に記載の方法を用いて行う。   First, the input fingerprint image is subjected to ridge enhancement and noise removal processing, and the processed 8-bit grayscale fingerprint image is recorded in the RAM 330 (S600). This process is performed using a commonly used method, for example, the method described in JP-A-11-134498.

次に、指紋の特徴的な構造であるコアを検出し、その座標を中間指紋情報に記録する(S605)。本処理の詳細は後述する。   Next, the core which is the characteristic structure of the fingerprint is detected, and the coordinates are recorded in the intermediate fingerprint information (S605). Details of this processing will be described later.

次に、隆線強調等の処理済の8ビット濃淡指紋画像を2値化して、1ピクセルあたり1ビットのモノクロ画像に変換し、中間指紋情報に記録する(S610)。本処理は、通常用いられる方法、例えば、前述した文献2に記載の方法を用いて行う。   Next, the processed 8-bit grayscale fingerprint image such as ridge enhancement is binarized, converted to a 1-bit monochrome image per pixel, and recorded in the intermediate fingerprint information (S610). This process is performed using a commonly used method, for example, the method described in Document 2 described above.

次に、2値化された指紋画像を細線化し、細線化画像を得る(S615)。細線化画像はRAM330に一時的に記録される。本細線化処理は、通常用いられている方法、例えば、文献2に記載された方法を用いて行う。   Next, the binarized fingerprint image is thinned to obtain a thinned image (S615). The thinned image is temporarily recorded in the RAM 330. This thinning process is performed using a commonly used method, for example, the method described in Document 2.

次に、細線化画像から隆線の端点や分岐点である特徴点を最大30個抽出し、抽出した特徴点の座標を中間指紋情報に記録する(S620)。特徴点の抽出は、通常用いられている方法、例えば、文献2に記載の方法を用いて行う。   Next, a maximum of 30 feature points that are end points or branch points of ridges are extracted from the thinned image, and the coordinates of the extracted feature points are recorded in the intermediate fingerprint information (S620). The extraction of feature points is performed using a commonly used method, for example, the method described in Document 2.

次に、前述したコア位置検出処理S605について説明する。   Next, the core position detection process S605 described above will be described.

図8は、コア位置検出処理S605を説明するための概念図である。   FIG. 8 is a conceptual diagram for explaining the core position detection processing S605.

同図に示すように、コア位置検出処理S605では、まず、候補点を算出する際の有効領域810を設定する。有効領域810は、指紋画像内であり、かつコアを含むと推定される領域に設定される。   As shown in the figure, in the core position detection process S605, first, an effective area 810 for calculating candidate points is set. The effective area 810 is set to an area that is estimated to include the core in the fingerprint image.

次に、有効領域810内において、適当な初期位置800を設定し、その初期位置における隆線の垂線方向ベクトル805を求め、求めた垂線方向ベクトル805を初期位置に足した位置を次の候補点とし、その候補点における隆線の垂線方向ベクトルを求め、更に次の候補点を求めるといった処理を、候補点の数があらかじめ定めた数以上になるか、次の候補点が有効領域810外に出るまで繰り返す。そして、以上のようにして求めた候補点のそれぞれについて、曲率を計算し、最大の曲率をもつ候補点をコアの位置と判定する。そして、初期位置を変えて、上述した処理を繰り返し、求まった複数のコア位置を平均化処理することで、最終的なコア位置を求める。   Next, in the effective area 810, an appropriate initial position 800 is set, a ridge perpendicular direction vector 805 at the initial position is obtained, and the position obtained by adding the obtained perpendicular direction vector 805 to the initial position is the next candidate point. The process of obtaining the perpendicular direction vector of the ridge at the candidate point and further obtaining the next candidate point is performed, or the number of candidate points exceeds a predetermined number or the next candidate point is outside the effective area 810. Repeat until it comes out. Then, the curvature is calculated for each of the candidate points obtained as described above, and the candidate point having the maximum curvature is determined as the core position. Then, the initial position is changed, the above-described processing is repeated, and a final core position is obtained by averaging the obtained plurality of core positions.

ここでは、一回のコア探索において最大20点の候補点を探索し、そのようなコアの探索を10回行うものとする。   Here, it is assumed that a maximum of 20 candidate points are searched in one core search, and such a core search is performed 10 times.

図9は、コア位置検出処理S605の詳細フローを示す図である。   FIG. 9 is a diagram showing a detailed flow of the core position detection process S605.

まず、探索回数を示すカウンタiを「1」に初期化し(S700)、一回の探索における候補点のインデックスを示すカウンタjを「1」に初期化する(S705)。   First, a counter i indicating the number of searches is initialized to “1” (S700), and a counter j indicating an index of candidate points in one search is initialized to “1” (S705).

次に、探索回数を示すカウンタiに応じて、候補点の初期位置を設定する(S710)。初期位置は、各探索ごとに異なるように設定する。図8の例では、初期位置800が設定されている。初期位置のX座標およびY座標は、RAM330に設けられた候補点算出テーブルの該当する位置に記録される。   Next, the initial position of the candidate point is set according to the counter i indicating the number of searches (S710). The initial position is set to be different for each search. In the example of FIG. 8, an initial position 800 is set. The X and Y coordinates of the initial position are recorded at the corresponding positions in the candidate point calculation table provided in the RAM 330.

図10は、候補点算出テーブルの構成例を示す図である。同図に示すように、候補点算出テーブルは、「候補点インデックス」と、候補点の「座標」と、各候補点での「曲率」とを有する。同図は、1回の探索における7つの候補点の座標と曲率を示している。例えば、インデックス1(初期位置)の候補点の座標は、X座標が25、Y座標が25となっている。   FIG. 10 is a diagram illustrating a configuration example of a candidate point calculation table. As shown in the figure, the candidate point calculation table has “candidate point index”, “coordinates” of candidate points, and “curvature” at each candidate point. The figure shows the coordinates and curvature of seven candidate points in one search. For example, the coordinates of the candidate point of index 1 (initial position) are X coordinate 25 and Y coordinate 25.

次に、初期位置800における隆線の垂線方向ベクトル805を算出する(S715)。具体的な算出方法は後述する。垂線方向ベクトルはあらかじめ設定した長さになるよう正規化される。   Next, the perpendicular direction vector 805 of the ridge at the initial position 800 is calculated (S715). A specific calculation method will be described later. The normal vector is normalized so as to have a preset length.

次に、現在の候補点の位置および垂線方向ベクトルから新たな候補点を算出する(S720)。具体的には、現在の候補点の位置座標に、垂線方向ベクトルを加算することで新たな候補点を求め、候補点算出テーブルの該当するインデックスに候補点のX座標およびY座標を記録する。   Next, a new candidate point is calculated from the current candidate point position and the perpendicular direction vector (S720). Specifically, a new candidate point is obtained by adding a perpendicular direction vector to the position coordinates of the current candidate point, and the X coordinate and Y coordinate of the candidate point are recorded in the corresponding index of the candidate point calculation table.

次に、新たな候補点における隆線の垂線方向ベクトルを算出する(S725)。   Next, the perpendicular direction vector of the ridge at the new candidate point is calculated (S725).

次に、新たな候補点があらかじめ設定した有効領域(図8の領域810)内にあるか否かを調べる(S730)。その結果、候補点が有効領域内にあれば(S730:OK)、候補点の数があらかじめ設定した個数(=20)に達したか否かを調べる(S740)。その結果、達していなければ(S740:NO)、候補点を示すインデックスjに1を加算し(S743)、新たな候補点を算出する処理S720に戻り、前述した処理を繰り返す。   Next, it is checked whether or not the new candidate point is within the preset effective area (area 810 in FIG. 8) (S730). As a result, if the candidate point is within the effective area (S730: OK), it is checked whether or not the number of candidate points has reached the preset number (= 20) (S740). As a result, if not reached (S740: NO), 1 is added to the index j indicating the candidate point (S743), the process returns to the process S720 for calculating a new candidate point, and the above-described process is repeated.

一方、候補点の数があらかじめ設定した個数に達した場合(S740:YES)、又は、新たな候補点があらかじめ設定した有効領域内にない場合は(S730:NG)、ここまでで算出した各候補点の曲率を求め、最大の曲率を持つ候補点の座標および曲率を、RAM330に設けられたコア探索結果テーブルの対応する位置に記録する(S745)。   On the other hand, when the number of candidate points reaches a preset number (S740: YES), or when a new candidate point is not within the preset effective area (S730: NG), each of the above calculated points The curvature of the candidate point is obtained, and the coordinates and curvature of the candidate point having the maximum curvature are recorded at the corresponding positions in the core search result table provided in the RAM 330 (S745).

図11は、コア探索結果テーブルの構成例を示す図である。同図に示すように、コア探索結果テーブルは、「探索回数のインデックス」と、各探索において、「最大曲率を持つ点の座標」と、「最大曲率」とを有する。なお、図10は、10回の探索を終了した結果を示している。   FIG. 11 is a diagram illustrating a configuration example of a core search result table. As shown in the figure, the core search result table includes “index of search frequency”, “coordinates of a point having the maximum curvature”, and “maximum curvature” in each search. FIG. 10 shows the result of completing 10 searches.

曲率はどのような方法で求めてもよいが、ここでは隣り合う候補点のなす角度の余弦を曲率として定義する。例えば、図8に示した4番目の候補点820の曲率は角度830の余弦で計算される。このように全ての候補点の曲率を計算し、このうち最大の曲率を持つ候補点の座標をコア探索結果テーブルの対応する位置に記録する。図10に示した例では、曲率−0.3が最大であるため、4番目の候補点の座標および曲率を図11のインデックス1に対応する位置に記録する。   The curvature may be obtained by any method, but here, the cosine of the angle formed by the adjacent candidate points is defined as the curvature. For example, the curvature of the fourth candidate point 820 shown in FIG. 8 is calculated by the cosine of the angle 830. In this way, the curvatures of all candidate points are calculated, and the coordinates of the candidate point having the maximum curvature among these are recorded at corresponding positions in the core search result table. In the example shown in FIG. 10, since the curvature -0.3 is the maximum, the coordinates of the fourth candidate point and the curvature are recorded at the position corresponding to the index 1 in FIG.

今回探索された候補点の最大曲率が求まると、次に、探索の回数iがあらかじめ設定された回数(=10)を超えたか否かを判定する(S750)。その結果、越えていなければ、探索回数iに1を加算し(S753)、次の探索の初期位置を設定する処理S710に戻り、前述した処理を繰り返す。   Once the maximum curvature of the candidate points searched this time is obtained, it is next determined whether or not the number of searches i has exceeded a preset number (= 10) (S750). As a result, if not exceeded, 1 is added to the number of searches i (S753), the process returns to the process S710 for setting the initial position of the next search, and the process described above is repeated.

一方、探索の回数があらかじめ設定された回数(=10)を超えていた場合は、全ての探索結果から、コアの座標を算出する(S755)。   On the other hand, if the number of searches exceeds the preset number (= 10), the coordinates of the core are calculated from all the search results (S755).

コアの座標を算出するには、全ての探索で求まったコアの候補の座標を平均してコア位置とする方法や、あらかじめ定めた最大曲率のしきい値以上を持つ候補点だけを平均してコア位置とする方法などがある。例えば、最大曲率のしきい値を−0.5とし、しきい値以下の最大曲率をもつ候補は無効とすると、図11の例では、10番目の探索による候補点は最大曲率が−0.8のため無効となり、1番から9番までを平均してコアの位置を算出することになる。   To calculate the coordinates of the core, the coordinates of the core candidates obtained in all searches are averaged to obtain the core position, or only the candidate points having a threshold value of the predetermined maximum curvature or more are averaged. There is a method of setting the core position. For example, if the threshold value of the maximum curvature is −0.5 and a candidate having a maximum curvature equal to or less than the threshold value is invalid, in the example of FIG. 11, the candidate point by the tenth search has a maximum curvature of −0. 8 is invalid, and the core positions are calculated by averaging 1st to 9th.

次に、前述した隆線の垂線方向ベクトルの算出方法について説明する。ここでは、まず、候補点における隆線方向(隆線と平行になる方向)を算出し、それに直交する方向を算出することで、隆線の垂線方向ベクトルを算出する。   Next, a method for calculating the above-described ridge normal vector will be described. Here, first, a ridge direction vector of a ridge is calculated by calculating a ridge direction (a direction parallel to the ridge) at a candidate point and calculating a direction orthogonal thereto.

そこで、隆線方法の算出方法について説明する。   Therefore, a calculation method of the ridge method will be described.

図12は、本実施形態の隆線方向の算出方法の概念を示す図である。同図は、指紋画像の一部を示しており、隆線を実線で表している。指紋画像のあるピクセル上の点2505における隆線方向は以下のように算出することができる。まず、点2505を通る直線上の点2510を複数設定する。次に、点2505の輝度と点2510の各々の輝度との差の絶対値を全て加算する。この作業を複数の方向について行い、最も値の小さい方向が隆線の方向と一致していると判断する。   FIG. 12 is a diagram showing the concept of the ridge direction calculation method of the present embodiment. This figure shows a part of the fingerprint image, and the ridges are represented by solid lines. The ridge direction at a point 2505 on a pixel of a fingerprint image can be calculated as follows. First, a plurality of points 2510 on a straight line passing through the point 2505 are set. Next, all the absolute values of the differences between the luminance at point 2505 and the luminance at each point 2510 are added. This operation is performed for a plurality of directions, and it is determined that the direction with the smallest value coincides with the direction of the ridge.

図13は、隆線方向算出処理の処理フローを示す図である。   FIG. 13 is a diagram illustrating a processing flow of ridge direction calculation processing.

まず、角度を0度に初期化する(S2600)。ここでは、0度から20度ごとに160度までのそれぞれの角度について処理を行うものとする。また、角度ごとの評価値の値を0に初期化する。   First, the angle is initialized to 0 degrees (S2600). Here, it is assumed that processing is performed for each angle from 0 degree to 160 degrees every 20 degrees. In addition, the evaluation value for each angle is initialized to zero.

次に、参照点の位置を初期化し、その座標を算出する(S2605)。具体的には、図12の点2505のように隆線方向を算出しようとしている点(以下、基準点と呼ぶ)を通る直線上の点である。ここでは、図12に示すように、4つの点を参照点として使う。   Next, the position of the reference point is initialized and its coordinates are calculated (S2605). Specifically, it is a point on a straight line that passes through a point (hereinafter referred to as a reference point) for which the ridge direction is to be calculated, like a point 2505 in FIG. Here, as shown in FIG. 12, four points are used as reference points.

次に、参照点の輝度と基準点の輝度の差の絶対値を算出し、対応する角度に割り当てられた評価値に加算する(S2610)。   Next, the absolute value of the difference between the luminance of the reference point and the luminance of the reference point is calculated and added to the evaluation value assigned to the corresponding angle (S2610).

次に、参照点を移動し、その座標を算出する(S2615)。   Next, the reference point is moved, and its coordinates are calculated (S2615).

次に、全ての参照点について処理を終了したか否かを判別し(S2620)、その結果、全ての参照点について処理が終わっていなければ(S2620:NO)、ステップS2610に戻り、前述した処理を繰り返す。   Next, it is determined whether or not the processing has been completed for all the reference points (S2620). As a result, if the processing has not been completed for all the reference points (S2620: NO), the process returns to step S2610, and the processing described above is performed. repeat.

一方、全ての参照点について処理を終了していれば(S2620:YES)、角度に20度を加算し(S2625)、角度が180度に達しているか否かを判別する(S2630)。その結果、角度が180度に達していなければ(S2630:NO)、ステップS2605に戻って、前述した処理を繰り返す。   On the other hand, if the processing has been completed for all reference points (S2620: YES), 20 degrees is added to the angle (S2625), and it is determined whether the angle has reached 180 degrees (S2630). As a result, if the angle has not reached 180 degrees (S2630: NO), the process returns to step S2605 and the above-described processing is repeated.

一方、角度が180度に達していれば(S2630:YES)、各々の角度に割り当てられた評価値のうち、最小の値を持つ角度を算出する(S2635)。最小の値を持つ角度が基準点における隆線の方向となる。   On the other hand, if the angle has reached 180 degrees (S2630: YES), the angle having the smallest value among the evaluation values assigned to each angle is calculated (S2635). The angle with the smallest value is the direction of the ridge at the reference point.

以上説明したように、本実施形態におけるコア位置検出処理では、コアを検出する際に隆線の垂線方向ベクトルを探索し、垂線方向ベクトルが大きく変化する位置を多数決によってコアと決定することで、少ない計算量でコアの位置を検出ことができる。   As described above, in the core position detection processing in the present embodiment, when detecting a core, the ridge perpendicular direction vector is searched, and the position where the perpendicular direction vector greatly changes is determined as the core by majority vote. The core position can be detected with a small amount of calculation.

次に、本実施形態における照合処理について説明する。   Next, the collation process in this embodiment will be described.

図14は、本実施形態における照合処理の概略フローを示す図である。本処理は、リーダライタ110とICカード100とが通信をしながら行うため、同図の左側にリーダライタ110の処理を、右側にICカード100の処理を記載している。   FIG. 14 is a diagram showing a schematic flow of collation processing in the present embodiment. Since this processing is performed while the reader / writer 110 and the IC card 100 communicate with each other, the processing of the reader / writer 110 is described on the left side and the processing of the IC card 100 is described on the right side.

同図に示すように、ICカード100で行われる処理には、補正ベクトル算出処理S1190と、チップ位置算出処理S1191と、チップマッチング処理S1192とがあり、それぞれは、ISO7816−4などで定義されるコマンドとしてICカード100に実装されている。   As shown in the figure, the processes performed in the IC card 100 include a correction vector calculation process S1190, a chip position calculation process S1191, and a chip matching process S1192, each defined by ISO 7816-4 or the like. It is mounted on the IC card 100 as a command.

まず、リーダライタ110がICカード100の補正ベクトル算出処理S1190を呼び出す(S1100)。この際、中間指紋情報に記録した入力指紋のコアの座標をパラメータとして渡す。具体的には、ISO7816−4に記載のAPDU(Application Protocol Data Unit)をICカード100に送信することで処理を呼び出す。   First, the reader / writer 110 calls the correction vector calculation process S1190 of the IC card 100 (S1100). At this time, the coordinates of the core of the input fingerprint recorded in the intermediate fingerprint information are passed as parameters. Specifically, the process is called by transmitting an APDU (Application Protocol Data Unit) described in ISO 7816-4 to the IC card 100.

図15は、補正ベクトル算出処理を呼び出すためのAPDUの例を示す図である。同図に示すように、APDU1500のINSフィールドに、補正ベクトル算出処理のコマンドIDを代入し、データフィールドに、コアのX座標、Y座標を代入し、Lcフィールドに、座標のデータ長を代入している。   FIG. 15 is a diagram illustrating an example of an APDU for calling the correction vector calculation process. As shown in the figure, the command ID of the correction vector calculation process is substituted into the INS field of the APDU 1500, the core X coordinate and Y coordinate are substituted into the data field, and the coordinate data length is substituted into the Lc field. ing.

ICカード100は、リーダライタ110からAPDU1500を受信すると、補正ベクトル算出処理を起動する(S1190)。補正ベクトル算出処理は、リーダライタ110から受け取った入力指紋のコアの座標と、あらかじめICカード100に記録された登録指紋のコア位置の差分ベクトルを、両者の位置ずれを表す補正ベクトルとして算出し、ICカード100のRAM230に記録する。その後、リーダライタ110に応答する。具体的には、ISO7816−4に記載の応答APDU(Response Application Protocol Data Unit)をリーダライタ110に出力することで応答する。   When receiving the APDU 1500 from the reader / writer 110, the IC card 100 activates the correction vector calculation process (S1190). The correction vector calculation process calculates a difference vector between the coordinates of the core of the input fingerprint received from the reader / writer 110 and the core position of the registered fingerprint recorded in advance on the IC card 100 as a correction vector representing the positional deviation between the two. Record in the RAM 230 of the IC card 100. Thereafter, it responds to the reader / writer 110. Specifically, the response is made by outputting a response application protocol data unit (APDU) described in ISO 7816-4 to the reader / writer 110.

図16は、補正ベクトル算出処理S1190の応答APDUの例を示す図である。同図に示すように、応答APDU1510は、SW1フィールドにコマンドのステータスを含み、ここにコマンドの処理結果として、正常終了あるいは異常終了を示すコードを代入する。補正ベクトル算出処理S1190の詳細は後述する。   FIG. 16 is a diagram illustrating an example of a response APDU in the correction vector calculation process S1190. As shown in the figure, the response APDU 1510 includes a command status in the SW1 field, and a code indicating normal termination or abnormal termination is substituted here as the command processing result. Details of the correction vector calculation process S1190 will be described later.

リーダライタ110は、ICカード100からの応答APDU1510を受けとると(S1105)、応答APDU1510のステータスをチェックする(S1107)。その結果、エラーであれば(S1107:YES)、処理を終了する。   Upon receiving the response APDU 1510 from the IC card 100 (S1105), the reader / writer 110 checks the status of the response APDU 1510 (S1107). If the result is an error (S1107: YES), the process is terminated.

一方、エラーでなければ(S1107:NO)、チップマッチングを行うための入力指紋の部分画像を切り出す座標を取得するため、チップ位置算出処理を呼び出す(S1110)。   On the other hand, if it is not an error (S1107: NO), a chip position calculation process is called in order to obtain coordinates for cutting out the partial image of the input fingerprint for performing chip matching (S1110).

図17は、チップ位置算出処理を呼び出すためにICカード100に送信されるAPDUの例を示す図である。同図に示すように、APDU1520のINSフィールドには、チップ位置算出処理のコマンドIDが代入され、Leフィールドには、戻り値となる座標のデータ長が代入される。   FIG. 17 is a diagram illustrating an example of an APDU transmitted to the IC card 100 to call the chip position calculation process. As shown in the figure, the command ID of the chip position calculation process is assigned to the INS field of the APDU 1520, and the data length of the coordinate serving as the return value is assigned to the Le field.

ICカード100は、APDU1520をリーダライタ110から受信すると、チップ位置算出処理を起動する(S1191)。チップ位置算出処理は、あらかじめ記録された登録指紋の特徴点の座標と、ステップS1190で算出した補正ベクトルから、入力指紋における特徴点の座標を算出する。具体的には、登録指紋の特徴点の座標に補正ベクトルを加えることで、入力指紋での特徴点の座標を算出する。その後、応答APDUを使ってリーダライタ110に応答する。   When receiving the APDU 1520 from the reader / writer 110, the IC card 100 activates the chip position calculation process (S1191). In the chip position calculation process, the coordinates of the feature points in the input fingerprint are calculated from the coordinates of the feature points of the registered fingerprint recorded in advance and the correction vector calculated in step S1190. Specifically, the coordinates of the feature points in the input fingerprint are calculated by adding a correction vector to the coordinates of the feature points of the registered fingerprint. Thereafter, the response APDU is used to respond to the reader / writer 110.

図18は、チップ位置算出処理S1191の応答APDUの例を示す図である。同図に示すように、応答APDU1530のデータフィールドには、特徴点の座標が代入され、SW1フィールドには、コマンドのステータスが代入される。チップ位置算出処理S1191の詳細は後述する。   FIG. 18 is a diagram illustrating an example of a response APDU of the chip position calculation process S1191. As shown in the figure, the coordinates of the feature points are substituted into the data field of the response APDU 1530, and the status of the command is substituted into the SW1 field. Details of the chip position calculation process S1191 will be described later.

リーダライタ110は、応答APDU1530を受信すると(S1115)、応答APDU1530の内容を解析し、異常終了したか否かや、指定された特徴点の位置が不正か否かを調べる(S1117)。その結果、指定された特徴点の位置が不正な場合は(S1117:YES)、ステップS1110に戻り、別のチップ画像について、チップ位置算出処理を呼び出す。また、異常終了していた場合は(S1117:異常終了)、処理を終了する。   When the reader / writer 110 receives the response APDU 1530 (S1115), the reader / writer 110 analyzes the content of the response APDU 1530, and checks whether it has ended abnormally or whether the position of the designated feature point is invalid (S1117). As a result, if the position of the designated feature point is invalid (S1117: YES), the process returns to step S1110 to call the chip position calculation process for another chip image. If the process has ended abnormally (S1117: abnormal end), the process ends.

一方、適当な特徴点の位置が得られた場合は(S1117:NO)、チップ位置算出処理によって指定された座標周辺の部分画像を切り取る(S1120)。部分画像は、チップ画像よりやや大きめの画像であり、その大きさや形状はあらかじめ決められている。   On the other hand, if an appropriate feature point position is obtained (S1117: NO), a partial image around the coordinates designated by the chip position calculation process is cut out (S1120). The partial image is a slightly larger image than the chip image, and its size and shape are determined in advance.

次に、ICカード100のチップマッチング処理を呼び出す(S1125)。この際、データとしてステップS1120で抽出した部分画像を送信する。具体的な呼び出しの方法は、ステップS1100と同様である。   Next, the chip matching process of the IC card 100 is called (S1125). At this time, the partial image extracted in step S1120 is transmitted as data. A specific calling method is the same as that in step S1100.

図19は、チップマッチング処理を呼び出すためのAPDUの例を示す図である。同図に示すように、APDU1540のINSフィールドには、チップマッチング処理のコマンドIDが代入され、Lcフィールドには、部分画像のデータ長が代入され、データフィールドには、部分画像が代入される。   FIG. 19 is a diagram illustrating an example of an APDU for calling a chip matching process. As shown in the figure, the command ID of the chip matching process is substituted for the INS field of the APDU 1540, the data length of the partial image is substituted for the Lc field, and the partial image is substituted for the data field.

ICカード100は、リーダライタ110からAPDU1540を受信すると、チップマッチング処理を起動する(S1192)。チップマッチング処理は、受信した入力指紋の部分画像と、あらかじめICカード100に記録されたチップ画像とのチップマッチング処理を行い、一致していればチップの一致数をインクリメントする。そして、全ての特徴点についてマッチングが終了した場合は、指紋の一致又は不一致をあらわすステータスを応答し、それ以外は、次の特徴点をマッチングするためのステータスを応答する。   When receiving the APDU 1540 from the reader / writer 110, the IC card 100 activates a chip matching process (S1192). In the chip matching process, a chip matching process is performed between the received partial image of the input fingerprint and a chip image recorded in advance on the IC card 100. If they match, the number of matching chips is incremented. When matching is completed for all feature points, a status indicating the fingerprint match or mismatch is returned. Otherwise, a status for matching the next feature point is returned.

図20は、チップマッチング処理の応答APDUの例を示す図である。同図に示すように、応答APDU1550のSW1フィールドに、コマンドのステータスを代入する。具体的には、コマンドの処理結果として、指紋の一致、不一致、あるいは処理継続を示すコードを代入する。チップマッチング処理S1192の詳細は後述する。   FIG. 20 is a diagram illustrating an example of a response APDU of the chip matching process. As shown in the figure, the status of the command is substituted into the SW1 field of the response APDU 1550. Specifically, a code indicating fingerprint matching, mismatching, or processing continuation is substituted as a command processing result. Details of the chip matching processing S1192 will be described later.

リーダライタ110は、チップマッチング処理の応答APDU1550を受信すると、応答APDU1550のステータスを解析し、処理を終了するか否かを判別する(S1135)。その結果、指紋の一致あるいは不一致の結果が得られていれば(S1135:YES)、処理を終了する。一方、それ以外は、ステップS1110に戻り、残りの特徴点についてのマッチングを行う。   When the reader / writer 110 receives the response APDU 1550 of the chip matching process, the reader / writer 110 analyzes the status of the response APDU 1550 and determines whether or not to end the process (S1135). As a result, if a fingerprint match or mismatch result is obtained (S1135: YES), the process ends. On the other hand, the process returns to step S1110 to perform matching for the remaining feature points.

次に、前述した補正ベクトル算出処理S1190について説明する。   Next, the correction vector calculation process S1190 described above will be described.

図21は、補正ベクトル算出処理S1190の詳細フローを示す図である。   FIG. 21 is a diagram showing a detailed flow of the correction vector calculation process S1190.

ICカード100は、リーダライタ110からAPDU1500を受け取ると、APDU1500に含まれた照合画像のコア位置を示すX座標およびY座標をRAM230に記録する(S1900)。   When receiving the APDU 1500 from the reader / writer 110, the IC card 100 records the X coordinate and the Y coordinate indicating the core position of the collation image included in the APDU 1500 in the RAM 230 (S1900).

次に、チップマッチングを行うチップ画像のインデックス(チップ画像インデックス)kを0に初期化し(S1905)、一致チップ数を示す変数Mを0に初期化する(S1907)。   Next, a chip image index (chip image index) k for chip matching is initialized to 0 (S1905), and a variable M indicating the number of matching chips is initialized to 0 (S1907).

次に、リーダライタ110から送られてきた照合画像のコア位置およびあらかじめICカード100に記録された指紋情報(図3)のコアの座標を用いて補正ベクトルを算出する(S1910)。具体的には、照合画像のコアの座標から指紋情報のコアの座標を引くことで、補正ベクトルを算出する。   Next, a correction vector is calculated using the core position of the collation image sent from the reader / writer 110 and the coordinates of the core of the fingerprint information (FIG. 3) recorded in advance on the IC card 100 (S1910). Specifically, the correction vector is calculated by subtracting the core coordinate of the fingerprint information from the coordinate of the core of the collation image.

次に、算出した補正ベクトルの大きさなどの正当性を検証する(S1915)。その結果、適当な補正ベクトルが得られた場合は(S1915:YES)、応答APDUのステータスに正常終了を示すコードを代入し(S1920)、その応答APDUをリーダライタ110に送信する(S1925)。一方、不正な補正ベクトルが得られた場合は(S1915:NO)、応答APDUのステータスに異常終了を示すコードを代入し(S1917)、その応答APDUをリーダライタ110に送信する(S1925)。   Next, the validity of the calculated correction vector is verified (S1915). As a result, if an appropriate correction vector is obtained (S1915: YES), a code indicating normal termination is substituted for the status of the response APDU (S1920), and the response APDU is transmitted to the reader / writer 110 (S1925). On the other hand, if an illegal correction vector is obtained (S1915: NO), a code indicating abnormal termination is substituted for the status of the response APDU (S1917), and the response APDU is transmitted to the reader / writer 110 (S1925).

以上のようにして、補正ベクトル算出処理S1190が行われる。   As described above, the correction vector calculation process S1190 is performed.

次に、前述したチップ位置算出処理S1191について説明する。   Next, the above-described chip position calculation process S1191 will be described.

図22は、チップ位置算出処理S1191の詳細フローを示す図である。   FIG. 22 is a diagram showing a detailed flow of the chip position calculation process S1191.

ICカード100は、チップ位置算出処理S1191を起動するAPDU1520をリーダライタ110から受信すると(S2000)、チップ画像インデックスkをインクリメントし(S2002)、チップ画像インデックスkが指紋情報に記録されたチップの数(=30)以下か否かを判定する(S2005)。その結果、kが指紋情報に記録されたチップの数より大きい場合には(S2005:NO)、応答APDUのステータスに異常終了を示すコードを代入し(S2045)、その応答APDUをリーダライタ110に送信し(S2035)、処理を終了する。   When the IC card 100 receives the APDU 1520 for starting the chip position calculation process S1191 from the reader / writer 110 (S2000), the IC card 100 increments the chip image index k (S2002), and the number of chips in which the chip image index k is recorded in the fingerprint information. It is determined whether or not (= 30) or less (S2005). As a result, if k is larger than the number of chips recorded in the fingerprint information (S2005: NO), a code indicating abnormal termination is substituted for the status of the response APDU (S2045), and the response APDU is transferred to the reader / writer 110. Transmit (S2035), and the process ends.

一方、チップ画像インデックスkが指紋情報に記録されたチップ画像の数以下の場合には(S2005:YES)、指紋情報に記録されたk番目のチップ画像の座標を補正する(S2010)。具体的には、k番目のチップ画像の座標に補正ベクトルを足すことで補正する。   On the other hand, if the chip image index k is less than or equal to the number of chip images recorded in the fingerprint information (S2005: YES), the coordinates of the kth chip image recorded in the fingerprint information are corrected (S2010). Specifically, correction is performed by adding a correction vector to the coordinates of the kth chip image.

次に、補正後のチップの座標が、照合画像に含まれているか否かを検証する(S2015)。その結果、含まれていない場合は(S2015:NO)、応答APDUのステータスに特徴点の位置不正を示すコードを代入し(S2040)、その応答APDUをリーダライタ110に送信し(S2035)、処理を終了する。   Next, it is verified whether or not the corrected coordinates of the chip are included in the collation image (S2015). As a result, if it is not included (S2015: NO), a code indicating the incorrect position of the feature point is substituted for the status of the response APDU (S2040), and the response APDU is transmitted to the reader / writer 110 (S2035). Exit.

一方、補正後のチップの座標が照合画像に含まれている場合は(S2015:YES)、応答APDUのデータフィールドに補正後のチップの座標を代入する(S2025)。更に、応答APDUのステータスに正常終了を示すコードを代入し(S2030)、その応答APDUをリーダライタ110に送信し(S2035)、処理を終了する。   On the other hand, if the corrected chip coordinates are included in the collation image (S2015: YES), the corrected chip coordinates are substituted into the data field of the response APDU (S2025). Further, a code indicating normal termination is substituted for the status of the response APDU (S2030), the response APDU is transmitted to the reader / writer 110 (S2035), and the processing is terminated.

以上のようにして、チップ位置算出処理S1191が行われる。   As described above, the chip position calculation process S1191 is performed.

次に、前述したチップマッチング処理S1192について説明する。   Next, the above-described chip matching process S1192 will be described.

図23は、チップマッチング処理S1192の詳細フローを示す図である。   FIG. 23 is a diagram illustrating a detailed flow of the chip matching processing S1192.

ICカード100は、リーダライタ110からチップマッチング処理S1192を起動するAPDU1540を受信すると、データフィールドに記録された部分画像をRAM230に記録する(S2100)。   When the IC card 100 receives the APDU 1540 that activates the chip matching process S1192 from the reader / writer 110, the IC card 100 records the partial image recorded in the data field in the RAM 230 (S2100).

次に、チップ画像インデックスkが、あらかじめ指紋情報に記録されたチップの数(=30)以下か否かを検証する(S2105)。その結果、インデックスkがチップの数より大きい場合(S2105:NO)、応答APDUのステータスに指紋が不一致であることを示すコードを代入し(S2150)、その応答APDUをリーダライタ110に送信する(S2140)。   Next, it is verified whether or not the chip image index k is equal to or less than the number of chips (= 30) recorded in advance in the fingerprint information (S2105). As a result, if the index k is larger than the number of chips (S2105: NO), a code indicating that the fingerprint does not match is substituted for the status of the response APDU (S2150), and the response APDU is transmitted to the reader / writer 110 ( S2140).

一方、インデックスkがチップ画像数以下の場合は(S2105:YES)、部分画像とk番目のチップ画像のマッチング(チップマッチング)を行い、部分画像においてチップ画像と一致したか否かを示すコードを出力する(S2110)。このマッチングの具体的な方法は後述する。   On the other hand, if the index k is less than or equal to the number of chip images (S2105: YES), the partial image and the kth chip image are matched (chip matching), and a code indicating whether or not the partial image matches the chip image is obtained. Output (S2110). A specific method of this matching will be described later.

次に、チップ画像と部分画像が一致したか否かを調べ(S2115)、一致しなかった場合は(S2115:NO)、応答APDUのステータスに照合を継続することを示すコードを代入し(S2145)、その応答APDUをリーダライタ110に送信する(S2140)。   Next, it is checked whether or not the chip image and the partial image match (S2115). If they do not match (S2115: NO), a code indicating that matching is continued is substituted for the status of the response APDU (S2145). The response APDU is transmitted to the reader / writer 110 (S2140).

一方、チップ画像と部分画像が一致した場合は(S2115:YES)、一致チップ数Mをインクリメントし(S2120)、一致チップ数Mがあらかじめ定めたしきい値(=20)より大きいか否かを判定する(S2125)。その結果、Mがしきい値以下である場合は(S2125:NO)、応答APDUのステータスに照合を継続することを示すコードを代入し(S2145)、その応答APDUをリーダライタ110に送信する(S2140)。   On the other hand, if the chip image and the partial image match (S2115: YES), the matching chip number M is incremented (S2120), and whether or not the matching chip number M is larger than a predetermined threshold (= 20). Determination is made (S2125). As a result, if M is equal to or less than the threshold value (S2125: NO), a code indicating that the verification is continued is substituted for the status of the response APDU (S2145), and the response APDU is transmitted to the reader / writer 110 ( S2140).

一方、Mがしきい値より大きい場合は(S2125:YES)、照合画像とあらかじめICカード100に記録された指紋情報が一致したと判断し、ICカード100が相互認証を行うための秘密鍵242を使用可能にする(S2130)。   On the other hand, if M is larger than the threshold value (S2125: YES), it is determined that the collation image and the fingerprint information recorded in advance on the IC card 100 match, and the secret key 242 for the IC card 100 to perform mutual authentication is determined. Is made available (S2130).

次に、応答APDUのステータスに指紋が一致したことを示すコードを代入し(S2135)、その応答APDUをリーダライタ110に送信して(S2140)、処理を終了する。   Next, a code indicating that the fingerprint matches the status of the response APDU is substituted (S2135), the response APDU is transmitted to the reader / writer 110 (S2140), and the process ends.

次に、前述したチップマッチング処理S1192で行われるマッチング処理S2110の詳細について説明する。   Next, details of the matching processing S2110 performed in the above-described chip matching processing S1192 will be described.

本処理では、図24に示すように、部分画像上をらせん状の軌道に従って移動しつつ、部分画像の一部とチップ画像とが一致しているか否かを判定する。なお、軌道はらせん状でなくともよい。   In this processing, as shown in FIG. 24, it is determined whether or not a part of the partial image matches the chip image while moving along the spiral trajectory on the partial image. The trajectory need not be spiral.

また、本実施形態では、不一致ビット数検索テーブルをROM250またはEEPROM240にあらかじめ用意しておき、チップ画像と部分画像を比較したときの一致しないビットの数を数える際、その不一致ビット数検索テーブルを利用する。   In the present embodiment, a mismatch bit number search table is prepared in advance in the ROM 250 or the EEPROM 240, and the mismatch bit number search table is used when counting the number of bits that do not match when the chip image and the partial image are compared. To do.

図25は、不一致ビット数検索テーブルの構成例を示す図である。同図に示すように、本テーブルは、インデックスを2進数で表現したときの1の数を記録したものである。例えば、インデックス3(=11b)に対しては、2が記録され、インデックス4(=100b)に対しては、1が記録される。ここでは、チップ画像と部分画像とを8ビット単位で比較することに対応して、0から255までの256要素のテーブルを用意する。   FIG. 25 is a diagram illustrating a configuration example of a mismatch bit number search table. As shown in the figure, this table records the number of 1 when the index is expressed in binary. For example, 2 is recorded for index 3 (= 11b), and 1 is recorded for index 4 (= 100b). Here, a table of 256 elements from 0 to 255 is prepared corresponding to the comparison between the chip image and the partial image in units of 8 bits.

図26は、マッチング処理S2110の詳細フローを示す図である。   FIG. 26 is a diagram showing a detailed flow of the matching process S2110.

まず、部分画像上の照合位置を初期化する(S2200)。例えば、チップ画像が部分画像の中央部にくるような位置を最初の照合位置とする。   First, the collation position on the partial image is initialized (S2200). For example, the position where the chip image is at the center of the partial image is set as the first collation position.

次に、照合位置に従って部分画像からチップ画像と同じ大きさの画像を切り出し、RAM230上に確保された照合用画像バッファにコピーする(S2205)。例えば、チップ画像が16ピクセル四方であるとすると、1ピクセルあたりが1ビットに対応するので必要となる照合用画像バッファは256ビット、すなわち32バイトとなる。この場合、チップ画像も同様に32バイトの領域を持ち指紋情報の一部としてEEPROM240に格納されている。   Next, an image having the same size as the chip image is cut out from the partial image according to the collation position, and copied to the collation image buffer secured on the RAM 230 (S2205). For example, if the chip image is 16 pixels square, since one pixel corresponds to 1 bit, the required image buffer for verification is 256 bits, that is, 32 bytes. In this case, the chip image similarly has a 32-byte area and is stored in the EEPROM 240 as a part of fingerprint information.

次に、チップ画像と照合用画像バッファとの間で一致しないビット数を示す不一致ビット数を0に初期化し(S2210)、チップ画像と照合用画像バッファの比較対象位置を示すオフセットを0に初期化する(S2215)。   Next, the number of mismatch bits indicating the number of bits that do not match between the chip image and the verification image buffer is initialized to 0 (S2210), and the offset indicating the comparison target position between the chip image and the verification image buffer is initialized to 0. (S2215).

次に、チップ画像および照合用画像バッファのオフセット位置のデータの排他的論理和をとり、結果をRAM230に保存する(S2220)。ここでは、1バイト単位で、排他的論理和をとるものとする。   Next, an exclusive OR of the chip image and the data at the offset position of the collation image buffer is taken, and the result is stored in the RAM 230 (S2220). Here, it is assumed that exclusive OR is taken in units of 1 byte.

次に、排他的論理和の結果をインデックスとして、不一致ビット数検索テーブルを参照し、得られた数を、不一致ビット数に加算する(S2230)。   Next, using the result of the exclusive OR as an index, the mismatch bit number search table is referred to, and the obtained number is added to the mismatch bit number (S2230).

次に、不一致ビット数があらかじめ定めたしきい値(=30)以上であるか否かを判別する(S2235)。その結果、不一致ビット数があらかじめ定めたしきい値未満である場合は(S2235:NO)、チップ画像および照合用画像バッファの全てのデータについて計算を行い、オフセットが最後まで達したかどうかを調べ(S2240)、最後まで達していなければ(S2240:NO)、オフセットに1を加算し(S2243)、オフセットの示すチップ画像および照合用画像バッファの排他的論理和をとる処理S2220に戻り、前述した処理を繰り返す。   Next, it is determined whether or not the number of mismatch bits is equal to or greater than a predetermined threshold value (= 30) (S2235). As a result, when the number of mismatch bits is less than a predetermined threshold value (S2235: NO), calculation is performed for all data in the chip image and the image buffer for verification, and it is checked whether the offset has reached the end. (S2240) If it has not reached the end (S2240: NO), 1 is added to the offset (S2243), and the process returns to the processing S2220 to obtain the exclusive OR of the chip image indicated by the offset and the image buffer for collation. Repeat the process.

一方、オフセットが最後まで達していた場合は(S2240:YES)、チップ画像が部分画像と一致したことを示すコードを出力し(S2245)、処理を終了する。   On the other hand, if the offset has reached the end (S2240: YES), a code indicating that the chip image matches the partial image is output (S2245), and the process ends.

また、ステップS2235における判別の結果、不一致ビット数があらかじめ定めたしきい値以上であった場合は(S2235:YES)、部分画像全体にわたって照合したか否かを調べ(S2237)、まだ照合していない照合位置がある場合は(S2237:NO)、照合位置を移動させ(S2238)、ステップS2205に戻って、前述した処理を繰り返す。   If the number of mismatched bits is equal to or greater than a predetermined threshold as a result of the determination in step S2235 (S2235: YES), it is checked whether or not the entire partial image has been collated (S2237). If there is no collation position (S2237: NO), the collation position is moved (S2238), the process returns to step S2205, and the above-described processing is repeated.

一方、最後まで照合していれば(S2237:YES)、チップが部分画像と一致しなかったことを示すコードを出力し(S2239)、処理を終了する。   On the other hand, if collation is completed to the end (S2237: YES), a code indicating that the chip does not match the partial image is output (S2239), and the process ends.

以上のようにして、チップマッチング処理が行われる。   The chip matching process is performed as described above.

以上の説明では、照合処理において、指紋のコアの位置を使って補正ベクトルの算出を行っていたが、他の方法で補正ベクトルを算出するようにしてもよい。   In the above description, in the collation process, the correction vector is calculated using the position of the fingerprint core, but the correction vector may be calculated by other methods.

次に、特徴点の分布の相互相関を使って、補正ベクトルを算出する方法について説明する。この場合、前述した前処理等において、コア位置の検出等を行う必要がなくなる。   Next, a method for calculating the correction vector using the cross-correlation of the feature point distribution will be described. In this case, it is not necessary to detect the core position or the like in the preprocessing described above.

以下、ICカード100において補正ベクトルを算出する場合とリーダライタ110において補正ベクトルを算出する場合について説明する。まず、ICカード100において、補正ベクトルを算出する場合について説明する。   Hereinafter, a case where the correction vector is calculated in the IC card 100 and a case where the correction vector is calculated in the reader / writer 110 will be described. First, a case where the correction vector is calculated in the IC card 100 will be described.

この場合、前述した照合処理と異なる部分は、図14のステップS1100において、リーダライタ110がICカード100に送信するAPDUと、そのAPDUによって呼び出される補正ベクトル算出処理S1190の内容のみである。   In this case, the difference from the above-described collation process is only the APDU that the reader / writer 110 transmits to the IC card 100 in step S1100 of FIG.

図27は、図14に示したステップS1100において、補正ベクトル算出処理S1190を呼び出すためにリーダライタ110がICカード100に送信するAPDUの例を示す図である。同図に示すように、APDU2700のINSフィールドには、対応するコマンドIDが代入され、データフィールドには、前処理で抽出した入力指紋のすべての特徴点の座標が代入される。   FIG. 27 is a diagram illustrating an example of an APDU that the reader / writer 110 transmits to the IC card 100 in order to call the correction vector calculation process S1190 in step S1100 illustrated in FIG. As shown in the figure, the corresponding command ID is substituted in the INS field of the APDU 2700, and the coordinates of all the feature points of the input fingerprint extracted in the preprocessing are substituted in the data field.

図28は、APDU2700によって呼び出される補正ベクトル算出処理S1190の詳細フローを示す図である。   FIG. 28 is a diagram showing a detailed flow of the correction vector calculation process S1190 called by the APDU 2700.

ICカード100は、APDU2700を受信すると(S2800)、送られてきた入力指紋の特徴点の座標を使って、入力指紋の特徴点マップを生成する(S2805)。特徴点マップとは、各特徴点の座標の周辺に特定の輝度分布を持った画像をいう。図29は、特徴点マップの例を示す図である。特徴点座標の周辺の輝度分布の形状や大きさ等については、実装条件に応じて、適当なものが選択される。   Upon receiving the APDU 2700 (S2800), the IC card 100 generates a feature point map of the input fingerprint using the sent coordinates of the feature points of the input fingerprint (S2805). The feature point map is an image having a specific luminance distribution around the coordinates of each feature point. FIG. 29 is a diagram illustrating an example of a feature point map. For the shape and size of the luminance distribution around the feature point coordinates, an appropriate one is selected according to the mounting conditions.

入力指紋について特徴点マップを生成すると、次に、指紋情報に記録された登録指紋の特徴点の座標から、同様に特徴点マップを生成する(S2810)。   Once the feature point map is generated for the input fingerprint, the feature point map is similarly generated from the coordinates of the feature points of the registered fingerprint recorded in the fingerprint information (S2810).

そして、入力指紋と登録指紋の特徴点マップを二次元信号とみなして正規化された相互相関を算出する(S2815)。相互相関の算出は、通常用いられている方法、例えば、「ディジタル画像処理」(ローゼンフェルド他、近代科学社、1978年発行)306頁に記載されている方法を用いて行う。   Then, a normalized cross-correlation is calculated by regarding the feature point map of the input fingerprint and the registered fingerprint as a two-dimensional signal (S2815). The cross-correlation is calculated by a commonly used method, for example, the method described in “Digital Image Processing” (Rosenfeld et al., Modern Science, 1978), page 306.

次に、正規化された相互相関値の最も大きい位置を検出し、このときの位置ずれを、補正ベクトルとしてICカード100のRAM230に記録する(S2820)。   Next, the position with the largest normalized cross-correlation value is detected, and the position shift at this time is recorded in the RAM 230 of the IC card 100 as a correction vector (S2820).

そして、図16に示した応答APDU1510に、適当なステータスを代入し、リーダライタ110に送信する(S2825)。   Then, an appropriate status is substituted into the response APDU 1510 shown in FIG. 16, and is transmitted to the reader / writer 110 (S2825).

次に、リーダライタ110で補正ベクトルを算出する場合について説明する。   Next, a case where the correction vector is calculated by the reader / writer 110 will be described.

この場合、図14に示したステップS1100、S1190、S1105を図30に示すような処理で置き換える。   In this case, steps S1100, S1190, and S1105 shown in FIG. 14 are replaced with the processing shown in FIG.

以下、図30に示した処理について説明する。   Hereinafter, the processing illustrated in FIG. 30 will be described.

照合処理が開始されると、まず、リーダライタ110は、登録指紋の特徴点の座標の送信を要求するAPDUをICカード100に送信する(S3000)。   When the collation process is started, the reader / writer 110 first transmits an APDU requesting transmission of the coordinates of the feature points of the registered fingerprint to the IC card 100 (S3000).

図31は、登録指紋の特徴点の座標の送信を要求するAPDUの例を示す図である。同図にしめすように、APDU2710のINSフィールドには、適当なコマンドIDが代入され、Leフィールドには、ICカード100から返信される特徴点の座標データの長さが格納される。   FIG. 31 is a diagram illustrating an example of an APDU that requests transmission of the coordinates of feature points of a registered fingerprint. As shown in the figure, an appropriate command ID is assigned to the INS field of the APDU 2710, and the length of coordinate data of feature points returned from the IC card 100 is stored in the Le field.

ICカード100は、APDU2710を受信すると、ICカード100の指紋情報に記録された特徴点の座標を、図32に示すような応答APDUのデータフィールドに格納し、リーダライタ110に送信する(S3090)。   When receiving the APDU 2710, the IC card 100 stores the coordinates of the feature points recorded in the fingerprint information of the IC card 100 in the data field of the response APDU as shown in FIG. 32 and transmits it to the reader / writer 110 (S3090). .

リーダライタ110は、ICカード100から応答APDU2720を受信すると(S3005)、図28に示した方法と同様に、特徴点マップを生成することにより、補正ベクトルを算出し、リーダライタ110のRAM320に記録する(S3010)。   When the reader / writer 110 receives the response APDU 2720 from the IC card 100 (S3005), the correction vector is calculated by generating a feature point map and recorded in the RAM 320 of the reader / writer 110, as in the method shown in FIG. (S3010).

次に、リーダライタ110は、ICカード100に補正ベクトルを記録させるためのコマンドを発行する(S3015)。具体的には、図15に示すAPDU1500と同形式のAPDUをICカード100に送信する。   Next, the reader / writer 110 issues a command for causing the IC card 100 to record the correction vector (S3015). Specifically, an APDU having the same format as the APDU 1500 shown in FIG. 15 is transmitted to the IC card 100.

ICカードは、そのAPDUを受信すると、APDUに格納されている補正ベクトルをICカード100のRAM230に記録し、図16に示すような応答APDUをリーダライタ110に送信する(S3095)。   When the IC card receives the APDU, it records the correction vector stored in the APDU in the RAM 230 of the IC card 100, and transmits a response APDU as shown in FIG. 16 to the reader / writer 110 (S3095).

リーダライタ110は、応答APDUを受け取ると(S3020)、応答APDUのステータスをチェックする処理S1107に進む。   Upon receiving the response APDU (S3020), the reader / writer 110 proceeds to processing S1107 for checking the status of the response APDU.

以上のように、コアの位置ではなく、特徴点マップにより補正ベクトルを求める場合であっても、指紋画像全体(又は、その一部)についてマッチングをする場合に比べて、高速に補正ベクトルを求めることができる。更に、特徴点の周辺に持たせる輝度分布の大きさを調整することで、指紋に歪みや回転が生じていても正確な位置補正を行うことができる。   As described above, even when the correction vector is obtained from the feature point map instead of the core position, the correction vector is obtained at a higher speed than when matching is performed on the entire fingerprint image (or a part thereof). be able to. Furthermore, by adjusting the size of the luminance distribution provided around the feature points, accurate position correction can be performed even if the fingerprint is distorted or rotated.

以上詳細に説明したように、本発明による本人認証システムによれば、利用者固有の情報をICカードにより個人管理するので、サーバ等で集中管理する場合に比べて、利用者の受容性を改善することができる。また、一度に多数の生体情報が盗難される可能性を軽減し、生体情報の記録管理にかかるコストを低減することができる。   As described above in detail, according to the user authentication system of the present invention, user-specific information is personally managed by an IC card, so that the user's acceptability is improved compared to the case of centralized management by a server or the like. can do. Further, it is possible to reduce the possibility of a large number of biological information being stolen at a time, and to reduce the cost for recording management of biological information.

また、指紋情報および指紋照合機能を、ICカードの内部に実装し、外部からの指紋情報および指紋照合機能へのアクセスを禁止することで、利用者の指紋情報および照合結果の偽造、改ざん、盗用を困難にし、なりすましを防ぐことができる。   In addition, the fingerprint information and fingerprint verification function are installed inside the IC card, and access to the fingerprint information and fingerprint verification function from outside is prohibited, so that the user's fingerprint information and verification results are counterfeited, falsified, and stolen. Can prevent impersonation.

また、指紋入力機能および指紋照合の前処理機能をリーダライタに実装することで、一般的なICカードのCPUで指紋照合を行える。   In addition, by mounting a fingerprint input function and a fingerprint collation pre-processing function on a reader / writer, fingerprint collation can be performed by a general IC card CPU.

更に、指紋照合機能を、ICカードとリーダライタとに分けて実装しているので、照合処理が解析されずらくなる。   Furthermore, since the fingerprint collation function is separately implemented for the IC card and the reader / writer, the collation process is difficult to analyze.

また、指紋の特徴的な構造であるコアの座標をICカードの指紋情報に記録し、前処理によってあらたに入力した指紋画像からコアの座標を検出することで、指紋情報に記録された特徴点の座標を補正し、指紋情報に記録したチップ画像を、指紋画像上の補正された座標周辺でチップマッチングによって探索し、一致したチップ画像の個数をもって指紋情報と指紋画像の同一性を判定することで、RAM容量の小さいICカードでも指紋照合を行える。   In addition, the core coordinates, which are the characteristic structure of the fingerprint, are recorded in the fingerprint information of the IC card, and the core coordinates are detected from the fingerprint image newly input by the preprocessing, so that the feature points recorded in the fingerprint information are recorded. The chip image recorded in the fingerprint information is searched by chip matching around the corrected coordinates on the fingerprint image, and the identity of the fingerprint information and the fingerprint image is determined by the number of matching chip images. Thus, fingerprint verification can be performed even with an IC card having a small RAM capacity.

また、チップマッチングの際に、不一致のビットの数をあらかじめ記録した不一致ビット数検索テーブルを用いて、チップマッチングで不一致となったビット数を算出し、ビット数があらかじめ設定したしきい値を越えた場合にはチップマッチングを終了して次の処理に移行することで、演算速度の遅いICカードを用いて指紋照合を行える。   In chip matching, the number of mismatched bits is calculated using a mismatched bit number search table in which the number of mismatched bits is recorded in advance, and the number of bits exceeds a preset threshold. In such a case, by completing the chip matching and proceeding to the next process, it is possible to perform fingerprint collation using an IC card with a slow calculation speed.

なお、上記実施形態では、生体情報として指紋を用いる場合について説明したが、他の生体情報を用いることも可能である。   In the above embodiment, the case where a fingerprint is used as the biometric information has been described. However, other biometric information can be used.

例えば、生体情報として虹彩を用いる場合は、図1のリーダライタ110は、指紋入力部113のかわりに、虹彩情報を入力するための虹彩情報入力部を備え、前処理部112は、入力された虹彩画像の前処理を行い、虹彩照合に必要なアイリスコードを算出する。アイリスコードの算出は、例えば、文献:IEEE Transactions on pattern analysis and machine intelligence, Vol.15, No.11, Nov.1993, pp.1148-1161(以下、文献4という)に記載されている方法を使って行う。   For example, when an iris is used as biometric information, the reader / writer 110 of FIG. 1 includes an iris information input unit for inputting iris information instead of the fingerprint input unit 113, and the preprocessing unit 112 receives the input. The iris image is preprocessed and an iris code necessary for iris matching is calculated. The iris code is calculated, for example, by the method described in the document: IEEE Transactions on pattern analysis and machine intelligence, Vol.15, No.11, Nov.1993, pp.1148-1161 (hereinafter referred to as document 4). Use it.

このようにして算出されたアイリスコードは、ICカード100に送信される。なお、アイリスコードのICカード100への送信は、一度の送信で行うようにすればよい。   The iris code calculated in this way is transmitted to the IC card 100. Note that the transmission of the iris code to the IC card 100 may be performed by a single transmission.

図1のICカード100には、指紋情報104のかわりに生体情報のテンプレートとしてアイリスコードが記録される。リーダライタ110からアイリスコードを受信すると、ICカード100内の虹彩照合プログラムは、リーダライタ110から送信されたアイリスコードと、ICカード100内のEEPROM等に記録されているアイリスコードとの照合を行う。当該照合は、例えば、文献4に記載された方法で、アイリスコードのハミング距離を算出し、算出したハミング距離が所定のしきい値以下であるか否かによって行う。そして、算出したハミング距離がしきい値以下であった場合は、アイリスコードが一致したと判断し、指紋の場合と同様に、電子認証処理部103の認証情報105へのアクセスを許可し、アプリケーション131と電子認証部103との間で電子認証を行う。   In the IC card 100 of FIG. 1, an iris code is recorded as a template of biometric information instead of the fingerprint information 104. When the iris code is received from the reader / writer 110, the iris collation program in the IC card 100 collates the iris code transmitted from the reader / writer 110 with the iris code recorded in the EEPROM or the like in the IC card 100. . The collation is performed by, for example, calculating the Hamming distance of the iris code by the method described in Document 4 and determining whether the calculated Hamming distance is equal to or less than a predetermined threshold value. If the calculated Hamming distance is equal to or less than the threshold value, it is determined that the iris codes match, and access to the authentication information 105 of the electronic authentication processing unit 103 is permitted, as in the case of the fingerprint, and the application Electronic authentication is performed between 131 and the electronic authentication unit 103.

本発明によるアクセス管理システムの概略を説明するための図である。It is a figure for demonstrating the outline of the access management system by this invention. 本発明によるICカードの構造を示す図である。It is a figure which shows the structure of the IC card by this invention. 指紋情報243の構成例を示す図である。It is a figure which shows the structural example of the fingerprint information 243. FIG. 本発明によるリーダライタの構造を示す図である。It is a figure which shows the structure of the reader / writer by this invention. 指紋照合の概略フローを示す図である。It is a figure which shows the general | schematic flow of fingerprint collation. 指紋のコアおよび特徴点の例を示す図である。It is a figure which shows the example of the core of a fingerprint, and a feature point. 前処理の概略フローを示す図である。It is a figure which shows the general | schematic flow of pre-processing. コア位置検出処理を説明するための概念図である。It is a conceptual diagram for demonstrating a core position detection process. コア探索処理の詳細フローを示す図である。It is a figure which shows the detailed flow of a core search process. コア探索処理における候補点算出テーブルの構成例を示す図である。It is a figure which shows the structural example of the candidate point calculation table in a core search process. コア探索処理におけるコア探索結果テーブルの構成例を示す図である。It is a figure which shows the structural example of the core search result table in a core search process. 隆線方向算出方法の概念図である。It is a conceptual diagram of the ridge direction calculation method. 隆線方向算出処理の詳細フローを示す図である。It is a figure which shows the detailed flow of a ridge direction calculation process. 照合処理の概略フローを示す図である。It is a figure which shows the schematic flow of a collation process. 補正ベクトル算出処理を呼び出すAPDUの例を示す図である。It is a figure which shows the example of APDU which calls a correction vector calculation process. 補正ベクトル算出処理からの応答APDUの例を示す図である。It is a figure which shows the example of the response APDU from a correction vector calculation process. チップ位置算出処理を呼び出すAPDUの例を示す図である。It is a figure which shows the example of APDU which calls a chip | tip position calculation process. チップ位置算出処理からの応答APDUの例を示す図である。It is a figure which shows the example of the response APDU from a chip position calculation process. チップマッチング処理を呼び出すAPDUの例を示す図である。It is a figure which shows the example of APDU which calls a chip matching process. チップマッチング処理からの応答APDUの例を示す図である。It is a figure which shows the example of the response APDU from a chip matching process. 補正ベクトル算出処理の詳細フローを示す図である。It is a figure which shows the detailed flow of a correction vector calculation process. チップ位置算出処理の詳細フローを示す図である。It is a figure which shows the detailed flow of a chip position calculation process. チップマッチング処理の詳細フローを示す図である。It is a figure which shows the detailed flow of a chip matching process. チップマッチング処理の概念を示す図である。It is a figure which shows the concept of a chip matching process. 不一致ビット数検索テーブルの構成例を示す図である。It is a figure which shows the structural example of a mismatch bit number search table. マッチング処理の詳細フローを示す図である。It is a figure which shows the detailed flow of a matching process. 第2の補正ベクトル算出処理を呼び出すAPDUの例を示す図である。It is a figure which shows the example of APDU which calls a 2nd correction vector calculation process. 第2の補正ベクトル算出処理の詳細フローを示す図である。It is a figure which shows the detailed flow of a 2nd correction vector calculation process. 特徴点マップの例を示す図である。It is a figure which shows the example of a feature point map. リーダライタ110で補正ベクトルを算出する場合の処理フローを示す図である。It is a figure which shows the processing flow in the case of calculating a correction vector with the reader / writer. 登録指紋の特徴点の座標の送信を要求するAPDUの例を示す図である。It is a figure which shows the example of APDU which requests | requires transmission of the coordinate of the feature point of a registered fingerprint. 特徴点位置送出処理からの応答APDUの例を示す図である。It is a figure which shows the example of the response APDU from a feature point position transmission process.

符号の説明Explanation of symbols

100 ICカード
110 リーダライタ
120 端末
130 ホストコンピュータ
140 ネットワーク
100 IC card 110 reader / writer 120 terminal 130 host computer 140 network

Claims (10)

耐タンパ性を有した演算機能付き携帯型記憶装置と、
前記携帯型記憶装置に対して情報の読み書きを行う耐タンパ性を有したリーダライタと
を備えた生体認証システムであって、
前記リーダライタは、
生体情報を入力する生体情報入力装置を備え、
当該生体情報入力装置で入力した生体情報の前処理を行い、
前記前処理を行った中間情報を前記携帯型記憶装置に送信し、
前記携帯型記憶装置は、
生体情報のテンプレートと、電子認証に使われる秘密鍵とを備え、
前記中間情報と前記テンプレートとの照合を行い、
当該照合が一致したときに、前記秘密鍵を使用可能にする
ことを特徴とする生体認証システム。
A portable storage device with a calculation function having tamper resistance;
A biometric authentication system including a tamper-resistant reader / writer that reads and writes information from and to the portable storage device,
The reader / writer is
A biological information input device for inputting biological information;
Perform preprocessing of biological information input by the biological information input device,
Transmitting the preprocessed intermediate information to the portable storage device;
The portable storage device includes:
A template for biometric information and a secret key used for electronic authentication are provided.
The intermediate information is compared with the template,
A biometric authentication system, wherein the secret key is usable when the verification is matched.
前記生体情報は、指紋情報であり、
前記リーダライタは、指紋照合に必要な指紋画像情報を前記携帯型記憶装置に順次送信し、
前記携帯型記憶装置は、前記指紋画像情報を順次処理することで、指紋照合を行う
ことを特徴とする請求項1に記載の生体認証システム。
The biological information is fingerprint information,
The reader / writer sequentially transmits fingerprint image information necessary for fingerprint verification to the portable storage device,
The biometric authentication system according to claim 1, wherein the portable storage device performs fingerprint collation by sequentially processing the fingerprint image information.
前記生体情報は、指紋情報であり、
前記テンプレートに記録された登録指紋と、あらたに入力された入力指紋との位置ずれを補正するための情報を、指紋のコア位置を使って算出し、
前記登録指紋の特徴点周辺の小画像を、前記入力指紋の画像上の位置ずれ補正した座標周辺でマッチングすることによって探索し、
一致した小画像の個数をもって、前記テンプレートと前記指紋画像の同一性を判定する
ことを特徴とする請求項1に記載の生体認証システム。
The biological information is fingerprint information,
Information for correcting the positional deviation between the registered fingerprint recorded in the template and the newly input fingerprint is calculated using the core position of the fingerprint,
Search for a small image around the feature point of the registered fingerprint by matching around the coordinates corrected for misalignment on the image of the input fingerprint,
The biometric authentication system according to claim 1, wherein the identity of the template and the fingerprint image is determined based on the number of matched small images.
隆線の垂線ベクトルを探索し、
当該垂線ベクトルが大きく変化する位置を、指紋のコアと決定する
ことを特徴とする請求項3に記載の生体認証システム。
Search the ridge normal vector,
The biometric authentication system according to claim 3, wherein a position where the perpendicular vector greatly changes is determined as a fingerprint core.
前記生体情報は、指紋情報であり、
前記テンプレートに記録された登録指紋と、あらたに入力された入力指紋との位置ずれを補正するための情報を、入力指紋および登録指紋のそれぞれについて、各特徴点の周辺に特定の輝度分布を持つ画像を作成し、当該画像の相互相関により算出し、
前記登録指紋の特徴点周辺の小画像を、前記入力指紋の画像上の位置ずれ補正した座標周辺でマッチングすることによって探索し、
一致した小画像の個数をもって、前記テンプレートと前記指紋画像の同一性を判定する
ことを特徴とする請求項1に記載の生体認証システム。
The biological information is fingerprint information,
Information for correcting misalignment between the registered fingerprint recorded in the template and the newly input fingerprint has a specific luminance distribution around each feature point for each of the input fingerprint and the registered fingerprint. Create an image, calculate by cross-correlation of the image,
Search for a small image around the feature point of the registered fingerprint by matching around the coordinates corrected for misalignment on the image of the input fingerprint,
The biometric authentication system according to claim 1, wherein the identity of the template and the fingerprint image is determined based on the number of matched small images.
携帯型記憶装置と、前記携帯型記憶装置に対して情報の読み書きを行うリーダライタとを備えた生体認証システムであって、
前記リーダライタは、
生体情報の入力を受け付ける生体情報入力手段と、
当該生体情報入力手段を介して入力された生体情報に前処理を施して画像データを生成する前処理手段と、
前記前処理手段で生成した画像データから前記携帯型記憶装置から要求された部分画像を1つ切り出し、当該切り出した1つの部分画像の画像データを前記携帯型記憶装置に送信する送信手段と、を備え、
前記携帯型記憶装置は、
生体情報のテンプレートと、
前記リーダライタから送信された前記1つの部分画像の画像データと前記テンプレートとの照合を行う照合手段と、を備え、
前記照合手段は、前記照合結果が所定の基準を満たさない場合、それまでに送信された部分画像の画像データとは異なる部分画像の画像データを1つ要求することを繰り返すこと
を特徴とする生体認証システム。
A biometric authentication system comprising a portable storage device and a reader / writer that reads and writes information from and to the portable storage device,
The reader / writer is
Biometric information input means for receiving input of biometric information;
Preprocessing means for generating image data by performing preprocessing on the biological information input via the biological information input means;
Transmitting means for cutting out one partial image requested from the portable storage device from the image data generated by the preprocessing means and transmitting the image data of the cut out partial image to the portable storage device; Prepared,
The portable storage device includes:
Biometric template,
Collation means for collating the image data of the one partial image transmitted from the reader / writer with the template;
The collating unit repeatedly requests one piece of image data of a partial image different from the image data of the partial image transmitted so far when the collation result does not satisfy a predetermined criterion. Authentication system.
請求項6に記載の生体認証システムにおいて、
前記生体情報は、指紋情報であり、
前記リーダライタの前処理手段は、前記画像データとして、指紋照合に必要な指紋画像情報を生成し、
前記携帯型記憶装置の照合手段は、前記指紋画像情報を処理することで、指紋照合を行うこと
を特徴とする生体認証システム。
The biometric authentication system according to claim 6,
The biological information is fingerprint information,
The pre-processing means of the reader / writer generates fingerprint image information necessary for fingerprint verification as the image data,
The biometric authentication system, wherein the collation means of the portable storage device performs fingerprint collation by processing the fingerprint image information.
請求項7記載の生体認証システムにおいて、
前記前処理手段は、前記入力された生体情報である指紋情報から、当該指紋のコア位置を算出し、当該コア位置の座標を前記携帯型記憶装置に送出し、
前記テンプレートは、当該テンプレートに登録された指紋の複数の特徴点の座標と、当該座標周辺の小画像と、を有し、
照合手段は、
前記登録された指紋と新たに入力された入力指紋との位置ずれを補正するための情報を、前記テンプレートに登録された指紋のコア位置の座標と前記前処理手段から受信したコア位置の座標とを使って算出する補正情報算出手段と、
前記特徴点の座標と前記位置ずれを補正するための情報とから算出した座標を送信することにより、当該座標周辺の指紋画像情報を前記部分画像として前記リーダライタに要求する要求手段と、
前記座標周辺の小画像と前記要求手段からの要求に応じて前記送信手段から送信された指紋画像情報とをマッチングするマッチング手段と、
複数の前記マッチング結果に従い、前記テンプレートと前記指紋画像との同一性を判定する判定手段と、を備えること
を特徴とする生体認証システム。
The biometric authentication system according to claim 7, wherein
The preprocessing means calculates the core position of the fingerprint from fingerprint information that is the input biometric information, and sends the coordinates of the core position to the portable storage device,
The template has coordinates of a plurality of feature points of a fingerprint registered in the template, and a small image around the coordinates,
The verification means is
Information for correcting a positional deviation between the registered fingerprint and a newly input fingerprint, the coordinates of the core position of the fingerprint registered in the template, and the coordinates of the core position received from the preprocessing means Correction information calculation means for calculating using
Request means for requesting the reader / writer as fingerprint image information around the coordinates by transmitting coordinates calculated from the coordinates of the feature points and information for correcting the positional deviation;
Matching means for matching the small image around the coordinates with fingerprint image information transmitted from the transmitting means in response to a request from the requesting means;
A biometric authentication system comprising: a determination unit that determines the identity between the template and the fingerprint image according to a plurality of matching results.
請求項8記載の生体認証システムにおいて、
前記前処理手段は、
複数の隆線の垂線ベクトルを順次探索し、当該垂線ベクトルの方向が所定値より変化する位置を前記指紋のコア位置とすること
を特徴とする生体認証システム。
The biometric authentication system according to claim 8, wherein
The preprocessing means includes
A biometric authentication system, wherein a perpendicular vector of a plurality of ridges is sequentially searched, and a position where the direction of the perpendicular vector changes from a predetermined value is set as the core position of the fingerprint.
請求項7記載の生体認証システムにおいて、
前記テンプレートに登録された指紋である登録指紋と、新たに入力された指紋である入力指紋との位置ずれを補正するための情報を、入力指紋および登録指紋のそれぞれについて、各特徴点の周辺に特定の輝度分布を持つ画像を作成し、当該画像の相互相関により算出する特徴点マップ生成手段と、
前記登録指紋の特徴点周辺の小画像を、前記入力指紋の画像上の位置ずれ補正した座標周辺でマッチングすることによって探索する探索手段と、
前記探索により一致した前記小画像の個数をもって、前記テンプレートと前記指紋画像との同一性を判定する判定手段とを備えること
を特徴とする記載の生体認証システム。
The biometric authentication system according to claim 7, wherein
Information for correcting misregistration between a registered fingerprint, which is a fingerprint registered in the template, and an input fingerprint, which is a newly input fingerprint, around each feature point for each of the input fingerprint and the registered fingerprint. A feature point map generating means for creating an image having a specific luminance distribution and calculating the cross correlation of the images;
Search means for searching for a small image around the feature point of the registered fingerprint by matching around the coordinates corrected for misalignment on the image of the input fingerprint;
The biometric authentication system according to claim 1, further comprising: a determination unit that determines the identity of the template and the fingerprint image based on the number of the small images that are matched by the search.
JP2007227792A 2007-09-03 2007-09-03 Biometric authentication system Expired - Fee Related JP4586055B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007227792A JP4586055B2 (en) 2007-09-03 2007-09-03 Biometric authentication system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007227792A JP4586055B2 (en) 2007-09-03 2007-09-03 Biometric authentication system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2005264236A Division JP4104621B2 (en) 2005-09-12 2005-09-12 Biometric authentication system

Publications (2)

Publication Number Publication Date
JP2008033949A true JP2008033949A (en) 2008-02-14
JP4586055B2 JP4586055B2 (en) 2010-11-24

Family

ID=39123223

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007227792A Expired - Fee Related JP4586055B2 (en) 2007-09-03 2007-09-03 Biometric authentication system

Country Status (1)

Country Link
JP (1) JP4586055B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012089138A (en) * 2010-10-21 2012-05-10 Arm Ltd Security countermeasure for object image displayed in non-secure domain
JP2019028805A (en) * 2017-07-31 2019-02-21 キヤノン株式会社 System, device management system, and method therefor
CN111080586A (en) * 2019-12-04 2020-04-28 湖南大学 Method for obtaining evidence of tampered image source based on convolutional neural network

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309440A (en) * 1993-04-21 1994-11-04 Fujitsu Ltd Image fetching system for image collating device
JPH0757092A (en) * 1993-08-11 1995-03-03 Yamatake Honeywell Co Ltd Fingerprint collating device
JPH10124668A (en) * 1996-10-16 1998-05-15 Fujitsu Ltd Fingerprint collation system and network certifying device
JPH11143833A (en) * 1997-11-14 1999-05-28 Toshiba Corp User confirmation system and ic card by biological data and storage medium
JP2000067003A (en) * 1998-08-19 2000-03-03 Toshiba Corp Device for authenticating individual and method therefor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06309440A (en) * 1993-04-21 1994-11-04 Fujitsu Ltd Image fetching system for image collating device
JPH0757092A (en) * 1993-08-11 1995-03-03 Yamatake Honeywell Co Ltd Fingerprint collating device
JPH10124668A (en) * 1996-10-16 1998-05-15 Fujitsu Ltd Fingerprint collation system and network certifying device
JPH11143833A (en) * 1997-11-14 1999-05-28 Toshiba Corp User confirmation system and ic card by biological data and storage medium
JP2000067003A (en) * 1998-08-19 2000-03-03 Toshiba Corp Device for authenticating individual and method therefor

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
瀬戸洋一,三村昌弘,石田修一: "ICカード実装型指紋照合による本人認証技術の開発", 2000年暗号と情報セキュリティシンポジウム(SCIS2000)講演論文集, JPN4006011168, 26 January 2000 (2000-01-26), JP, pages 01 - 1, ISSN: 0001564041 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012089138A (en) * 2010-10-21 2012-05-10 Arm Ltd Security countermeasure for object image displayed in non-secure domain
JP2019028805A (en) * 2017-07-31 2019-02-21 キヤノン株式会社 System, device management system, and method therefor
JP6991773B2 (en) 2017-07-31 2022-01-13 キヤノン株式会社 Systems, device management systems, and methods
CN111080586A (en) * 2019-12-04 2020-04-28 湖南大学 Method for obtaining evidence of tampered image source based on convolutional neural network
CN111080586B (en) * 2019-12-04 2023-04-18 湖南大学 Method for obtaining evidence of tampered image source based on convolutional neural network

Also Published As

Publication number Publication date
JP4586055B2 (en) 2010-11-24

Similar Documents

Publication Publication Date Title
KR100785961B1 (en) Biometric authentication system, biometric readerwriter, and mobile storage device
US7391891B2 (en) Method and apparatus for supporting a biometric registration performed on an authentication server
JP4886371B2 (en) Biometric authentication method and system
US8417960B2 (en) Method for generating an encryption key using biometrics authentication and restoring the encryption key and personal authentication system
RU2267159C2 (en) Method and system for generation of a set of parameters of access key, and for authentication of a person on basis of his biometric parameter
JP2017524998A (en) Method and system for performing identity verification
US20030223624A1 (en) Method and apparatus for hashing data
JP2004506253A (en) Biometric identity check
JP2006006753A (en) Registration method of biometrics system, biometrics system, and program thereof
JP4104621B2 (en) Biometric authentication system
JP7155859B2 (en) Authentication device, authentication system, and authentication method
KR20190017975A (en) Biological Feature Recognition Device and Method and Biological Feature Template Registration Method
JP4586055B2 (en) Biometric authentication system
KR100763312B1 (en) Fingerprint certification processing method, and fingerprint certification processing system which includes the fingerprint acquisition department and security certification module
Mimura et al. Fingerprint verification system on smart card
RU2573235C2 (en) System and method for checking authenticity of identity of person accessing data over computer network
KR20080109118A (en) Method for certificating fingerprint information using smart card, and system therefor
JP6795480B2 (en) Biometric system and biometric method
EP2737433B1 (en) Method for identifying an individual and corresponding device
JP2003308302A (en) Biometrics system
JP2011059791A (en) Bioinformation authentication device and bioinformation authentication program
CN115249369A (en) Fingerprint identification device and smart card
KR20050041132A (en) System for identification using living body information and method thereof
SE518419C2 (en) Access right checking system for electronic money transaction through Internet, has smart card whose processor compares preprocessed biometric data with reference data to determine if accessing right exists

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100316

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100517

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100809

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100906

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees