Minutia-pair spectral representations for fingerprint template protection
Taras Stanko, Boris Skoric

TL;DR
This paper presents a novel fixed-length fingerprint minutiae representation based on coordinate differences, preserving phase information, which improves matching speed while maintaining comparable accuracy to existing spectral methods.
Contribution
Introduces a new spectral minutiae representation using coordinate differences that retains phase information and enhances computational efficiency.
Findings
Matching performance is comparable to existing spectral minutiae methods.
The new method improves matching speed.
Phase information is preserved, enhancing accuracy.
Abstract
We introduce a new fixed-length representation of fingerprint minutiae, for use in template protection. It is similar to the `spectral minutiae' representation of Xu et al. but is based on coordinate differences between pairs of minutiae. Our technique has the advantage that it does not discard the phase information of the spectral functions. We show that the fingerprint matching performance (Equal Error Rate) is comparable to that of the original spectral minutiae representation, while the speed is improved.
| Database | Function | Fusion | ||
|---|---|---|---|---|
| MCYT | 5.3% | 3.5% | 3.0% | |
| 4.0% | 2.5% | 2.2% | ||
| Verifinger | 11% | 4.9% | 5.7% | |
| 8.0% | 3.3% | 3.2% |
| Function | Fusion | ||
|---|---|---|---|
| 1.1% | 0.73% | 0.31% | |
| 0.65% | 0.35% | 0.15% | |
| Xu et al | 0.47% | 0.42% | 0.22% |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsBiometric Identification and Security · Forensic Fingerprint Detection Methods · Forensic and Genetic Research
Minutia-pair spectral representations for fingerprint template protection
Taras Stanko and Boris Škorić
Eindhoven University of Technology, The Netherlands
Abstract
We introduce a new fixed-length representation of fingerprint minutiae, for use in template protection. It is similar to the ‘spectral minutiae’ representation of Xu et al. but is based on coordinate differences between pairs of minutiae. Our technique has the advantage that it does not discard the phase information of the spectral functions. We show that the fingerprint matching performance (Equal Error Rate) is comparable to that of the original spectral minutiae representation, while the speed is improved.
1 Introduction
1.1 Privacy-preserving storage of biometric data
Biometrics-based authentication has become popular because of its great convenience. Biometrics cannot be forgotten or accidentally left at home. While biometric data is not strictly speaking secret (we are after all leaving a trail of fingerprints, DNA etc. behind us), it is important to protect biometric data for various reasons, the most important of which is privacy. Unprotected storage of biometric data would reveal medical conditions and would allow for cross-matching entries in different databases. Furthermore, large-scale availability of biometric data would make it easier for malevolent parties to leave misleading traces at at crime scene. (E.g. artificial fingerprints [10], synthesized DNA [7].)
One of the easiest ways to properly protect a biometric database against breaches and insider attacks is to store biometrics in hashed form, just like passwords, but with the addition of an error-correction step to get rid of the measurement noise. To prevent critical leakage from the error correction redundancy data, one uses a Helper Data System (HDS) [9, 5, 12], for instance a Fuzzy Extractor or a Secure Sketch [8, 6, 4].
A HDS typically makes use of an error-correcting code and hence needs a fixed-length representation of the biometric. Such a representation is not straightforward when the measurement noise can cause features of the biometric to appear or disappear, due to e.g. occlusion of iris areas or fuzziness of fingerprint minutiae. A very useful fixed-length representation called spectral minutiae was introduced by Xu et al. [17, 14, 15, 16]. A Fourier-like spectral function is built up on a fixed discrete grid, in such a way that each detected fingerprint minutia adds a contribution to the function. Comparison of spectral functions is robust against changes in the number of available biometric features.
1.2 Contributions and outline
We have the following results regarding spectral representations of fingerprint minutiae.
- •
We introduce spectral functions based on pairs of minutiae. By working with coordinate differences we immediately obtain a translation-invariant representation. Whereas Xu et al.’s spectral functions have to discard phase information in order to achieve translation invariance, our method retains phase information.
- •
We test our pair-based spectral minutiae matching technique on two fingerprint databases. The achieved Equal Error Rate is comparable to Xu et al.
- •
Our fingerprint matching is faster even though we have to sum over minutia pairs instead of individual minutiae. The speedup is due to the fact that we need fewer grid points on which to compute the spectral function.
- •
A further speedup can be obtained by skipping one laborious step in the verification procedure: rotating the fingerprint so as to obtain optimal alignment with the enrolled fingerprint. Skipping this step leads only to a minimal penalty in terms of False Acceptance Rate and False Rejection Rate.
In Section 2 we briefly review Helper Data Systems and spectral minutiae functions. In Section 3 we discuss the drawbacks of Xu et al.’s spectral minutiae technique. We introduce our minutia pair approach in Section 4, and we study its fingerprint matching performance in Section 5. Section 6 discusses the computational efficiency of the verification procedure.
2 Preliminaries
2.1 Notation and terminology
We denote the number of minutiae found in a fingerprint by . The coordinates of the ’th minutia are and its orientation is . Let be a function of two real-valued arguments. The two-dimensional Fourier transform is defined as . The inverse relation is given by .
The complex conjugate of is written as . The hermitean conjugate of a matrix is given by . The inner product of two complex vectors is . The Pearson correlation coefficient of two length- vectors is defined as , where and .
We will use the abbreviations FR = False Reject, FRR = False Reject Rate, FA = False Accept, FAR = False Accept Rate, EER = Equal Error Rate, ROC = Receiver Operating Characteristic.
2.2 Helper Data Systems
A Helper Data System (HDS) for a (possibly non-discrete) source consists of two functions, Gen and Rec. Given an enrollment measurement of the source, Gen produces redundancy data called helper data and a secret string . The helper data is stored. The storage is considered insecure, i.e. attackers learn . At some later time, a verification measurement is performed, yielding outcome which is a noisy version of . The Rec function takes as input and . It outputs an estimator which should equal if the noise was not excessive. In a general HDS, there is no constraint on the distribution of . A desirable property is that has high entropy given .
A HDS is the perfect primitive for privacy protection of biometric databases against inside attackers and intruders, who typically obtain access not only to stored data but also to decryption keys. The HDS creates a noiseless secret and thus makes it possible to protect biometric secrets in the same way as passwords: by hashing. For every enrolled user, the database contains and a hash . In the verification phase, the hash of the reconstructed is compared against the stored . Ideally, contains just enough information to allow for the error correction, and does not leak any privacy-sensitive information about the raw biometric . Furthermore, if is a properly chosen one-way function and has enough entropy given , the hash value does not reveal .
HDSs for discrete sources [2, 8, 3, 6, 4] and continuum sources [9, 13, 5, 12] are a well studied topic. Typically a HDS uses an error correcting code, which requires that the biometric measurement is turned into a discrete fixed-length representation.
2.3 Spectral representation of minutiae
Subsequent measurements of the same finger may not always result in the same set of observed minutiae. This is problematic if one needs a fixed-length representation of a fingerprint, e.g. when a HDS is used. The technique of spectral minutiae was introduced by Xu et al. [17, 14, 15] as a way to obtain a fixed-length representation. The set of enrolled minutiae is turned into a function on the -plane by summing narrow Gaussian peaks (with width ) centered on the minutia locations; then a translation-invariant expression is obtained by taking the absolute value of the Fourier transform,
[TABLE]
In order to get an expression with simple behaviour under rotation and scaling, they sampled on a log-polar grid. Let and where are sampled with equal spacing. A matrix is constructed as . Under the combination of scaling and rotation, for all , the transforms as . For small it holds that and hence the transform is almost equal to a shift on the -grid.111 The effect on was not explicitly mentioned in the work of Xu et al.
Xu et al. investigated fingerprint matching in the spectral minutiae domain by looking at the Pearson correlation between a freshly obtained and the enrolled . Their procedure included a search to find values that maximise the correlation. It turned out that in practice one can fix and that the -search can be restricted to the interval from to , in steps of .
In order to extract more information from a fingerprint Xu et al introduced a variant of the function which contains information about the minutia orientations . They inserted a factor or into the summation in (1). Unsurprisingly, using information from both the ordinary representation and the orientation-containing variant yielded better results (in terms of e.g. ROC curves and EER) than using only a single representation.
Xu et al also investigated a minutiae representation that is fully invariant under translation, rotation and scaling. Let be the discrete Fourier transform of with respect to and ; then scalings and rotations have the effect of merely producing a phase factor multiplying ; the absolute value is fully invariant. However, it turned out that fingerprint matching in the -domain does not perform well.
3 Motivation
The spectral minutiae technique as developed by Xu et al [17, 14, 15] has a number of unsatisfactory aspects.
Translation invariance is obtained by taking the absolute value of a Fourier transform. This step discards a lot of information. 2. 2.
Xu et al conclude that the scaling factor does not have to be taken into account, since it is always close to 1. But in their best fingerprint matching implementation they still apply logarithmic sampling in the radial -direction, . Such sampling does not match the radial information density in the fingerprint and hence makes it necessary to take many many samples than in the case of linear sampling. 3. 3.
In combination with a HDS, the -search is time consuming. This is caused not by the repeated re-computation of the score, but by the fact that in a full HDS every -attempt needs an evaluation of the Rec function and the computation of a hash.
We address the first issue by introducing a spectral representation that is based on coordinate differences only. The advantage is immediate translation invariance without information loss, enabling us to work with fewer samples. The drawback is that each summation over minutiae is replaced by a summation over pairs. The overall effect on the computation time during reconstruction is a tradeoff between these two. In Section 6 we show that the tradeoff works in our advantage.
We address the second issue by performing a Fourier transform only in the angular direction. In the radial direction our sampling occurs in the spatial domain and is linear.
The third issue could be addressed by developing a method to quickly determine the global orientation of a captured fingerprint image. (Knowledge of the global orientation, even if inaccurate, reduces the search space. Furthermore, storing the global orientation during enrolment as helper data does not leak sensitive information.) However, with our pair-based spectral representation it turns out that executing the -search yields only a very modest performance improvement; the search may as well be omitted. In Section 5.3 we show the difference in performance.
4 The minutia-pair approach
4.1 Definitions and properties
Let and let for minutiae . See Fig. 1. We define two translation-invariant spectral functions as follows
[TABLE]
Here the subscript denotes the set of minutia locations, and likewise stands for the set of minutia orientations. We call the functions ‘spectral’ because (2) is the Fourier transform (with respect to the radial coordinate and the angle ) of a sum of delta functions centered on the values in the plane.
Let be a rotation matrix. Our spectral functions (2),(3) have simple behaviour under the combined scaling and rotation , ,
[TABLE]
Note that the absolute values , are invariant under translation, scaling and rotation. Without giving details we mention that, unfortunately, fingerprint matching based on , without the phase information performs badly.
Similar to Xu et al we need to sample at equally spaced steps in order to exploit the phase behaviour (4),(5) under scaling. However, if we choose to ignore scaling entirely (see point 2 in Section 3), then there is no reason to Fourier transform the radial direction, and we introduce an alternative spectral function,
[TABLE]
In the radial direction, the functions and consist of a sum of Gaussian peaks centered on the values . The width reduces the scheme’s sensitivity to small perturbations in the minutia properties.
Under a rotation (, ) we have and . We want all our spectral functions to be single-valued.222 Invariant under rotations that are an integer multiple of .
Hence always has to be integer.
Lemma 4.1**.**
For odd it holds that for all , and for all .
Proof.
In (2) every pair of indices gives two terms in the summation. Using and (see Fig. 1), we write . This vanishes when is odd. The proof for is analogous. ∎
4.2 Choosing the grid points
We have to choose a discrete -grid of points on which to evaluate and . On the one hand, the grid should contain many points so that the spectral functions contain sufficient information about the fingerprint. On the other hand, having too many grid points results in an inefficient scheme. Lemma 4.1 tells us that we do not have to compute for odd . Furthermore, we know that, at a given , the spectral functions detect angular periodic features of size radians. This leads to a natural cutoff at large where the length scale becomes smaller than the feature size in a typical fingerprint, and noise starts to dominate. Similarly, there is a natural maximum for , namely where matches . Finally we note that and . This means that the grid point contains exactly the same information as and hence can be omitted. The considerations listed above are the only theoretical guidelines for choosing the grid; the best choice must be found by trial and error.
The considerations for are similar. The grid is a -grid. The maximum should be roughly the same as for the -functions. The natural cutoffs for are given by and . It holds that and . Hence it suffices to look at positive only.
4.3 Introducing weights
In the computation of a spectral function at enrollment, it is possible to introduce a weight factor for each of the -pairs in the summation. It is advantageous to set a low weight for minutia pairs which are unlikely to be recovered later. A low recovery likelihood may occur e.g. when a minutia has low quality. Another reason can be a very large value of , in which case the recovery is sensitive to noise at the edge of the image, or a very small which may cause later minutia misidentification in case of noise. In our experiments we have not used weights other than [math] or .
4.4 Choosing the score function
Let denote one of the four spectral functions , , obtained at enrollment, and the noisy version of obtained later, in the verification phase. We need a metric or ‘score’ function which quantifies how close is to . As and are complex-valued, there are quite some options. We have experimented with correlation functions for the radial and phase part of the complex numbers, as well as the real and imaginary part. Furthermore we have tried distance in the complex plane, with and without normalisation of the function as a whole. In our experiments it turns out that a complex correlation-like quantity is best able to discriminate between genuine fingerprint matches and impostors. We define our score as
[TABLE]
where stands for the correlation as defined in Section 2.1, and the matrices are treated as vectors.
4.5 Fusion of scores
The spectral functions and together contain more information about the fingerprint than each one separately. The information is partially overlapping. We construct a ‘fused’ score by adding the two scores (8) in the same way as [17]: . Analogously, for the -functions we work with the fused score .
5 Experimental results
We have applied our minutia-pair approach to the Verifinger database and the MCYT database [11]. The Verifinger database contains fingerprints from six individual persons, ten fingers per individual, eight images per finger. The size of each image is pixels. The MCYT database contains fingerprints from 100 individuals, 10 fingers per individual, 12 images per finger ( pixels). The fingerprints are generally of higher quality than in the Verifinger database.
We extracted minutia coordinates and orientations from the images by using the VeriFinger software [1].
5.1 Optimal parameter choices
Good results were obtained with the following parameter settings. For the -functions, and with 32 equally spaced values. For the -functions, ; with 20 equally spaced points (MCYT database); with 25 equally spaced points (Verifinger database). For the and functions we take only even , as explained in Lemma 4.1. We set pixels.
A minutia extracted by VeriFinger is labeled with a quality . We took only minutiae with . Furthermore we used an additional selection rule that turns out to improve overall results a bit: a minutia pair is discarded from the summation in (2,3,6,7) if exceeds the horizontal size of the image.
In Fig. 2 we show an example of the and spectral function. Entirely different fingers obviously produce very different results. The two leftmost columns correspond to the same finger. Noisy images of the same finger do not produce results that, to the human eye, are clearly correlated. However, it turns out (Section 5.2) that the similarities are enough to distinguish between the enrolled user from an impostor.
5.2 ROC curves and Equal Error Rates
We work in a verification setting, i.e. a stated identity has to be verified. We determine the False Rejection Rate (FRR) by comparing, for each finger in the database, all the pairs of images. We determine the False Acceptance Rate (FAR) by looking at each pair of different fingers, where one image is drawn at random for each finger (independently per pair).333 This includes pairs of unlike fingers, e.g. thumb vs index finger. The statistics do not change much when only pairs of like fingers are compared.
We draw Receiver Operating Characteristic (ROC) curves as FAR plotted against FRR. Each point in the ROC curve corresponds to one threshold setting. The Equal Error Rate (EER) is the error rate in the point where FRR equals FAR.
Table 1 lists the EER values that we obtained. The ROC curves are shown in Fig. 3. We see that the -functions consistently outperform the -functions, and that the spectral functions outperform the location based functions. Furthermore we see that fusion of and yields only a modest improvement over . We conclude that, in our pair-based approach, the best option is to work either with or the fusion of and .
We benchmark our system against results reported by Xu et al. [17], which are based on ten individuals in the MCYT database who have high-quality fingerprint images. The ROC curves are shown in Fig. 4, and Table 2 contains the EER comparison.444 Unfortunately, [17] does not mention which ten individuals were selected.
We conclude that our pair-based spectral function has a discrimination performance comparable to Xu et al.’s spectral function.
5.3 Rotation of the verification image
The results of Section 5.2 were obtained without Xu et al.’s procedure of trying out several image rotations so as to optimise the matching score. Now we discuss what happens when we do try a number of different rotation angles .
First we checked for the MCYT and the VeriFinger database how a rotation affects the and -based score in case of a genuine image pair. At some optimal angle the score is maximal. For all genuine pairs we determined , for and . The histograms of are shown in Fig. 5. We see that typically .
In Fig. 6 we present ROC curves that show the impact of trying multiple rotation angles in a limited range; we set the range based on Fig. 5. In the case of the MCYT database we see a consistent though small improvement. For the VeriFinger database the change is not always favourable; the ROC curves intersect. For both databases, the effect on the EER is minimal.
Increasing the range of does not improve the matching of genuine pairs; it does however increase the FAR. Hence the ROC curves become worse when we increase the range of .
These results allow for a very interesting trade-off: instead of opting for a minimal improvement of matching accuracy, we can skip the -search and thus significantly reduce the computation time. Note that Xu et al.’s method has a -search with 11 different values of .
6 Computational efficiency
In this analysis we do not use the potential speedup that can be gained by skipping the -search.
Speed is important predominantly in the verification phase. From a freshly captured image the spectral function has to be computed on a number of grid points which we denote as . The spectral function has to be computed not once but several times, because different image orientations have to be tried. Fortunately this does not multiply the total effort555 Here we look only at the computation of the spectral function and the score; not at the cost of Secure Sketch reconstruction attempts.
by a factor , as the spectral function has a simple transform under rotation. (This holds for Xu et al as well as our and functions.)
Let be the number of minutiae. Let us denote the cost of computing one summation term of the spectral function in one grid point as , and the cost of applying a rotation transform in one grid point as . The cost of computing the score can be written as where is some small constant. The superscript ‘’ will refer to Xu et al’s spectral function; the superscript ‘’ to our function . The total cost for the verification phase (not counting the secure sketch) is
[TABLE]
We have , , . The main difference between the two approaches lies in the first term: versus , i.e. versus . Xu et al report a grid, yielding . In contrast, our -function is evaluated on a grid of size . Given that typically , we have . Hence our verification is faster than [17, 14, 15].
Note that [16] introduces a reduced template size by applying Principal Component Analysis or a Discrete Fourier Transform to select informative features. This selection reduces the template size by roughly a factor 10. However, these methods still require computation of the spectral function on many grid points.
7 Discussion
Achieving translation invariance by looking at minutia pairs seems to be advantageous compared to taking the absolute value of a Fourier transform. The minutia-pair approach is able to extract information from a fingerprint using fewer grid points. We conjecture that this is due to the fact that our spectral functions retain phase information instead of discarding it. Of the four functions that we studied, the performs best. Fusion of the matching scores from and leads to an EER comparable to Xu et al.
Due to the reduction of the number of grid points our method is faster than the verification described by Xu et al., in spite of the increased number of summation terms. As an unexpected bonus, it turns out that we can omit the search for an optimal rotation angle; this gives an additional speed improvement.
As topics for future work we mention (i) further speedup by discarding grid points that have a bad signal-to-noise ratio; (ii) applying Principal Component Analysis and similar techniques to improve the EER; (iii) constructing a HDS based on and .
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Veri Finger SDK. Available online, www.neurotechnology.com .
- 2[2] C.H. Bennett, G. Brassard, C. Crépeau, and M. Skubiszewska. Practical quantum oblivious transfer. In CRYPTO , pages 351–366, 1991.
- 3[3] X. Boyen. Reusable cryptographic fuzzy extractors. In ACM Conference on Computer and Communications Security , pages 82–91, 2004.
- 4[4] R. Canetti, B. Fuller, O. Paneth, L. Reyzin, and A. Smith. Reusable fuzzy extractors for low-entropy distributions. In Eurocrypt 2016 , 2016. eprint.iacr.org/2014/243 .
- 5[5] J. de Groot, B. Škorić, N. de Vreede, and J.P. Linnartz. Quantization in Zero Leakage Helper Data Schemes. EURASIP Journal on Advances in Signal Processing , 2016. 2016:54.
- 6[6] Y. Dodis, R. Ostrovsky, L. Reyzin, and A. Smith. Fuzzy Extractors: how to generate strong keys from biometrics and other noisy data. SIAM J. Comput. , 38(1):97–139, 2008.
- 7[7] D. Frumkin, A. Wasserstrom, A. Davidson, and A. Grafit. Authentication of forensic DNA samples. FSI Genetics , 4(2):95–103, 2010.
- 8[8] A. Juels and M. Wattenberg. A fuzzy commitment scheme. In ACM Conference on Computer and Communications Security (CCS) 1999 , pages 28–36, 1999.
