fingerprint hash

Upload: remya-krishnan

Post on 07-Apr-2018

230 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/6/2019 Fingerprint Hash

    1/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

  • 8/6/2019 Fingerprint Hash

    2/27

    Securing password information

    It is impossible to learn the original password given stored

    hash value of it.

  • 8/6/2019 Fingerprint Hash

    3/27

    Securing fingerprint informationWish to use similar functions for fingerprint data:

  • 8/6/2019 Fingerprint Hash

    4/27

    Obstacles in finding fingerprint hashfunctions

    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

    f2h(f1)

    h(f2)

  • 8/6/2019 Fingerprint Hash

    5/27

    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)

  • 8/6/2019 Fingerprint Hash

    6/27

  • 8/6/2019 Fingerprint Hash

    7/27

    Minutia points of the fingerprint

    Minutia points - points where

    ridge structure changes: end

    of the ridge and branching ofthe ridge.

    The positions of minutia

    points uniquely identifies the

    fingerprint.

  • 8/6/2019 Fingerprint Hash

    8/27

    Assumptions on minutiae setsextracted 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.

  • 8/6/2019 Fingerprint Hash

    9/27

    Background on complex

    numb

    ers(1)

    ibyax )()(

    Point in 2-dimensional plane can be represented as a complex

    number: ( is an element satisfying )yixyx pn),( i 12 !i

    Adding complex number to all points in the

    complex plane results in a parallel shift of the plane by vector

    bia yix

    ),( ba

    yix

    ibyax

    biayix

    )()(

    )()(

    !

  • 8/6/2019 Fingerprint Hash

    10/27

    Background on complex

    numb

    ers (2)Polar representation of complex numbers:

    !! iyx

    y

    yx

    xyxyixz

    2222

    22

    N

    ||z

    yixz!

    y

    x

    Denote - magnitude of22 yxz ! z

    Then )sin(cos UU iziz

    y

    z

    xzz !

    !

  • 8/6/2019 Fingerprint Hash

    11/27

    Background on complex

    numb

    ers (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 NN irr !N || r

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

    ))sincoscos(sinsinsincos(cos||||

    )sinsinsincoscossincos(cos||||

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

    2

    NUNU

    UNUNUNUN

    UNUNUNUN

    UUNN

    !

    !

    !

    v!v

    izr

    izr

    iiizr

    izirzr

  • 8/6/2019 Fingerprint Hash

    12/27

    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 !)(

    N||z

    |||| rz v

    z

    rzt

    rz

    t

    )sin(cos|| NN irr !

    Multiplying by r means

    rotating by angle and

    scaling by factor .

    N

    || r

    rt

  • 8/6/2019 Fingerprint Hash

    13/27

    Transformation function

    If 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 ddd -

    trccfc iii !!d )(

    ni -,1!

    trzzf !)(

  • 8/6/2019 Fingerprint Hash

    14/27

    Hash functions of minutia points

    Consider following functions of minutia positions:

    m

    n

    mm

    nm

    nn

    nn

    cccccch

    cccccch

    cccccch

    !

    !

    !

    --

    /

    --

    --

    2121

    22

    2

    2

    1212

    21211

    ),,,(

    ),,,(

    ),,,(

    The values of these symmetric functions do not depend on

    the order of minutia points.

  • 8/6/2019 Fingerprint Hash

    15/27

    Hash functions of transformed minutiae

    What happens with hash functions if minutia point set is transformed?

    ntcccrhntcccr

    trct

    rct

    rc

    cccccch

    nn

    n

    nn

    !!

    !

    ddd!ddd

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

    ),,,(

    21121

    21

    21211

    --

    -

    --

    2

    211212

    2

    2

    21

    22

    2

    2

    1

    2

    22

    2

    2

    1

    22

    2

    2

    1212

    ),,,(2),,,(

    )(2)(

    )()()(

    ),,,(

    ntcccrthccchr

    ntcccrtcccr

    trctrctrc

    cccccch

    nn

    nn

    n

    nn

    !

    !

    !

    ddd!ddd

    --

    --

    -

    --

  • 8/6/2019 Fingerprint Hash

    16/27

    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 ddd -ijccch

    nj e),,,,( 21 -

    Denote:

    ),,,( 21 nii ccchh ddd!d -

    ),,,( 21 nii ccchh -!

    ntrhh !d 112

    12

    2

    2 2 ntrthhrh !d

    Thus

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

  • 8/6/2019 Fingerprint Hash

    17/27

    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

    1

    2

    2

    2

    3

    3

    3 33 nthrtthrhrh !d

    The difference between two parts of above equation can serve

    as a confidence measure for matching two sets of minutia

    points.

    r t

  • 8/6/2019 Fingerprint Hash

    18/27

    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 bigchanges of symmetric functions of higher orders. Thus we limited

    ourselves to the symmetric functions of 1st and 2nd orders.

    i

    n

    ii

    ni ddddddg ! -- 2121 ),,,(

  • 8/6/2019 Fingerprint Hash

    19/27

    Matching Localized SubsetsSince it is rare that two fingerprint images contain exactly sameminutia 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 distfunction provides a goodness of match between thesubsets

  • 8/6/2019 Fingerprint Hash

    20/27

    Goodness ofMatch

    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|

    ||),,,,,(

    2

    12

    2

    24

    113

    2

    12

    2

    22

    111

    ntrtggrg

    ntrgg

    ntrthhrh

    ntrhhtrgghhdist iiii

    d

    d

    d

    d!dd

    E

    E

    E

    E

  • 8/6/2019 Fingerprint Hash

    21/27

    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 functionsh1 = (c1 + c2 + c3)/3

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

    2 + c22 + c3

    2)/3

    g2 = (d12

    + d22

    + d32

    )/3

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

  • 8/6/2019 Fingerprint Hash

    22/27

    Fingerprint Matching Algorithm Matching:

    1. Compute hash functions (h1, h2, g1, and g2) for alllocal triplets in the test fingerprint

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

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

    |2|

    ||

    |2|

    ||),,,,,(

    212

    224

    113

    2

    12

    2

    22

    111

    ntrtggrg

    ntrgg

    ntrthhrh

    ntrhhtrgghhdist iiii

    d

    d

    d

    d!dd

    E

    E

    E

    E

  • 8/6/2019 Fingerprint Hash

    23/27

    Experimental results

    0

    2 0

    4 0

    6 0

    8 0

    10 0

    0 2 4 6 8 10 12

    F a l se P o si t i v e

    P la in M at c h ing 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 fn

    Co.1: 2 points and 1 hash fn

    tested on FVC2002 set,

    with 2800 genuine testsand 4950 impostor tests

  • 8/6/2019 Fingerprint Hash

    24/27

    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.

    1c

    2c

    3c

    1cd 2cd

    3cd

    1h1hd3 matching minutiae

    can result in only one

    matching hash pair

  • 8/6/2019 Fingerprint Hash

    25/27

    Thank you !References

    1. Davide Maltoni, Dario Maio,Anil K. Jain and Salil

    Prabhakar, Handbook of FingerprintRecognition, Springer-

    Verlag, New York, 20032. 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. InIEEESymposium on Privacy andSecurity, 1998.

    4. Tsai-Yang Jea, Viraj S. Chavan, Venu Govindaraju and John

    K. Schneider, Security and matching of partial fingerprint

    recognition systems, In SPIEDefense andSecurity

    Symposium, 2004.

  • 8/6/2019 Fingerprint Hash

    26/27

    Security

    If the number of stored hash functions is less thanthe number of minutia points, it is not possible to find thepositions of minutia points from local hash values.

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

    ih

    jc

    x

    ox x

    x

    ox

    o

    x

    x

    x o

    x

    x

    oxx

    x

    o

    x

    x

    (a) (b)

    (c)

  • 8/6/2019 Fingerprint Hash

    27/27