27
Symmetric hash functions for fingerprint minutiae S. Tulyakov, F. Farooq and V. Govindaraju Center for Unified Biometrics and Sensors SUNY at Buffalo, New York, USA

Symmetric hash functions for fingerprint minutiae

  • Upload
    varian

  • View
    80

  • Download
    1

Embed Size (px)

DESCRIPTION

Symmetric hash functions for fingerprint minutiae. S. Tulyakov, F. Farooq and V. Govindaraju Center for Unified Biometrics and Sensors SUNY at Buffalo, New York, USA. Securing password information. It is impossible to learn the original password given stored hash value of it. - PowerPoint PPT Presentation

Citation preview

Page 1: Symmetric hash functions for fingerprint minutiae

Symmetric hash functions for fingerprint minutiae

S. Tulyakov, F. Farooq and V. GovindarajuCenter for Unified Biometrics and Sensors

SUNY at Buffalo, New York, USA

Page 2: Symmetric hash functions for fingerprint minutiae

Securing password information

It is impossible to learn the original password given stored hash value of it.

Page 3: Symmetric hash functions for fingerprint minutiae

Securing fingerprint informationWish to use similar functions for fingerprint data:

Page 4: Symmetric hash functions for fingerprint minutiae

Obstacles in finding fingerprint hash functions

Since match algorithm will work with the values of hash functions,• similar fingerprints should have similar hash values• rotation and translation of original image should not have big impact on hash values• partial fingerprints should be matched

Fingerprint space Hash space

hf1

f2

h(f1)h(f2)

Page 5: Symmetric hash functions for fingerprint minutiae

Existing Approaches• Davida, Frankel, Matt (1998)

- use error correcting codes, features should be ordered • Biometric encryption (Soutar et al., 1998)

- use filters for Fourier transform of fingerprint image- translation is accounted for, but not rotation

(example of such filters for face verification)

Page 6: Symmetric hash functions for fingerprint minutiae

Existing Approaches

•Ratha, Connell, Bolle (2001)- polynomial transform; need alignment.

• Juels, Sudan (2002)- map points to the values of error correcting codes , introduce variation by adding some other points.

Follow-ups:• Clancy et al, 2003• Uludag, Jain (2004)

Page 7: Symmetric hash functions for fingerprint minutiae

Minutia points of the fingerprint

Minutia points - points where ridge structure changes: end of the ridge and branching of the ridge.

The positions of minutia points uniquely identifies the fingerprint.

Page 8: Symmetric hash functions for fingerprint minutiae

Assumptions on minutiae sets extracted from the same finger

Assume that two fingerprints originating from one finger differ by scale and rotation. Thus the set of minutia points of one fingerprint image can be obtained from the set of minutia points of another fingerprint image by scaling and rotating.

Page 9: Symmetric hash functions for fingerprint minutiae

Background on complex numbers(1)

ibyax )()(

Point in 2-dimensional plane can be represented as a complex number: ( is an element satisfying )yixyx ),( i 12 iAdding complex number to all points in the complex plane results in a parallel shift of the plane by vector

bia yix ),( ba

yix

ibyaxbiayix

)()()()(

Page 10: Symmetric hash functions for fingerprint minutiae

Background on complex numbers (2)Polar representation of complex numbers:

i

yx

y

yx

xyxyixz2222

22

|| z

yixz

y

x

Denote - magnitude of 22|| yxz z

Then )sin(cos||||||

|| izizy

zxzz

Page 11: Symmetric hash functions for fingerprint minutiae

Background on complex numbers (3)Multiplying all points in the complex plane by some complex number results in a rotation around origin by angle and scaling by factor

z)sin(cos|| irr

|| r

))sin()(cos(||||))sincoscos(sinsinsincos(cos||||

)sinsinsincoscossincos(cos||||

)sin(cos||)sin(cos||2

izrizr

iiizr

izirzr

Page 12: Symmetric hash functions for fingerprint minutiae

Transformation of minutiae setIf we represent minutia points as points on a complex plane, then scaling and rotation can be expressed by function: where is the complex number determining rotation and scaling, and is the complex number determining translation of minutia point.

trzzf )(

|| z

|||| rz

z

rztrz t

)sin(cos|| irr

Multiplying by r means rotating by angle and scaling by factor .

|| r

rt

Page 13: Symmetric hash functions for fingerprint minutiae

Transformation functionIf is a set of minutia points of first fingerprint and is a set of minutia points of second fingerprint (same finger), then we assume that there is a transformation such that for any .

trzzf )(

),,,( 21 nccc ),,,( 21 nccc

trccfc iii )(ni ,1

trzzf )(

Page 14: Symmetric hash functions for fingerprint minutiae

Hash functions of minutia points

Consider following functions of minutia positions:

mn

mmnm

nn

nn

cccccch

cccccch

cccccch

2121

222

21212

21211

),,,(

),,,(

),,,(

The values of these symmetric functions do not depend on the order of minutia points.

Page 15: Symmetric hash functions for fingerprint minutiae

Hash functions of transformed minutiaeWhat happens with hash functions if minutia point set is transformed?

ntcccrhntcccrtrctrctrc

cccccch

nn

n

nn

),,,()()()()(

),,,(

21121

21

21211

2211212

2

221

222

21

2

222

21

222

21212

),,,(2),,,(

)(2)(

)()()(

),,,(

ntcccrthccchr

ntcccrtcccr

trctrctrc

cccccch

nn

nn

n

nn

Page 16: Symmetric hash functions for fingerprint minutiae

Finding transformation parameters from hash function values

Thus can be expressed as a linear combinations of with coefficients depending on transformation parameters r and t.

),,,( 21 ni ccch ijccch nj ),,,,( 21

Denote:

),,,( 21 nii ccchh ),,,( 21 nii ccchh

ntrhh 112

122

2 2 ntrthhrh Thus

And r,t can be calculated given 2121 ,,, hhhh

Page 17: Symmetric hash functions for fingerprint minutiae

Verifying fingerprint match using hash functions

When and are found we can use higher order hash functions to check if fingerprints match.

For example, if extracted minutia set is identical to the stored in the database, then for the hash function of third order we should get: 3

12

22

33

3 33 nthrtthrhrh

The difference between two parts of above equation can serve as a confidence measure for matching two sets of minutia points.

r t

Page 18: Symmetric hash functions for fingerprint minutiae

Practical considerations for matching localized hash values

•Since direction of the minutia (direction of the ridge where minutia is located) is also important in fingerprint matching, we consider unit direction vectors and same hash functions of that vectors (associating direction vector with complex number)

• The small changes in locations of minutia points result in big changes of symmetric functions of higher orders. Thus we limited ourselves to the symmetric functions of 1st and 2nd orders.

in

iini ddddddg 2121 ),,,(

Page 19: Symmetric hash functions for fingerprint minutiae

Matching Localized Subsets•Since it is rare that two fingerprint images contain exactly same minutia points, we consider subsets of minutia points.

•To ensure privacy we must have less symmetric functions than points in the minutia subset.

•Consider two subsets of 3 minutiae points & 2 functions

•The dist function provides a “goodness” of match between the subsets

Page 20: Symmetric hash functions for fingerprint minutiae

Goodness of Match

• For all “local” subsets find how many subsets are matched and whether values of and are similar.•For each minutiae point, find the 3 nearest neighbors and form 3 triplets that always include the initial minutia.

r t

|2|

|||2|

||),,,,,(

212

224

113

212

222

111

ntrtggrg

ntrggntrthhrh

ntrhhtrgghhdist iiii

Page 21: Symmetric hash functions for fingerprint minutiae

Fingerprint Matching Algorithm(1)• Enrollment:

1. For each triplet generated let (c1,c2,c3) and (d1,d2,d3) be the locations and directions of the minutia

2. Compute hash functions h1 = (c1 + c2 + c3)/3

g1 = (d1 + d2 + d3)/3h2 = (c1

2 + c22 + c3

2)/3 g2 = (d1

2 + d22 + d3

2)/3

3. Store 4 values (h1, h2, g1, and g2) corresponding to each triplet in the database.

Page 22: Symmetric hash functions for fingerprint minutiae

Fingerprint Matching Algorithm• Matching:

1. Compute hash functions (h1’, h2’, g1’, and g2’) for all “local” triplets in the test fingerprint

2. For each pair of local hash value sets find the distance of match

3. Note that t can be derived from the match between h and h’ and establishing the pivot. For a given t, search several quantized r

|2|

|||2|

||),,,,,(

212

224

113

212

222

111

ntrtggrg

ntrggntrthhrh

ntrhhtrgghhdist iiii

Page 23: Symmetric hash functions for fingerprint minutiae

Experimental results

0

20

40

60

80

100

0 2 4 6 8 10 12False Positive

Plain Matching Co. 1 Co. 2 Co. 3

Co.3: 3 pts and 2 hash fns ERR = 3%Original no-hash matching ERR = 1.7%

Co.2: 3 pts and 1 hash fnCo.1: 2 points and 1 hash fn

tested on FVC2002 set, with 2800 genuine tests and 4950 impostor tests

Page 24: Symmetric hash functions for fingerprint minutiae

Algorithm limitations• Different local minutia sets can have same hash value sets. Thus the expected performance of the algorithm is lower than the performance of the matching algorithm using all available fingerprint information. • Usually there are less matching hash values than matching minutiae. This means bigger difficulty in producing good match score, and setting match thresholds.

1c2c

3c

1c 2c

3c

1h1h3 matching minutiae

can result in only one matching hash pair

Page 25: Symmetric hash functions for fingerprint minutiae

Thank you ! References1.  Davide Maltoni, Dario Maio, Anil K. Jain and Salil

Prabhakar, Handbook of Fingerprint Recognition, Springer-Verlag, New York, 2003

2. Colin Soutar, Danny Roberge, Alex Stoianov, Rene Gilroy and B.V.K. Vijaya Kumar, “Biometric Encryption”, in ICSA Guide to Cryptography, R.Nichols, ed. (McGraw-Hill, 1999)

3. G.I. Davida, Y. Frankel, and B.J. Matt. “On enabling secure applications through offline biometric identification”. In IEEE Symposium on Privacy and Security, 1998.

4. Tsai-Yang Jea, Viraj S. Chavan, Venu Govindaraju and John K. Schneider, “Security and matching of partial fingerprint recognition systems”, In SPIE Defense and Security Symposium, 2004.

Page 26: Symmetric hash functions for fingerprint minutiae

Security• If the number of stored hash functions is less than the number of minutia points, it is not possible to find the positions of minutia points from local hash values.

• Using system of hash equations is difficult, since it is not known which minutia correspond to particular hash value.

ih

jc

xox x

xo

xo

x

xx o

x

x

oxx

xo

x

x

(a) (b)

(c)

Page 27: Symmetric hash functions for fingerprint minutiae

Cancelable Fingerprint Templates

• If fingerprint database is compromised, the different set of symmetric hash functions should be chosen. It can be any function set, constituting a basis in the set of symmetric polynomial functions of order less than • Also, different set of hash functions can be chosen for each individual, resulting in cancelable fingerprint templates.

m