# Privacy-Preserving Fingerprint Authentication Using D-H Key Exchange and Secret Sharing

Authors: Huiyong Wang; Mingjun Luo; Yong Ding
Journal: Security and Communication Networks
 (2021)

---

## Abstract

Biometric based remote authentication has been widely deployed. However, there exist security and privacy issues to be addressed since biometric data includes sensitive information. To alleviate these concerns, we design a privacy-preserving fingerprint authentication technique based on Diffie-Hellman (D-H) key exchange and secret sharing. We employ secret sharing scheme to securely distribute fragments of critical private information around a distributed network or group, which softens the burden of the template storage center (TSC) and the users. To ensure the security of template data, the user’s original fingerprint template is stored in ciphertext format in TSC. Furthermore, the D-H key exchange protocol allows TSC and the user to encrypt the fingerprint template in each query using a random one-time key, so as to protect the user’s data privacy. Security analysis indicates that our scheme enjoys indistinguishability against chosen-plaintext attacks and user anonymity. Through experimental analysis, we demonstrate that our scheme can provide secure and accurate remote fingerprint authentication.


---

## Body

## 1. Introduction

Biometric based authentication mainly depends on individual biological characteristics (such as fingerprint, face, iris, and palm print, etc.) or behavioral traits (such as speech and signature, etc.), which is convenient, fast, and less likely to be forgotten, lost, or copied compared to traditional authentication methods like password/tokens [1]. However, biometric based authentication verifies an individual’s identity according to the fixed natural connection between an individual and his or her biometrics. Once biometrics are stolen or forged and misused, it will result in significant losses for individuals, businesses, and even the government [2, 3]. This is because biological characteristics are usually unique and unchangeable, and they can never be revoked or reused once leaked or stolen [4]. Furthermore, the stolen biometric information may be used to acquire sensitive information about the owner, such as ethnic groups, genetic information, medical diseases, and health records [5]. As a result, developing a biometric authentication technique with privacy protection is critical [6–8].Since the biometric authentication system needs to store and transmit individual biometrics in different entities, it is vulnerable to a variety of attacks [9]. For example, once the hackers or other malicious attackers break the template dataset and obtain the biometric data, they can access to all applications without user authorization where the same biological characteristics have been used [10]. A good biometric template protection system should have the following characteristics [11–13]:(1)
Diversity: the same biometric data should have different template representations in different databases to resist cross-matching attacks(2)
Reusability/revocability: the damaged or stolen template should be able to be revoked and a new template can be regenerated based on the same biometric data, which cannot be matched with the damaged or stolen one successfully(3)
Noninvertibility: it is impossible to calculate or obtain a template with reasonable similarity to the original template from the protected template, so as to prevent the adversary’s biological fraud attack(4)
Performance: the performance of the authentication system cannot be greatly reducedTo ensure the template’s security in a biometric authentication system [2, 14], the extracted biometric template should be protected (encrypted or transformed) being stored.In this paper, building upon the fingerprint feature representation “FingerCode,” we propose a privacy-preserving fingerprint authentication scheme, which employs secret sharing and D-H key exchange. We summarise the contributions of the proposed method as follows:(i)
The secret sharing technology effectively reduces the risk of key leakage and relieves storage pressure for users and TSC.(ii)
The D-H key exchange technology used built bilinear groups can effectively conceal the real identity of users and generate different templates, which can resist replay attacks and cross-matching attacks.(iii)
The proposed scheme can prevent attacks like chosen-plaintext attacksCPA and cross-matching attacks and achieve the conditions of diversity, revocability, noninvertibility, and good performance.The rest of this paper is organized as follows. Section2 reviews the existing related work in this field. We introduce related knowledge in Section 3. The system model and construction goals are described in Section 4. Section 5 introduces ours fingerprint protection scheme and Section 6 proves its security. In Section 7, we discuss the test results, and finally, Section 8 concludes this paper.


## 2. Related Work

Over the years, a number of biometric template protection schemes have been proposed [15–19]. In this section, we review some approaches that have been proposed to deal with the security and privacy issues of fingerprint authentication systems, which are relevant to the proposed method.Tuyls [10] and Ratha [20] outlined the types of attacks that the biometric system could face at each stage, and they believed that attacks would range from template collecting to final recognition decision. For example, in the process of template collection, it may be vulnerable to spoofing attacks, brute force attacks, device replacement attacks, and denial of service attacks. In the process of sending the collected fingerprint feature templates to the matcher, there may exist replay attacks, eavesdropping attacks, man-in-the-middle attacks, and brute force attacks [12]. These surveys show us the right direction for constructing a remote authentication scheme with privacy protection.Different biometric authentication applications in smart cities can help for human lives; thus, there are many scholars who conducted research in this field. For example, El-Latif et al. [21] introduced a score level multibiometrics fusion approach for healthcare. In their proposed approach, they treat the biometric traits of patient/user as a request for healthcare assistance, which are processed in the cloud management and received by the caregiver with valid identification/verification for further treatment. Then they use the 1D-log Gabor iris features, two-directional modified fisher principal component analysis 2D2MFPCA), and Complex Gabor Jet Descriptor face features for healthcare monitoring. In [22], Sedik et al. presented a system to discriminate pristine, adulterated, and fake biometrics in 5G-based smart cities by detecting alterations to biometric modalities. This work uses a convolutional neural network (CNN) and a hybrid structure that combines CNN with convolutional long-short term memory (ConvLSTM) as DLMs for the detection of different levels of alteration in biometrics that are employed for person identification, which provides a solution for different biometric authentication applications in secure smart cities.Other research topics of biometrics involve protecting biometric templates and preserving users’ privacy. Peng et al. [23] designed a novel biometric cryptosystem scheme based on random projection (RP) and backpropagation neural network (BPNN) to solve the problems of biometric template protection. The main idea of this work is to project the original biometric feature vector onto a fix-length feature vector of random subspace using random projection. After that, a backpropagation neural network model was applied to bind a projected feature vector with a random key. Finally, based on BPNN, a robust mapping between a projected feature vector and a random key is learned to generate an error-correction based biometric cryptosystem.Zhu et al. [24] suggested a matrix based and efficient biometric outsourcing scheme with privacy protection in 2018, which has good performance in the preparation phase and the recognition phase. However, Liu et al. [25] in 2019 proved this scheme is insecure under chosen-plaintext attack CPA and proposed a new matrix transformation-based and privacy-preserving cloud computing, which not only can resist CPA but also has good recognition performance. Zhu et al. [26] proposed a privacy-preserving online fingerprint authentication scheme, named e-Finga, over encrypted outsourced data in 2018. e-Finga is based on bilinear mapping, which outsources the user fingerprint registered in the trust center to other servers under user’s authorization, allowing the server to provide safe, accurate, and efficient identity verification services without leaking any fingerprint information. However, this method sends the user’s fingerprint template in plain text to the trusted organization in the registration phase, which poses a certain security risk.Trivedi et al. [27] proposed a noninvertible cancellable fingerprint template generation scheme based on information extracted from the Delaunay triangulation of minutiae points system in 2020. In their method, the location information of the fingerprint without minutiae points was extracted from the triangles to solve the security problem brought by fingerprint reconstruction technology, which can handle the intraclass changes of fingerprints. In the same year, Kaur et al. [28] used cancellable biometrics and secret sharing to develop a privacy-preserving remote multiserver biometric authentication system. Their system allows user to operate safely on diverse applications and can prevent transmission attacks such as replay attacks, man-in-the-middle attacks, and database and server spoofing.


## 3. Preliminaries

In this section, we present the bilinear pairing technique and Decisional Diffie-Hellman assumption (DDH) problem and introduce the FingerCode-based identity matching algorithm which is the basis of our scheme.


### 3.1. FingerCode-Based Identity Matching Algorithm

The FingerCode-based identity matching algorithm utilizes a fixed-length “FingerCode” [29, 30] to characterize the fingerprint template, which uses a bank of Gabor filters to extract both local and global details in a fingerprint to produce a feature vector of fixed length, which is usually 640, where each element’s length is 8-bit integer. When matching two fingerprints, we usually compute a certain distance between their FingerCodes and decide whether the distance is smaller than a predetermined threshold τ. For example, given two fingerprint codes X=x1,x2,…,xn and Y=y1,y2,…,yn, we can calculate their Euclidean distance using the following equation:(1)X−Y=∑i=1nxi−yi2The Euclidean distance is then compared toτ. If the Euclidean distance is less than τ, the two fingerprints will be judged to be from the same person. Otherwise, it is judged to be from different persons.


### 3.2. Bilinear Pairing

SupposeG and Gt are two cyclic groups of prime order p with generators g and gt, respectively. Define a mapping e^:G×G⟶Gt. We call this mapping bilinear if the following properties are satisfied:(1)
Bilinearity:∀α,β∈G and ∀α, β∈Zp∗; e^αa,βb=e^α,βab(2)
Nondegeneracy:∃g, e^g,g≠1(3)
Efficiency:∀α,β∈G, the mapping e^:G×G⟶GT can be efficiently computed


#### 3.2.1. The Decisional Diffie-Hellman Assumption (DDH)

LetG be a cyclic group of prime order p with a generator g, and choose any triplet g,ga,gb for some random values a,b∈RZp∗ to any probability polynomial-time (PPT) and attackers A; the advantage for PrAq,g,ga,gb,hχ−1/2 is negligible in l, where χ∈0,1,h0=gz,z∈RZp∗,h1=gab.


## 3.1. FingerCode-Based Identity Matching Algorithm

The FingerCode-based identity matching algorithm utilizes a fixed-length “FingerCode” [29, 30] to characterize the fingerprint template, which uses a bank of Gabor filters to extract both local and global details in a fingerprint to produce a feature vector of fixed length, which is usually 640, where each element’s length is 8-bit integer. When matching two fingerprints, we usually compute a certain distance between their FingerCodes and decide whether the distance is smaller than a predetermined threshold τ. For example, given two fingerprint codes X=x1,x2,…,xn and Y=y1,y2,…,yn, we can calculate their Euclidean distance using the following equation:(1)X−Y=∑i=1nxi−yi2The Euclidean distance is then compared toτ. If the Euclidean distance is less than τ, the two fingerprints will be judged to be from the same person. Otherwise, it is judged to be from different persons.


## 3.2. Bilinear Pairing

SupposeG and Gt are two cyclic groups of prime order p with generators g and gt, respectively. Define a mapping e^:G×G⟶Gt. We call this mapping bilinear if the following properties are satisfied:(1)
Bilinearity:∀α,β∈G and ∀α, β∈Zp∗; e^αa,βb=e^α,βab(2)
Nondegeneracy:∃g, e^g,g≠1(3)
Efficiency:∀α,β∈G, the mapping e^:G×G⟶GT can be efficiently computed


### 3.2.1. The Decisional Diffie-Hellman Assumption (DDH)

LetG be a cyclic group of prime order p with a generator g, and choose any triplet g,ga,gb for some random values a,b∈RZp∗ to any probability polynomial-time (PPT) and attackers A; the advantage for PrAq,g,ga,gb,hχ−1/2 is negligible in l, where χ∈0,1,h0=gz,z∈RZp∗,h1=gab.


## 3.2.1. The Decisional Diffie-Hellman Assumption (DDH)

LetG be a cyclic group of prime order p with a generator g, and choose any triplet g,ga,gb for some random values a,b∈RZp∗ to any probability polynomial-time (PPT) and attackers A; the advantage for PrAq,g,ga,gb,hχ−1/2 is negligible in l, where χ∈0,1,h0=gz,z∈RZp∗,h1=gab.


## 4. Framework and Design Goals

In this section, we formalize the architecture of the proposed scheme and summarise its security requirements as follows.


### 4.1. System Architecture

The proposed fingerprint template protection system consists of three types of entities (see Figure1), which are the template storage center TSC, the matcher Ml, and the user Ui. We assume that TSC is a trusted participant and Ml is a semihonest participant.(1)
TSC bootstraps the system, which generates and sends system parameters to the user and the matcher. In real-world applications, TSC can be an official entity of the government. The tasks of TSC are to store the user’s encrypted fingerprint reference template and send the relevant reference template in ciphertext form to the matcher. Since all users must register in TSC, the number of registered users will be significantly large. If the fingerprint templates registered by users are stored together, TSC needs to spend a lot of time to find the reference fingerprint template corresponding to the user’s query identity when users make queries. Thus, there are many substorages in TSC for user registrations and authentications. When the corresponding substorage cannot find the reference template corresponding to the user’s query identity, TSC will retrieve and send the templates in all other substores to the matcher for matching.(2)
User terminal converts the user’s physical fingerprints into digital fingerprint feature templates through the fingerprint sensor and uploads them toTSC for storage or poses queries to the matcher after encrypting the fingerprint feature templates.(3)
The matcher is mainly responsible for providing authentication service. Before providing fingerprint authentication services, the matcher must register inTSC to obtain the right to identify user’s fingerprints. To evaluate whether the user is authenticated, the matcher compares the Euclidean distance between the user’s query template and the reference template to a predefined threshold. Only the users who pass the authentication can access the related servers.Figure 1
System architecture.


### 4.2. Functionalities and Design Goals

In fingerprint authentication system, malicious entities can obtain user’s fingerprint template information as much as possible through eavesdropping, malicious attacks, etc. In order to achieve privacy-preserving remote identification, we determine the functionalities and design goals of the proposed system as follows:(1)
User anonymity: the matcher is curious about the data entered by users to obtain additional information. Thus, for each query, the original identity is always converted into a ciphertext format to guarantee privacy, and onlyTSC can decrypt the ciphertexts.(2)
Template security:TSC might also be attacked by an adversary. In order to prevent the user’s original fingerprint template information from being leaked after the server is compromised, the user’s reference template should be encrypted before being stored. Since the matcher might be curious about the templates input by the users and the templates stored in TSC, to prevent the adversary from obtaining relevant fingerprint template information through cross-matching attack, the users and TSC employ the same one-time key ki to encrypt the query template. Thereby, even if the matcher or adversary obtained all the templates from TSC or the users, they cannot get any relevant information about the user’s original fingerprint template.(3)
Efficiency: we ensure the efficiency of the system while ensuring the security and privacy of the user’s fingerprint template.


### 4.3. Framework of Our System

Formally, the proposed system consists of nine polynomial-time computable algorithms/protocols, that is,Setup,UKgen,MKgen,Ureg,Mreg, FTenc, Aque, TSCres, and Matching.(1)
Setup1l⟶para,xTSC,yTSC: on input of a security parameter l, the fingerprint template protection system setup algorithm Setup, which is run by TSC, generates public key yTSC, private key xTSC for TSC, and the public parameter para for the system(2)
UKgenpara⟶Uski,Upki,Ki: on input of the public parameter para, the user key generation algorithm UKgen, which is run by the users, generates a secret key Uski and a public key Upki and Ki∈Zp∗ for Ui(3)
MKgenpara⟶Mskl,Mpkl: on input of the public parameter para, the matcher key generation algorithm MKgen, which is run by the matcher, generates a secret key Mskl and a public key Mpkl for Ml(4)
Uregpara,XUi′,Upki,IDUi⟶yTj: on input of the public parameter para, the encrypted original fingerprint template XUi′, the user’s public key Upki, and the user’s identity IDUi, the user registration algorithm Ureg, which is run by TSC, generates the pseudo-identity yTj for Ui(5)
MregMpkl,IDMl: on input of the matcher’s public key Mpkl and identity IDMl, the matcher registration algorithm Mreg, which is run by TSC, completes matcher registration(6)
FTencpara,Yi,yTj⟶Yi〞: on input of the public parameter para, the query fingerprint template Yi, and the pseudo-identity yTj of Ui, the fresh fingerprint template encryption algorithm FTenc, which is run by Ui, generates an encrypted query fingerprint template Yi〞(7)
Aquepara,Uski,Yi〞,yTj,Mskl,IDMl⟶W,V: on input of the public parameter para, the fingerprint template authentication query algorithm Aque, which is jointly run by Ui and matcher with Uski,Yi〞,yTj and Mskl,IDMl, respectively, outputs two ciphertexts W,V(8)
TSCrespara,W,V,xTSC⟶Gi: on input of the public parameter para, the secret key xTSC of TSC, and the ciphertexts W,V, the template storage center response algorithm TSCres, which is run by TSC, outputs the ciphertext format Gi that includes the reference fingerprint template(9)
Matchingpara,Gi,Mskl⟶1,⊥: on input of the public parameter para, the ciphertext format Gi that includes the reference fingerprint template, and the secret key Mskl of the matcher, the matching algorithm, which is run by the matcher, outputs ‘1′ if the query is accepted; otherwise, it outputs ’⊥‘


### 4.4. Formal Security Definitions

We consider the case where malicious users may forge fingerprint templates during registration and collude with honest-but-curious matcher to get arbitrary plaintext and corresponding ciphertext of fake reference templates. LetA be a PPT adversary, who plays the following game with a challenger C.Setup: on input of a security parameterl, the challenger C generates and publishes the public parameter para.Keys generation: on input of the public parameterpara, the challenger C runs user key generation algorithm and returns the secret key Uski, the public key Upki, and Ki∈Zp∗ of Ui.Challenge: the adversaryA submits a pair of fingerprint templates plaintexts X0 and X1 with the same length to the challenger C. And then the challenger C chooses a bit χ∈0,1 uniformly and computes the ciphertext X′=FTencpara,Ki,Xχ, which is given to the adversary A.Guess: at the end of the game, the adversaryA outputs a guess χ′ and succeeds in the game if χ′=χ. Definition1 A fingerprint template protection scheme is ε−IND−CPA secure (indistinguishable against chosen-plaintext attacks), if any PPT adversary A has only negligible advantage in l in winning the above game; that is,(2)Advϵ,Al=Prχ′=χ−12≤εl


## 4.1. System Architecture

The proposed fingerprint template protection system consists of three types of entities (see Figure1), which are the template storage center TSC, the matcher Ml, and the user Ui. We assume that TSC is a trusted participant and Ml is a semihonest participant.(1)
TSC bootstraps the system, which generates and sends system parameters to the user and the matcher. In real-world applications, TSC can be an official entity of the government. The tasks of TSC are to store the user’s encrypted fingerprint reference template and send the relevant reference template in ciphertext form to the matcher. Since all users must register in TSC, the number of registered users will be significantly large. If the fingerprint templates registered by users are stored together, TSC needs to spend a lot of time to find the reference fingerprint template corresponding to the user’s query identity when users make queries. Thus, there are many substorages in TSC for user registrations and authentications. When the corresponding substorage cannot find the reference template corresponding to the user’s query identity, TSC will retrieve and send the templates in all other substores to the matcher for matching.(2)
User terminal converts the user’s physical fingerprints into digital fingerprint feature templates through the fingerprint sensor and uploads them toTSC for storage or poses queries to the matcher after encrypting the fingerprint feature templates.(3)
The matcher is mainly responsible for providing authentication service. Before providing fingerprint authentication services, the matcher must register inTSC to obtain the right to identify user’s fingerprints. To evaluate whether the user is authenticated, the matcher compares the Euclidean distance between the user’s query template and the reference template to a predefined threshold. Only the users who pass the authentication can access the related servers.Figure 1
System architecture.


## 4.2. Functionalities and Design Goals

In fingerprint authentication system, malicious entities can obtain user’s fingerprint template information as much as possible through eavesdropping, malicious attacks, etc. In order to achieve privacy-preserving remote identification, we determine the functionalities and design goals of the proposed system as follows:(1)
User anonymity: the matcher is curious about the data entered by users to obtain additional information. Thus, for each query, the original identity is always converted into a ciphertext format to guarantee privacy, and onlyTSC can decrypt the ciphertexts.(2)
Template security:TSC might also be attacked by an adversary. In order to prevent the user’s original fingerprint template information from being leaked after the server is compromised, the user’s reference template should be encrypted before being stored. Since the matcher might be curious about the templates input by the users and the templates stored in TSC, to prevent the adversary from obtaining relevant fingerprint template information through cross-matching attack, the users and TSC employ the same one-time key ki to encrypt the query template. Thereby, even if the matcher or adversary obtained all the templates from TSC or the users, they cannot get any relevant information about the user’s original fingerprint template.(3)
Efficiency: we ensure the efficiency of the system while ensuring the security and privacy of the user’s fingerprint template.


## 4.3. Framework of Our System

Formally, the proposed system consists of nine polynomial-time computable algorithms/protocols, that is,Setup,UKgen,MKgen,Ureg,Mreg, FTenc, Aque, TSCres, and Matching.(1)
Setup1l⟶para,xTSC,yTSC: on input of a security parameter l, the fingerprint template protection system setup algorithm Setup, which is run by TSC, generates public key yTSC, private key xTSC for TSC, and the public parameter para for the system(2)
UKgenpara⟶Uski,Upki,Ki: on input of the public parameter para, the user key generation algorithm UKgen, which is run by the users, generates a secret key Uski and a public key Upki and Ki∈Zp∗ for Ui(3)
MKgenpara⟶Mskl,Mpkl: on input of the public parameter para, the matcher key generation algorithm MKgen, which is run by the matcher, generates a secret key Mskl and a public key Mpkl for Ml(4)
Uregpara,XUi′,Upki,IDUi⟶yTj: on input of the public parameter para, the encrypted original fingerprint template XUi′, the user’s public key Upki, and the user’s identity IDUi, the user registration algorithm Ureg, which is run by TSC, generates the pseudo-identity yTj for Ui(5)
MregMpkl,IDMl: on input of the matcher’s public key Mpkl and identity IDMl, the matcher registration algorithm Mreg, which is run by TSC, completes matcher registration(6)
FTencpara,Yi,yTj⟶Yi〞: on input of the public parameter para, the query fingerprint template Yi, and the pseudo-identity yTj of Ui, the fresh fingerprint template encryption algorithm FTenc, which is run by Ui, generates an encrypted query fingerprint template Yi〞(7)
Aquepara,Uski,Yi〞,yTj,Mskl,IDMl⟶W,V: on input of the public parameter para, the fingerprint template authentication query algorithm Aque, which is jointly run by Ui and matcher with Uski,Yi〞,yTj and Mskl,IDMl, respectively, outputs two ciphertexts W,V(8)
TSCrespara,W,V,xTSC⟶Gi: on input of the public parameter para, the secret key xTSC of TSC, and the ciphertexts W,V, the template storage center response algorithm TSCres, which is run by TSC, outputs the ciphertext format Gi that includes the reference fingerprint template(9)
Matchingpara,Gi,Mskl⟶1,⊥: on input of the public parameter para, the ciphertext format Gi that includes the reference fingerprint template, and the secret key Mskl of the matcher, the matching algorithm, which is run by the matcher, outputs ‘1′ if the query is accepted; otherwise, it outputs ’⊥‘


## 4.4. Formal Security Definitions

We consider the case where malicious users may forge fingerprint templates during registration and collude with honest-but-curious matcher to get arbitrary plaintext and corresponding ciphertext of fake reference templates. LetA be a PPT adversary, who plays the following game with a challenger C.Setup: on input of a security parameterl, the challenger C generates and publishes the public parameter para.Keys generation: on input of the public parameterpara, the challenger C runs user key generation algorithm and returns the secret key Uski, the public key Upki, and Ki∈Zp∗ of Ui.Challenge: the adversaryA submits a pair of fingerprint templates plaintexts X0 and X1 with the same length to the challenger C. And then the challenger C chooses a bit χ∈0,1 uniformly and computes the ciphertext X′=FTencpara,Ki,Xχ, which is given to the adversary A.Guess: at the end of the game, the adversaryA outputs a guess χ′ and succeeds in the game if χ′=χ. Definition1 A fingerprint template protection scheme is ε−IND−CPA secure (indistinguishable against chosen-plaintext attacks), if any PPT adversary A has only negligible advantage in l in winning the above game; that is,(2)Advϵ,Al=Prχ′=χ−12≤εl


## 5. The Proposed Scheme

In this section, a concrete fingerprint template protection scheme based on bilinear groups is proposed. Table1 summarises the frequently used notations.Table 1
Related symbols and their specific meanings.
SymbolSpecific meaningG,GTCyclic groups of prime orderpg,hTwo distinct generators ofGpA big prime, the order ofG and GTKiThe key used to encrypt original templatexTjThe identity of substoragesyTjThe pseudo-identity ofUiHiCryptographic hash function for1≤i≤4IDMl,IDUiThe identities of matcherMl and UiUski,UpkiThe secret key and public key ofUiMskl,MpklThe secret key and public key ofMlxTSC,yTSCThe secret key and public key ofTSCτThreshold


### 5.1. System Setup

The template storage centerTSC bootstraps system setup and mainly carries out two tasks:(1)
Preparatory work(1)
generates a bilinear mappinge^:G×G⟶Gt, where G and GT are cyclic groups with prime order p and g,h are two distinct generators of G(2)
selects random valuexTSC∈RZp∗, sets the xTSC as secret key, and computes yTSC=gxTSC, which is set as public key(3)
picks four cryptographic hash functionsHi and a threshold τ as H1:0,1∗⟶zp∗,H2:0,1∗⟶zp∗,H3:G⟶0,1λT+logp,H4:G⟶0,1λI+3logp, where λT and λI denote the lengths of the identities of fingerprint template and the user’s information, respectively(4)
makes the system parameterspara=G,GT,e^,p,g,h,yTSC,H1,H2,H3,H4,τ public(2)
Prepare substorageThe template storage centerTSC prepares q (for example, q=5 empty substorages for distributed storage of reference fingerprint templates registered by users.(1)
selectsq random values xTj,j=1,2,…,q, then computes yTj=gxTj, and denotes the q substorages as xT1,xT2,…,xTq(2)
For the security ofxTj, TSC picks random q polynomials of degree t−1 like fj=xTj+aj1x+aj2x2+⋯+ajt−1xt−1,j=1,2,…,q, which can translate xTj into shares for storage


### 5.2. User Key Generation

In the user key generation phase,Ui generates its own private key, public key, and Ki according to system parameters para. Ui selects random values Ki,x1,x2∈RZp∗, computes y1=gx1,y2=gx2, and sets its secret key and public key as Uski=Uski,1,Uski,2=x1,x2 and Upki=Upki,1,Upki,2=y1,y2, respectively. Finally, Ui picks a polynomial of degree t−1, such as fx=Ki+b1x+b2x2+⋯+bt−1xt−1, which turns Ki into shares for storage.


### 5.3. Matcher Key Generation

In the matching key generation stage, the matcherMl generates its own private key and public key according to the system parameters para. The matcher Ml selects random value xl∈RZp∗ and then computes yl=gxl. Finally, its secret key and public key are set as Mskl=xl and Mpkl=yl, respectively.


### 5.4. User Registration

Each user’s original fingerprint sample will be preprocessed to extract feature and obtain the corresponding fingerprint templateXUi=xi1,xi2,…,xin. Note that TSC might also be attacked by the adversary. Thus, the user first uses Ki to encrypt the original fingerprint template before registering in TSC:(3)xi1′=xi1+H1Kixi2′=xi2+H1Ki⋮xin′=xin+H1KiWithout loss of generality, we let XUi′=xi1′,xi2′,…,xin′. And then the user Ui sends the public key Upki, its identity information IDUi, and the encrypted original fingerprint template XUi′ to TSC. And TSC stores the user’s information IDUi,XUi′ in q substorage randomly and sends yTj corresponding to the identity of each substorage to Ui, which is set as the user’s pseudo-identity.


### 5.5. Matcher Registration

In the registration phase, the matcher submits its identity informationIDMl and public key Mpkl to TSC for signature verification.


### 5.6. Fresh Fingerprint Template Encryption

Ui should first obtain a fresh fingerprint template YUi=yi1,yi2,…,yin with the fingerprint sensor before initiating an authentication query to the matcher. Then Ui picks a random value xUi∈RZp∗ and a positive random value αi∈RZp∗, computes yUi=gxUi,ki=yTjxUi, and encrypts the fresh fingerprint template as follows:(4)yi1′=yi1+H1Ki+H1kiyi2′=yi2+H1Ki+H1ki⋮yin′=yin+H1Ki+H1kiWe denote this asYUi′=yi1′,yi2′,…,yin′ without loss of generality. Finally, Ui extends YUi′ to a n+3-dimensional vector YUi〞=αiyi1′,yi2′,…,yin′,1/2,−∑t=1nyit′2,1/2τ.


### 5.7. Authentication Query

The authentication query stage is mainly divided into two steps:Ui initiates a fingerprint authentication query request to the matcher and the matcher asks TSC for the reference fingerprint feature template corresponding to the user’s claimed identity.Step 1.
Ui chooses three random values s1,s2,s3∈RZp∗ after encrypting his fingerprint template into YUi〞 and computes the ciphertext W=w1,w2,w3,w4,w5, where(5)w1=gs1,w2=H3Mpkls1⊕αiyi1′αiyi2′…αiyin′αi12−αi∑t=1nyit′2αi12τs2,w3=H4yTSCs1⊕yUiyTjIDUis3,w4=hUski,1+s1s3+Uski,2H2yUiyTjIDUi,w5=hUski,1+s2Uski,2+s1H2w1w2w3w4Ti.
Then, the userUi sends W,Ti to the matcher, where Ti is a time stamp.Step 2.
Upon receivingW,Ti from Ui, the matcher runs the following steps to decrypt ciphertext w2 with its secret key Mskl. The matcher computes(6)H3w1Mskl⊕w2⟶αiyi1′αiyi2′…αiyin′αi12−αi∑t=1nyit′2αi12τs2and checks whether the following condition is satisfied:(7)e^w5,g=?e^h,Uski,1⋅Uski,2⋅w1H2w1w2w3w4T.
If it is true, the matcher savesαiyi1′,αiyi2′,…,αiyin′,αi1/2,−αi∑t=1nyit′2,αi1/2τ. And without loss of generality, we let YUi〞=αiyi1′,yi2′,…,yin′,1/2,−∑t=1nyit′2,1/2τ. Then the matcher picks a random value s4∈RZp∗ and computes Vl=vl,1,vl,2=gs4,hMskl+s4H2IDMl‖Tl. Finally, the matcher submits W,Vl,IDMl,Ti,Tl to TSC, where IDMl and Tl are the identity of the matcher and a time stamp, respectively.


### 5.8.TSCResponse

Upon receivingW,Vl,IDMl,Ti,Tl from the matcher, TSC performs the following process. TSC first decrypts ciphertext w3 with its secret key xTSC:(8)H4w1xTSC⊕w3⟶yUiyTjIDUis3,and checks whether the following conditions are satisfied:(9)e^w4,g=?e^h,Upki,1⋅w1s3⋅Upki,2H2yUiyTjIDUi,(10)e^vl,2,g=?e^h,Mpkl⋅v1,1H2IDMlTl.If both are true,TSC accepts yUi,yTj, and IDUi. Then TSC finds the substorage xTj that corresponds to yTj and computes ki=yUixTj. TSC should encrypt reference fingerprint templates corresponding to the identity IDUi in the substorage xTj with ki(11)xi1〞=xi1′+H1kixi2〞=xi2′+H1ki⋮xin〞=xin′+H1ki.Without loss of generality, we denote it asXUi〞=xi1〞,xi2〞,…,xin〞. Then TSC selects two random values s5,s6∈RZp∗ and a positive random value βM∈RZp∗, extends XUi〞 to n+3-dimensional vector as XUi〞=βMxi1〞,xi2〞,…,xin〞,−∑t=1nxit〞2,1/2,τ, and computes the ciphertext Gj,i=Gj,i,1,Gj,i,2,Gj,i,3, where(12)Gj,i,1=gs5,Gj,i,2=H3Mpkls5⊕βMxi1〞βMxi2〞…βMxin〞−βM∑t=1nxit〞2βM12βMτs6,Gj,i,3=hxTSC+s5s6H2Gj,i,1Gj,i,2Tj,i.Finally,TSC sends Gj,i,Tj,i to the matcher, where Tj,i is a time stamp.


### 5.9. Matching

Upon receivingGj,i,Tj,i, the matcher decrypts Gj,i,2 with its secret key Mskl as(13)H3Gj,i,1Mskl⊕Gj,i,2⟶βMxi1〞βMxi2〞⋯βMxin〞−βM∑t=1nxit〞2βM12βMτs6and checks whether the following condition is satisfied:(14)e^Gj,i,3,g=?e^h,yTSC⋅Gj,i,1s6H2Gj,i,1Gj,i,2Tj,i.If it is true, the matcher savesβMxi1〞,βMxi2〞,…,βMxin〞,−βM∑t=1nxit〞2,βM1/2,βMτ. We denote it as XUi〞.Then the matcher matchesXUi〞 with query fingerprint template YUi〞(15)D=XUi〞⋅YUi〞,=βMxi1〞,xi2〞,…,xin〞,−∑t=1nxit〞2,12,τ,αiyi1′,yi2′,…,yin′,12,−∑t=1nyit′2,12τ,=12αiβM2∑t=1nxit〞yit′−∑t=1nxit〞2−∑t=1nyit′2+τ2,=12αiβM−∑t=1nxit〞−yit′2+τ2,=12αiβMτ2−∑t=1nxit−yit2.Sinceαi and βM are both positive, the matcher outputs “1” when the results of the user’s query fingerprint template and the reference fingerprint template are greater than or equal to 0; otherwise, it outputs “⊥.”


## 5.1. System Setup

The template storage centerTSC bootstraps system setup and mainly carries out two tasks:(1)
Preparatory work(1)
generates a bilinear mappinge^:G×G⟶Gt, where G and GT are cyclic groups with prime order p and g,h are two distinct generators of G(2)
selects random valuexTSC∈RZp∗, sets the xTSC as secret key, and computes yTSC=gxTSC, which is set as public key(3)
picks four cryptographic hash functionsHi and a threshold τ as H1:0,1∗⟶zp∗,H2:0,1∗⟶zp∗,H3:G⟶0,1λT+logp,H4:G⟶0,1λI+3logp, where λT and λI denote the lengths of the identities of fingerprint template and the user’s information, respectively(4)
makes the system parameterspara=G,GT,e^,p,g,h,yTSC,H1,H2,H3,H4,τ public(2)
Prepare substorageThe template storage centerTSC prepares q (for example, q=5 empty substorages for distributed storage of reference fingerprint templates registered by users.(1)
selectsq random values xTj,j=1,2,…,q, then computes yTj=gxTj, and denotes the q substorages as xT1,xT2,…,xTq(2)
For the security ofxTj, TSC picks random q polynomials of degree t−1 like fj=xTj+aj1x+aj2x2+⋯+ajt−1xt−1,j=1,2,…,q, which can translate xTj into shares for storage


## 5.2. User Key Generation

In the user key generation phase,Ui generates its own private key, public key, and Ki according to system parameters para. Ui selects random values Ki,x1,x2∈RZp∗, computes y1=gx1,y2=gx2, and sets its secret key and public key as Uski=Uski,1,Uski,2=x1,x2 and Upki=Upki,1,Upki,2=y1,y2, respectively. Finally, Ui picks a polynomial of degree t−1, such as fx=Ki+b1x+b2x2+⋯+bt−1xt−1, which turns Ki into shares for storage.


## 5.3. Matcher Key Generation

In the matching key generation stage, the matcherMl generates its own private key and public key according to the system parameters para. The matcher Ml selects random value xl∈RZp∗ and then computes yl=gxl. Finally, its secret key and public key are set as Mskl=xl and Mpkl=yl, respectively.


## 5.4. User Registration

Each user’s original fingerprint sample will be preprocessed to extract feature and obtain the corresponding fingerprint templateXUi=xi1,xi2,…,xin. Note that TSC might also be attacked by the adversary. Thus, the user first uses Ki to encrypt the original fingerprint template before registering in TSC:(3)xi1′=xi1+H1Kixi2′=xi2+H1Ki⋮xin′=xin+H1KiWithout loss of generality, we let XUi′=xi1′,xi2′,…,xin′. And then the user Ui sends the public key Upki, its identity information IDUi, and the encrypted original fingerprint template XUi′ to TSC. And TSC stores the user’s information IDUi,XUi′ in q substorage randomly and sends yTj corresponding to the identity of each substorage to Ui, which is set as the user’s pseudo-identity.


## 5.5. Matcher Registration

In the registration phase, the matcher submits its identity informationIDMl and public key Mpkl to TSC for signature verification.


## 5.6. Fresh Fingerprint Template Encryption

Ui should first obtain a fresh fingerprint template YUi=yi1,yi2,…,yin with the fingerprint sensor before initiating an authentication query to the matcher. Then Ui picks a random value xUi∈RZp∗ and a positive random value αi∈RZp∗, computes yUi=gxUi,ki=yTjxUi, and encrypts the fresh fingerprint template as follows:(4)yi1′=yi1+H1Ki+H1kiyi2′=yi2+H1Ki+H1ki⋮yin′=yin+H1Ki+H1kiWe denote this asYUi′=yi1′,yi2′,…,yin′ without loss of generality. Finally, Ui extends YUi′ to a n+3-dimensional vector YUi〞=αiyi1′,yi2′,…,yin′,1/2,−∑t=1nyit′2,1/2τ.


## 5.7. Authentication Query

The authentication query stage is mainly divided into two steps:Ui initiates a fingerprint authentication query request to the matcher and the matcher asks TSC for the reference fingerprint feature template corresponding to the user’s claimed identity.Step 1.
Ui chooses three random values s1,s2,s3∈RZp∗ after encrypting his fingerprint template into YUi〞 and computes the ciphertext W=w1,w2,w3,w4,w5, where(5)w1=gs1,w2=H3Mpkls1⊕αiyi1′αiyi2′…αiyin′αi12−αi∑t=1nyit′2αi12τs2,w3=H4yTSCs1⊕yUiyTjIDUis3,w4=hUski,1+s1s3+Uski,2H2yUiyTjIDUi,w5=hUski,1+s2Uski,2+s1H2w1w2w3w4Ti.
Then, the userUi sends W,Ti to the matcher, where Ti is a time stamp.Step 2.
Upon receivingW,Ti from Ui, the matcher runs the following steps to decrypt ciphertext w2 with its secret key Mskl. The matcher computes(6)H3w1Mskl⊕w2⟶αiyi1′αiyi2′…αiyin′αi12−αi∑t=1nyit′2αi12τs2and checks whether the following condition is satisfied:(7)e^w5,g=?e^h,Uski,1⋅Uski,2⋅w1H2w1w2w3w4T.
If it is true, the matcher savesαiyi1′,αiyi2′,…,αiyin′,αi1/2,−αi∑t=1nyit′2,αi1/2τ. And without loss of generality, we let YUi〞=αiyi1′,yi2′,…,yin′,1/2,−∑t=1nyit′2,1/2τ. Then the matcher picks a random value s4∈RZp∗ and computes Vl=vl,1,vl,2=gs4,hMskl+s4H2IDMl‖Tl. Finally, the matcher submits W,Vl,IDMl,Ti,Tl to TSC, where IDMl and Tl are the identity of the matcher and a time stamp, respectively.


## 5.8.TSCResponse

Upon receivingW,Vl,IDMl,Ti,Tl from the matcher, TSC performs the following process. TSC first decrypts ciphertext w3 with its secret key xTSC:(8)H4w1xTSC⊕w3⟶yUiyTjIDUis3,and checks whether the following conditions are satisfied:(9)e^w4,g=?e^h,Upki,1⋅w1s3⋅Upki,2H2yUiyTjIDUi,(10)e^vl,2,g=?e^h,Mpkl⋅v1,1H2IDMlTl.If both are true,TSC accepts yUi,yTj, and IDUi. Then TSC finds the substorage xTj that corresponds to yTj and computes ki=yUixTj. TSC should encrypt reference fingerprint templates corresponding to the identity IDUi in the substorage xTj with ki(11)xi1〞=xi1′+H1kixi2〞=xi2′+H1ki⋮xin〞=xin′+H1ki.Without loss of generality, we denote it asXUi〞=xi1〞,xi2〞,…,xin〞. Then TSC selects two random values s5,s6∈RZp∗ and a positive random value βM∈RZp∗, extends XUi〞 to n+3-dimensional vector as XUi〞=βMxi1〞,xi2〞,…,xin〞,−∑t=1nxit〞2,1/2,τ, and computes the ciphertext Gj,i=Gj,i,1,Gj,i,2,Gj,i,3, where(12)Gj,i,1=gs5,Gj,i,2=H3Mpkls5⊕βMxi1〞βMxi2〞…βMxin〞−βM∑t=1nxit〞2βM12βMτs6,Gj,i,3=hxTSC+s5s6H2Gj,i,1Gj,i,2Tj,i.Finally,TSC sends Gj,i,Tj,i to the matcher, where Tj,i is a time stamp.


## 5.9. Matching

Upon receivingGj,i,Tj,i, the matcher decrypts Gj,i,2 with its secret key Mskl as(13)H3Gj,i,1Mskl⊕Gj,i,2⟶βMxi1〞βMxi2〞⋯βMxin〞−βM∑t=1nxit〞2βM12βMτs6and checks whether the following condition is satisfied:(14)e^Gj,i,3,g=?e^h,yTSC⋅Gj,i,1s6H2Gj,i,1Gj,i,2Tj,i.If it is true, the matcher savesβMxi1〞,βMxi2〞,…,βMxin〞,−βM∑t=1nxit〞2,βM1/2,βMτ. We denote it as XUi〞.Then the matcher matchesXUi〞 with query fingerprint template YUi〞(15)D=XUi〞⋅YUi〞,=βMxi1〞,xi2〞,…,xin〞,−∑t=1nxit〞2,12,τ,αiyi1′,yi2′,…,yin′,12,−∑t=1nyit′2,12τ,=12αiβM2∑t=1nxit〞yit′−∑t=1nxit〞2−∑t=1nyit′2+τ2,=12αiβM−∑t=1nxit〞−yit′2+τ2,=12αiβMτ2−∑t=1nxit−yit2.Sinceαi and βM are both positive, the matcher outputs “1” when the results of the user’s query fingerprint template and the reference fingerprint template are greater than or equal to 0; otherwise, it outputs “⊥.”


## 6. Soundness and Security

In this section, we show that our scheme is sound and enjoys various security and privacy as discussed below. Theorem 1 The proposed fingerprint template protection scheme is sound.Proof.
We only need to show equations (7)–(14) hold.
For a public keyUpki of Ui, equation (7) holds as below:(16)e^w5,g=e^hUski,1+s2Uski,2+s1H2w1w2w3w4Ti,g,=e^h,gUski,1gUski,2s2gs1H2w1w2w3w4Ti,=e^h,Upki,1⋅Upki,2s2⋅w1H2w1w2w3w4Ti.
In the fingerprint template storage center response phase, ciphertextsw4 and Vl can pass the verification of equations (9) and (10), respectively:(17)e^w4,g=e^hUski,1+s1s3+Uski,2H2yUiyTjIDUi,g,=e^h,gUski,1gs1s3gUski,2H2yUiyTjIDUi,=e^h,Upki,1⋅w1s3⋅Upki,2H2yUiyTjIDUi,e^vl,2,g=e^hMskl+s4H2IDMlTl,g,=e^h,gMsklgs4H2IDMlTl,=e^h,Mpkl⋅vl,1H2IDMlTl.
For a valid ciphertextGj,i, equation (14) holds in matching stage as follows:(18)e^Gj,i,3,g=e^hxTSC+s5s6H2Gj,i,1Gj,i,2Tj,i,g,=e^h,gxTSCgs5s6H2Gj,i,1Gj,i,2Tj,i,=e^h,yTSC⋅Gj,i,1s6H2Gj,i,1Gj,i,2Tj,i.Theorem 2.
The proposed scheme is secure. That is, suppose the DDH assumption holds; the fingerprint template of the developed scheme isε−IND−CPA security.Proof.
If there exists an adversaryA that can break the fingerprint template protection scheme with nonnegligible probability εl, then we can construct a PPT algorithm C to solve the underlying DDH problem.
We consider the followingPPT algorithm C attempts to solve the DDH problem. Suppose C receives G,q,g,h1,h2,h3, K∈RZp∗, and the system parameters para=G,GT,e^,p,g,h,yTSC,H1,H2,H3,H4,τ, where h1=gx, h2=gy, and h3 is either gxy or gz (for uniformx,y,z∈RZp∗. The goal of C is to determine which is the case.Algorithm C:.
The algorithm is givenG,q,g,h1,h2,h3, K∈RZp∗, and the system parameters para=G,GT,e^,p,g,h,yTSC,H1,H2,H3,H4,τ as input.(1)
SetsPK=G,q,g,h1,h2 and runs APK to obtain two fingerprint templates X0,X1 with X0=X1(2)
Chooses a bitχ∈0,1 uniformly, and sets Xχ′=Xχ+H1K+H1h3(3)
Gives the ciphertextXχ′ to A and obtains an output bit χ′. If χ′=χ, outputs 1; otherwise, output 0
There are two cases about the behavior of C to consider:Case1.
The challengerC chooses random values x,y,z∈RZp∗ and sets h1=gx,h2=gy,h3=gz, and then C runs A on a public key constructed as G,q,g,h1,h2 and returns a ciphertext as Xχ′=Xχ+H1K+H1gz.
In this case, we can see that the view ofA when run as a subroutine by C is distributed identically to A′s view in the game of Section 4.4. Since C outputs 1 exactly when the output χ′ of A is equal to χ, we have(19)PrCG,q,g,gx,gy,gz=1=Prχ′=χ=12.Case2.
The challengerC chooses random values x,y∈RZp∗ and sets h1=gx,h2=gy,h3=gxy; then C runs A on a public key constructed as G,q,g,h1,h2 and returns a ciphertext as Xχ′=Xχ+H1K+H1gxy.
In this case, we can see that the view ofA when run as a subroutine by C is distributed identically to A′s view in the game of Section 4.4. Since C outputs 1 exactly when the output χ′ of A is equal to χ, we have(20)PrCG,q,g,gx,gy,gxy=1=Prχ′=χ=12.
Under the assumption that the DDH problem is hard, there is a negligible functionϵ such that(21)εl≥PrCG,q,g,gx,gy,gz=1−PrCG,q,g,gx,gy,gxy=1=12−Prχ′=χ.
This implies thatAdvϵ,Al=Prχ′=χ−1/2≤εl, which demonstrates the proposed fingerprint template scheme is ε−IND−CPA secure.
In addition to satisfying the above security, a secure fingerprint template protection scheme also needs to satisfy diversity, noninvertibility, and performance. The experimental results and analysis in Section7 have proved that the fingerprint template protection scheme proposed in this paper will not affect the performance of the fingerprint authentication system. Next, we analyze the security of the proposed scheme in other aspects.(1)
Noninvertibility: An adversary is impossible to calculate or recover a template with reasonable similarity to the original template from the transformed template. In our scheme, the original fingerprint template is first encrypted toX_Ui^′ by adding each element of the original fingerprint template XUi to the hash value of Ki randomly selected by the user in registration phase. And in the query stage, each element of X_Ui^′ is added to the hash value of a random number ki again, which is generated by the Diffie-Hellman key exchange. Thus, to obtain the original template, the adversary must first obtain the value of ki. However, to obtain ki, it must solve the DDH assumption problem, which is hard. In this case, our scheme satisfies noninvertibility.(2)
Diversity and Revocability: If a stored template is damaged or stolen, we should be able to revoke it and issue a new one based on the same original template to replace it, and it cannot match the new template successfully. In this paper, we encrypt fingerprint template by exploiting the hash values of the random keysKi and ki, which is selected by user. Thus, different transformed fingerprint templates can be generated from the same sample by changing only Ki or only ki or both of them. So our scheme satisfies diversity and revocability.(3)
User Anonymity: For each query, the original identity is always converted into a ciphertext format to guarantee privacy, where onlyTSC can decrypt the ciphertexts. Therefore, an adversary is infeasible to trace the original identity making the transaction.
Existing literature on biometric template protection suffers from the problem of key management; that is, whether the key is stored in the server or is kept by the user, there is a risk of key leakage or loss. In this paper, the secret sharing can safely distribute confidential data in an efficient, secure, and private manner without storing it on a centralized server, which can reduce the risk of information leakage. The proposed scheme satisfies theε−IND−CPA security, which is attributed to the D-H key exchange. The D-H key exchange allows the user and template storage center to encrypt the query fingerprint template with different random number ki in each query, thus strengthening security.


## 7. Experimental Analysis

We implement our system by using MATLAB (2019b) as the programming language. All experimental results were run on Windows 10 with 8-core 3.00 GHz Intel i7 CPU and 16 GB RAM. We use the public fingerprint dataset (http://www.neurotechnology.com) composed of 408 grayscale fingerprint images acquired by a CrossMatch Verifier 300 sensor for performance testing. The dataset contains 8 images for each individual and each image is of 512 × 480 pixel size with a resolution equal 500 dpi [31]. Figure 2 shows two image samples in the dataset.Figure 2
Test image samples.
(a)(b)Our main purpose is to study the effectiveness of the fingerprint template protection, not the fingerprint recognition algorithm, so the final recognition accuracy is somewhat different from the accuracy obtained by the relevant fingerprint recognition algorithm. The performance of the proposed system on accuracy is measured as equal error rate (EER). The EER is the error rate when the false acceptance rate (FAR) and the false rejection rate (FRR) are equal, which can reflect the overall accuracy of the fingerprint recognition system and the acceptability of the query user. In order to test the impact of the number of features in the FingerCode template on performance, we generated a total of 4 different configurations, corresponding to 4 sets of FingerCode vectors with a length ranging from 640 features (original configuration) to 96 features. Table2 lists the detailed parameters of each configuration (Nd,Nf,Nb,b,Nk represent the dimension of features, the number of filters, the number of centric bands, the width of each band, and the number of sectors in each band, respectively).Table 2
Fingerprint template information with different feature numbers.
NdNfNbb (pixel)Nk640852016384842512192832089643338The experimental results in Figure3 and Table 3 prove that the protection method proposed in this paper has no effect on the performance of the fingerprint authentication system and fully demonstrates that the template protection scheme proposed in this paper guarantees the recognition performance and feasibility of the fingerprint recognition system.Figure 3
EER comparison before and after fingerprint template protection.Table 3
EER before and after protection (the results run on fingerprint template with 640 dimensions).
Original dataOur methodThreshold (t)14891489EER0.10500.1050It can be seen from Figure4 that the performance between different feature quantity configurations is very close, but compared with the original 640-dimensional feature configuration, the performance of the other two configurations (192-dimension and 96-dimension) is slightly worse, which shows the fingerprint template feature reduction will influence the system accuracy.Figure 4
ROC curves of different feature dimensions.


## 8. Conclusion

In this paper, a privacy-preserving fingerprint authentication scheme is proposed. We utilize the secret sharing technology to store keys to reduce the risk of key leakage and exploit the D-H key exchange to conceal the real identity of the users and generate various fingerprint templates to prevent cross-matching attack over bilinear groups. And in order to protect privacy and confidentiality of all fingerprint templates, the matcher matches the templates in ciphertext format without destroying authentication accuracy. The designed framework maintains user anonymity, diversity, revocability, noninvertibility, and indistinguishability against chosen-plaintext attacks. Through security and experimental analysis, we demonstrate the security strength and the performance of the proposed system.Since the user’s original fingerprint template is stored in ciphertext format in the template storage center, it requires a user to reenroll if the template storage center is attacked and the templates in it are compromised, which is a limitation of the proposed method.Recently, some novel fingerprint representations demonstrated superior authentication accuracy, which lay a great foundation for the future development of fingerprint template protection methods, for example, the Minutia Cylinder-Code (MCC) [32], a representation based on 3D data structures (called cylinders) and the DeepPrint [33], a fixed-length fingerprint representation of only 200 bytes. Built upon this novel fingerprint representation, we will investigate template protection for fingerprint biometric systems. In addition, multiple-biometric template protection and artificial intelligence (AI) based template data protection are worthy of further study.



---

*Source: 5344696-2021-11-27.xml*