FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENTS RULES, 2003
COMPLETE SPECIFICATION
(See section 10, rule 13)
"BIOMETRICS AUTHENTICATION
METHOD AND CLIENT TERMINAL AND
AUTHENTICATION SERVER USED FOR
BIOMETRICS AUTHENTICATION"
HITACHI, LTD., A Corporation organized under the Laws of Japan, of 6-6, Marunouchi 1-chome, Chiyoda-ku, Tokyo, Japan The following specification particularly describes the invention and the manner in which it is to be performed.
BACKGROUND OF THE INVENTION
The subject matter discussed herein relates to a biometrics authentication method for authenticating an individual by using personal biometric information.
In an individual authentication system using biometric information, the biometric information of an individual is acquired at the time of initial registration and information called a feature is extracted and registered. The feature registered is termed a template. During authentication, the biometric information is again captured from the individual to extract the feature which in turn is collated with the precedently registered template to confirm whether or not the individual is the person in question. When, in a system having a client unit (simply referred to as a client) and a server unit (simply referred to as a server) coupled together through a network, the server carries out biometrics authentication of a user being present on the client side, the server holds a template typically. The client acquires biometric information of the user, extracts a feature to transmit it to the server and the server collates the feature with the template to confirm whether or not the user is the person in
question.
The template is, however, effective information to identify an individual and is therefore required to be managed stringently as personal information, incurring high costs of management. Further, even if the information is placed in stringent management, many persons having their privacy in mind will psychologically be reluctant to resister the template. In addition, the biometric information remains unchanged through life and cannot be changed easily in contrast to the password and the encrypted key. Conceivably, the biometric information may be exchanged for different one but the number of pieces of biometric information of one kind a single individual has is limited (for example, the number of fingerprints is limited to the number of fingers), failing to provide essential solving measures. Accordingly, in case the template is leaked facing a risk of forgery, there arises a problem that the biometrics authentication cannot be used safely ever since. Furthermore, if the same biometric information is registered in a different system, even the different system will be exposed to the menace.
Under the circumstances, a method as described in "Enhancing security and privacy in biometric-based authentication systems by N.K.Ratha, J.H.Connell and R.M.Bolle, IBM system Journal 40(3), 2001 (reference 1) has been proposed, according to
which during registration of biometric information, a feature is transformed with the help of a particular function (a kind of encryption) and a secret parameter (a kind of encrypted key) the client has and the original information is taken in custody as a template by the server while being kept to be concealed and during authentication, a feature of biometric information newly extracted by the client is transformed with the same function and parameter as those above and transmitted to the server, and the server collates the received feature with the template while keeping them transformed (termed cancelable biometrics authentication).
According to the above method, the client keeps the transform parameter secret and so the server cannot know the original feature even during authentication and the privacy of individual can be protected.
Further, even if the template is leaked, the security can be assured by changing the transform parameter, preparing a template again and registering it. In addition, when the same biometric information is used for a different system, templates transformed with the help of different parameters, respectively, are registered so that even with one template leaked, the security of the different system can be prevented from being degraded.
SUMMARY
According to the aforementioned reference 1, the client transforms a feature image x extracted from biometric information of a user with the help of a transform parameter P to prepare a transformed feature T and registers it in the server. The transform parameter P is saved in a Smart card, for example, to enable the user to manage it in secret.
During authentication, a feature image y the client newly extracts from the user's biometric information is transformed with the transform parameter P read out of the user's Smart card to prepare a transformed feature V which in turn is transmitted to the server. The server calculates the degree of similarity (hereinafter simply referred to as similarity) between the T and the V to decide match/mismatch.
In this manner, by transmitting to the server the T and V obtained by transforming the x and y with the secret transform parameter P, the server can be allowed to execute the matching process while x and y are concealed from the server.
Incidentally, when applying the cancelable biometrics authentication to a system in which biometric information is inputted (without inputting any user ID) and a user ID is outputted (hereinafter referred to as 1:N authentication), matching with all transformed features T's in a DB of the server simply
needs to be executed. But in the case of a large-scale DB, for matching with all T's, time to process the matching with all of the T's is prolonged in general, making the system unpractical disadvantageously.
To cope with this problem, a biometrics authentication technology is disclosed in which when applying cancelable biometrics authentication to an 1:N authentication system, the time required for the server to execute the 1:N matching can be shortened to speed up the process.
As an example disclosed, in a method of registering biometric information based on a biometrics authentication method for authenticating an individual without using an ID of the individual but with the use of biometric information in a system including a client and a server, dummy features respectively representing groups each constituted by similar features are set in advance, the client performs a rough process for specifying, on the basis of a dummy feature, a group to which a feature for registration should belong and the server performs a process for registering a transformed feature for registration on the specified group.
As another example disclosed, in a method of authenticating biometric information based on a biometrics authentication method for authenticating an individual without using an ID of the individual but with the use of biometric information in a system including a client and a server, dummy features
respectively representing groups each constituted by similar features are set in advance, the client performs an rough process for specifying, on the basis of a dummy feature, a group to which a feature for authentication should belong and the server performs a detailed process for specifying any one of similar features in respect of the specified group.
Further, the feature is a transformed feature obtained by transforming biometric information extracted from an individual with the help of a predetermined parameter.
As a more specified example of method for biometrics authentication disclosed, in a method for biometrics authentication in which a client terminal transforms a feature for authentication extracted from biometric information of an individual with a transform parameter to obtain a transformed feature for authentication and transmits it to an authentication server and the authentication server includes a database adapted to store a plurality of transformed features for registration and information specifying individuals by making the correspondence between them and searches the database to specify an individual corresponding to a transformed feature for registration which is the most similar to the transformed feature for authentication,
the client terminal stores precedently in the database on the client side dummy features on the basis
of which the features for registration and the features for authentication of the biometric information are classified into any of a plurality of groups, an index for identifying a group and transform parameters corresponding to the respective dummy features;
the authentication server includes a database of transformed features for registration adapted to store the transformed features for registration transformed from the features for registration with the help of transform parameters and information for specifying the individual from which extraction of the features for registration originates while classifying them into any of the plural groups; and
for the process during registration of the biometric information, the client terminal comprises the steps of:
extracting a feature for registration from biometric information acquired from an individual;
searching the database on the client side to specify one dummy feature for registration similar to the feature for registration;
transforming the feature for registration by using a transform parameter corresponding to the specified dummy feature for registration to prepare a transformed feature for registration; and
transmitting to the authentication server the transformed feature for registration, an index for registration adapted to identify the specified group of
dummy features for registration and information for specifying the individual from which the extraction of features for registration originates, and
the authentication server comprises the step of:
registering, at a group corresponding to the index for registration in the database for transformed features for registration, the received transformed feature for registration and the information specifying the individual while making the correspondence between them.
As a furthermore specified example of method for biometrics authentication disclosed, the client terminal includes the steps of:
extracting a feature for authentication from biometric information acquired from an individual;
searching a database on the client side to specify one dummy feature for authentication similar to the feature for authentication;
transforming the feature for authentication by using a transform parameter corresponding to the specified dummy feature for authentication to prepare a transformed feature for authentication; and
transmitting to the authentication server the transformed feature for authentication and the index for authentication adapted to identify a group of specified dummy features for authentication, and
the authentication server includes the steps
of:
searching a group corresponding to the index for authentication in the database for transformed feature for registration to specify a transformed feature for registration which is the most similar to the transformed feature for authentication;
specifying the individual having the correspondence with the specified transformed feature for registration; and
transmitting to the client terminal the information concerning the specified individual.
According to the above examples, in the 1:N biometrics authentication system inputting the biometric information and outputting the user ID, time required for 1:N matching on the server side can be shortened and speedup of the processing can be achieved.
According to the examples of disclosure, a 1:N biometrics authentication system capable of executing high-speed authentication while keeping the user's biometric information concealed can be realized.
These and other benefits are described throughout the present specification. A further understanding of the nature and advantages of the invention may be realized by reference to the remaining portions of the specification and the attached drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
Fig. 1 is a block diagram exemplifying the functional construction of an embodiment.
Fig. 2 is a flowchart exemplifying a dummy feature preparation process in the embodiment.
Fig. 3 is a flowchart exemplifying a process for preparing a hash table of dummy features in the embodiment.
Fig. 4 is a flowchart exemplifying a registration process in the embodiment.
Fig. 5 is a flowchart exemplifying a 1:N authentication process in the embodiment.
Fig. 6 is a block diagram exemplifying the hardware construction in the embodiment.
DESCRIPTION OF THE EMBODIMENTS
An embodiment of the biometrics authentication system will now be described with reference to the accompanying drawings.
The present embodiment will be described by way of example of a 1:N cancelable biometrics authentication system in which a cancelable biometrics authentication is applied to a 1:N authentication.
Referring first to Fig. 1, a 1:N cancelable biometrics authentication system is constructed as shown therein in block diagram form.
In the present embodiment, the 1:N cancelable biometrics authentication system comprises a client
terminal (hereinafter simply referred to as a client) 100 for performing acquisition of biometric information, extraction of features, similarity search to a dummy feature and transformation of the features during registration/authentication, an auxiliary data DB preparation terminal 110 for preparing a DB of auxiliary data inclusive of the dummy feature and an authentication server (hereinafter simply referred to as a server) 120 for storing templates and performing 1:N matching. These components are coupled to one another through a network such as Internet or Intranet.
The client 100 includes a sensor 107 managed by a user on his or her own or by a reliable third party and adapted to acquire biometric information (for example, fingerprints or veins). Taking credit settlement in a retail shop, for instance, the client 100 may structurally be a credit terminal managed by the shop and the server 120 may be a server machine managed by a credit service company.
Then, the client 100 includes a feature extraction unit 101 which extracts a feature from the biometric information captured by the sensor 107, an auxiliary data DB 103 in which a plurality of dummy features are stored in advance, a similarity search unit 102 which performs similarity search to dummy features in the auxiliary data DB 103, a transform parameter DB 105 which stores transform parameters corresponding to respective dummy features, a feature
transform unit 104 which transforms a feature for registration or authentication so as to prepare a transformed feature for registration (hereinafter referred to as a template) or a transformed feature for authentication, and a communication unit 106 which communicates with the server.
The biometric information referred to herein is data indicative of, for example, a fingerprint image, a vein image and an iris image and the feature includes an image of, for example, a fingerprint or vein which undergoes an emphasis process for binary-digitization or it includes a bit string called an iris code prepared from the iris image. Available as the similarity between the two features is that calculated through, for example, cross-correlation. Then, known as the matching algorithm for calculation of similarity on the basis of the cross-correlation is an algorithm which applies a special transformation to the two features in order to calculate a similarity while keeping the original features concealed and keeping them unrecoverable to their original forms (correlation invariant random filtering). Details of the correlation invariant random filtering are disclosed in JP-A-2007-293807 (reference 2) and "Vulnerability Analysis and Improvement of Cancelable Biometrics for Image Matching" by Hirata et al, SCIS2007 Preliminary Papers CD-ROM (reference 3).
The auxiliary data DB preparation terminal
110 includes a feature DB 112 representing a DB of features from which preparation of dummy features originates, a clustering unit 111 which applies clustering to a set of features in the feature DB, a dummy feature preparation unit 113 which prepares dummy features by making use of the results of clustering, an auxiliary data preparation unit 115 which prepares auxiliary data used for performing similarity search to the dummy feature in the client, an auxiliary data DB 114 which stores auxiliary data and a communication unit 116 which communicates with the client 100.
The server 120 includes a communication unit
121 which communicates with the client 100, a database
122 for management of templates (template DB. The database will hereinafter be abbreviated as DB), a registration unit 123 which registers in the template DB 122 a template received from the client, and a 1:N matching unit 124 which collates a transformed feature received from the client with a plurality of templates in the template DB 122.
Illustrated in Fig. 6 is the hardware construction of the client 100 and server 120 in the present embodiment. These components can each be constituted of a CPU 600, a memory 601, a HDD 602, an input unit 603, an output unit 604 and a communication unit 605 as shown in the figure.
The functional construction of the client 100, auxiliary data DB preparation terminal 110 and
server 120 and individual processes to be described later as well can be materialized when each corresponding CPU 600 executes respective programs stored in the memory 601 and the HDD 602. The respective programs may be stored in the corresponding memory 601 and HDD 602 or may be introduced, as necessary, from a different unit by way of a mountable/dismountable memory medium utilizable by the unit, a communication network representing a communication medium or a carrier wave or a digital signal propagating on the communication network.
Next, by making reference to Fig. 2, a flow of a process for preparation of a dummy feature in the present embodiment will be described. Exemplified herein is a method using a centroid as described in "Data Mining" by Jiawei Han and Micheline Kamber, published by Morgan Kaufmann Publishers, pp.348 to 353, 2001 (reference 4). The dummy feature can be prepared through a method other than the above.
In the phase of system development, biometric information is collected in advance from an interested person such as a developer to prepare a set {x[i]} of features which in turn is stored in the feature DB 112. For example, if the biometric information is a finger vein image, a method for feature extraction described in "Feature extraction of finger-vein patterns based on repeated line tracking and its application to personal identification" by N.Miura, A.Nagasaka and T. Miyatake,
Machine Vision and Applications 15(4) (2004), 194-203 (reference 5) can be used.
The clustering unit 111 reads the set {x[i]} of features to execute clustering (S201). Through clustering, features similar to one another are grouped. For details of the clustering, one may refer to reference 4. Where a set of groups of features is represented by {G[j]}, features x[j, k] are included in the G[j]. In these expressions, i is an index for a feature in the feature DB 112, j is an index for the group of clustered/resembling features and k is an index for a feature contained in the group j.
As a specific method for clustering, a k-means method, for example, can be used. The k-means method will be outlined here. The k-means method is a typical process for non-hierarchal cluster analysis and typically it presupposes the Euclidean space. In the method, the number of clusters is designated in advance (here k) and objects are divided into k classes. The non-similarity is defined by the square of a Euclidean distance and the criteria of classification is the non-similarity between the center of a cluster and each object. The k-means method can designate the number of clusters and hence it is meritorious in that a bias in the number of objects among individual clusters can be mitigated. Algorithm of the k-means method is as follows:
in step 1 [for initial value], centers or
initial divisions of k clusters are given at random;
in step 2 [for allotment], each object is allotted to the closest cluster center; and
in step 3 [for update of center], the program ends if allotments of all objects remain unchanged from those in the one preceding step. If not so, the centroid of each cluster is exchanged for a new center and the program returns to step 2.
In the program, respective coordinates at the center of a cluster are represented by a weighted means of coordinate values of objects contained in the cluster and respective coordinate values of the centroid in the cluster are represented by an average devoid of weighting.
The dummy feature preparation unit 113 prepares centroids D[j] in respect of the individual groups G[j] (S 202). The centroid signifies a feature indicative of the barycenter of features contained in the group. For more information, reference is to be made to reference 4. A set of centroids [D[j]} thus prepared is written as a set of dummy features [D[i]} into the auxiliary data DB 114 (S203).
Next, a method for preparation of the transform parameter DB 105 in the present embodiment will be described. Here, transform parameters are individually prepared and made to correspond to the individual dummy features D[i]. A transform parameter corresponding to a dummy feature D[i] is represented by
an R[i]. As for a method for preparation of the transform parameter R[iJ, the method described in reference 2 or 3 can be used in the case of a finger vein image, for instance. Specifically, it is sufficient that a two-dimensional random filter in which values of individual pixels are random numbers is prepared. The random numbers can be generated using a pseudo-random number generator, for example. This random filter is used to provide the transform parameters R[i].
As an example, Locality-Sensitive Hashing
(hereinafter termed LSH) described in "Approximate nearest neighbors towards removing the curse of dimensionality" by P.Indy k and R. Motwani, Proc. of the Symposium on Theory of Computing, 1998 (reference 6) is used for the method of performing similarity search to dummy feature in the present embodiment. Another method may be used for similarity search. For example, "Approximating and Eliminating Search Algorithm" (hereinafter termed AESA) described in "An algorithm for finding nearest neighbours in
(approximately) constant average time" by Vidal Ruiz, Pattern Recognition Letters, pp.145-157, 1986
(reference 7) may be available.
In the LSH, a hash table is necessary. By making reference to Fig. 3, a method of preparing a hash table will be described.
The auxiliary data preparation unit 115 reads
a dummy feature set {D[i]} stored in the auxiliary data DB 114 (S301) .
The auxiliary data preparation unit 115 prepares a hash table (S302). Here, a method described in "Locality-sensitive hashing scheme based on p-stable distributions" by M. Datar, N. Immorlica, P. Indyk and V. Mirrokni, Proc. of the ACM Symposium on Computational Geometry, 2004 (reference 8) is used exemplarily. Another method may be available. In reference 8, the hash is prepared pursuant to the following equation in relation to a feature vector v. equation (1):
ha# b(v)=INT((a-v+b)/r) where the element of vector a has a value extracted randomly from p-stable distributions typified by the Gaussian distribution, the scalar b has a value extracted randomly from the range of [0,r] in accordance with a uniform distribution and the function "INT( )" signifies round-off of decimal.
To add, the hash function used in the LSH is called a hash function sensitive to locality
(hereinafter, termed a locally sensitive hash function) and is defined as will be described below. Where an object original space is S and a space of generated hash values is U, a locally sensitive hash set is defined when a hash function set H={h:S -> U} satisfies conditions as below.
(a) If a point v is distant from a point q within a
radius ri, the probability that a hash value of v collides with that of q is pi or more, and (b) If the point v is not distant from the point q within a radius r2(=cri), the probability that a hash value of v collides with that of q is P2 (p2