Biometrics & Security Seminar Fingerprint-based Fuzzy Vault: Implementation and Performance Based on the journal article of K. Nandakumar, A. K. Jain and S. Pankanti Presenter: Marko Pascan Seminar instructors: Laila El Aimani and Deniz Sarier B-IT Bonn, 14.12.2009
Contents Cryptography Vs Biometric Cryptosystems Motivation for Fuzzy Vault Background and Definitions Fuzzy Vault Fingerprint Fuzzy Vault Proposed Implementation Helper Data and Fingerprint alignment Experimental Results Vulnerability of Fuzzy Vault Conclusion
Contents Cryptography Vs Biometric Cryptosystems Motivation for Fuzzy Vault Background and Definitions Fuzzy Vault Fingerprint Fuzzy Vault Proposed Implementation Helper Data and Fingerprint alignment Experimental Results Vulnerability of Fuzzy Vault Conclusion
Cryptography Vs Biometric Cryptosystems Traditional cryptography Widely used, high, proven security Assumption : cryptographic keys are only known to legitimate user (keys must be kept secret) AES, RSA, ... Encryption: C = E KE (P) (P-plain text, KE-encryption key) Decryption: P = D KD (C) (C-cipher text, KD-decryption key) Need long keys, e.g. 128 bits for AES Main challenge : maintain the secrecy of the keys Store keys in a secure location, use alternative auth. mechanism (e.g. password based auth.) to control access to keys Problem : passwords stolen or forgotten Password problem: Simple password: easy to remember, compromise security Complex password: difficult to remember, expensive to maintain [1]
Cryptography Vs Biometric Cryptosystems (contd.) Alternative: biometric authentication Identity established based on anatomical and behavioral traits: face, fingerprint, speech (voice), eye (iris), hand, etc Stronger: biometric traits cannot be lost or forgotten Biometric Cryptosystems Biometrics Cryptography
Contents Cryptography Vs Biometric Cryptosystems Motivation for Fuzzy Vault Background and Definitions Fuzzy Vault Fingerprint Fuzzy Vault Proposed Implementation Helper Data and Fingerprint alignment Experimental Results Vulnerability of Fuzzy Vault Conclusion
Motivation for Fuzzy Vault Security and privacy of biometric systems major issue How robust is the system against attacks? What happens if biometric template is stolen? Can privacy of the users be preserved when a security breach occurs? Protect the user template (stored locally or centrally) Need method that can compensate for intra- class variations in the biometric data (samples of biometric traits obtained over a period of time): different angles, amounts of pressure, chapped skin, etc.
Contents Cryptography Vs Biometric Cryptosystems Motivation for Fuzzy Vault Background and Definitions Fuzzy Vault Fingerprint Fuzzy Vault Proposed Implementation Helper Data and Fingerprint alignment Experimental Results Vulnerability of Fuzzy Vault Conclusion
Background and Definitions Fingerprint Unique, immutable for each individual Made of a series of ridges and furrows on the surface of the finger Uniqueness of a fingerprint can be determined by the pattern of ridges and furrows as well as the minutiae points Minutiae points are local ridge characteristics that occur at either a ridge bifurcation or a ridge ending. y x Matching of two fingerprints. Illustration of Input fingerprint Fingerprint with minutiae intra-class variability [2]
Background and Definitions (contd.) Finite Field (Algebra) Galois field -a field that contains finitely many elements Example: Galois Field with (cardinality) 65536 elements: F = GF (2 16 ) In presented implementation of fuzzy vault arithmetic is done in GF (2 16 ) CRC (Cyclic Redundancy Check) Hash-function used to detect accidental changes in raw data In presented implementation of fuzzy vault 16-bit CRC code was used (CRC-16) Unordered sets Relative positions of set elements do not change the characteristics of the set, i.e. {2, -5, 1} conveys the same information as {-5, 1, 2}
Background and Definitions (contd.) Lagrange Interpolation Interpolating set of data points with a interpolation polynomial in Lagrange form (Lagrange polynomial) Formally: given a set of k +1 data points ( x 0 , y 0 ),..., (x k , y k ), where no two x j are the same, interpolation polynomial in the Lagrange form is linear combination of Lagrange basis polynomials:
Contents Cryptography Vs Biometric Cryptosystems Motivation for Fuzzy Vault Background and Definitions Fuzzy Vault Fingerprint Fuzzy Vault Proposed Implementation Helper Data and Fingerprint alignment Experimental Results Vulnerability of Fuzzy Vault Conclusion
Fuzzy Vault Introduced by Juels and Sudan (2002) Cryptographic construction designed to work with (biometric) features represented as unordered sets In brief: Alice places a secret K in a vault and locks it with unordered set A Bob uses an unordered set B to unlock the vault and access K Successful iff B and A overlap substantially [1]
Fuzzy Vault: Example 1 Alice selects a polynomial p of variable x that encodes secret k 1 (e.g fixes coefficients of p according to k ) k = (1, -3, 1), she chooses deg (p) =2: p (x) = x 2 - 3x + 1 Alice's unordered set: A = {-1, -2, 3, 2} 2 Alice computes the polynomial projections of A: 3 {A, p (A)} = {(-1,5),(-2,11),(3,1), (2,-1)} She adds some (let's say 2) randomly generated chaff points 4 that do not lie on p: C = {(0,2), (1,0)} Final point set R = {(-1,5),(-2,11),(3,1), (2,-1), (0,2), (1,0)} 5 Bob has unordered set B = {4, 2, -2, 3}. To access secret k he 6 needs to separate 3 (deg (p) + 1) genuine points from R to reconstruct p A ∩ B = {-2, 3, 2}, which is substantial overlap 7
Fuzzy Vault (contd.) Security is based on infeasibility of polynomial reconstruction problem Definition: Polynomial Reconstruction Problem 〈 i , y i 〉 } i=1..n , and Given a set of points in a finite field { x parameters n, k and w, output any polynomial p such that degree of p is less then k and p(x i )=y i for at least n-w values of index i. [3] Differently put: solve for the degree D polynomial P, given D+1 points passing through it A genuine finger can separate at least D + 1 genuine points from chaff points and use them to reconstruct P
Fuzzy Vault: Parameters r – number of points in the vault that lie on the polynomial p e.g number of minutiae that can be extracted from fingerprint s – number of chaff points -> security of the vault n – degree of polynomial p -> tolerance to errors in biometric data
Contents Cryptography Vs Biometric Cryptosystems Motivation for Fuzzy Vault Background and Definitions Fuzzy Vault Fingerprint Fuzzy Vault Proposed Implementation Helper Data and Fingerprint alignment Experimental Results Vulnerability of Fuzzy Vault Conclusion
Fingerprint Fuzzy Vault Fuzzy vault operating on the fingerprint minutiae features Minutiae represented as triplet ( u, v, Θ ) Fuzziness from the variability of biometric data Requires pre-aligned biometric templates or alignment during decoding of fuzzy vault Pre-aligned biometric templates non-realistic v assumption u
Fingerprint Fuzzy Vault: Example [5]
Contents Cryptography Vs Biometric Cryptosystems Biometric Cryptosystem Modes Motivation for Fuzzy Vault Background and Definitions Fuzzy Vault Fingerprint Fuzzy Vault Proposed Implementation Helper Data and Fingerprint alignment Experimental Results Vulnerability of Fuzzy Vault Conclusion
Proposed Implementation Uses both location of minutiae points in the image (u,v) and orientation attribute ( Θ ) -> more chaff points possible (harder to decode by attacker) u,v – indicate the row and the column indicies in the image Θ – orientation of the minutiae with respect to the horizontal axis (1 < Θ < 360 ) Generate several candidate secrets (Lagrange interpolation) and use CRC to detect correct polynomial Template and query automatically aligned before decoding (helper data) Higher computational cost – large number of interpolations
Vault Encoding 1 Obtain template minutiae set M T = {m i T }, i = 1, .., N T N T - number of minutiae in T Estimate quality of each minutia in T -> q T = {q(m i T )}, i = 1, .., N T Quality index in spatial domain: partition given image into a lattice of blocks b x b. Estimates the local coherence of gradients (gray) in non- overlapping blocks [6] Extract helper data (explained later) => template helper data H T
Vault Encoding (contd.) 2 Sort minutiae based on their quality, select best-quality minutiae Select only well-separated minutiae (unique values in field F ) – minimal distance is greater then some threshold δ 1 (configurable) where Δ(Θ i , Θ j ) = min (|Θ i , Θ j |, 360 - |Θ i , Θ j |) , β M =0.2 (determined empirically in order to eliminate as many chaff points as possible when unlocking) Selected minutiae: SM T = {m j T }, j=1, .., r Possible failure to capture (FTC) error if N T < r
Recommend
More recommend