Top Banner
Shannon Information theory, coding and biometrics Han Vinck June 2013
46

Shannon Information theory, coding biometrics - uni · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Feb 06, 2018

Download

Documents

dinhtuong
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Shannon Information theory, coding and biometrics

Han VinckJune 2013

Page 2: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

We consider

• The password problem using biometrics• Shannon‘s view on security• Connection to Biometrics 

han Vinck April 2013 2

Page 3: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck 3

Goal: use biometrical features as passwords

Page 4: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

4

Illustration of the password problem

Enrollment: password hash(pwd)

verification: password hash(pwd)

compare

Page 5: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

5

Illustration of the problem

Enrollment: hash( )

verification: hash( )

compare

Page 6: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6

hash functions of biometrics can not be used as passwords

for  a vector c   and   a noisy version  c‘  c  noise

hash property:  hash( c‘  c )  ≠ hash(c)

single error => n/2 differences

may be we can use Error‐correction:

dec ( c‘  c ) = dec ( c)    equality for 2t < dmin

Page 7: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

7

This is what we want

secretKey = b

Key = b‘ secret

lock

unlock

Page 8: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck 8

Problem: secure storage and biometric authentication

Bio key/password  b

secret

secure storage

Authentication

f(b)

Bio key/password  b*

try to find b

Page 9: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

biometrics

• Definition:

Methodology for recognizing and identifying people

based on individual and distinct physiological or

behavioral characteristics

Han Vinck, Univ. Duisburg‐Essen

Page 10: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

biometrics• Authentication through

– learned skils:- such as recognition of speech, - dynamics of signature, - keystroke patterns

– Natural properties such as - Fingerprints- Iris pattern- Retina, hand geometry- Facial scan- etc.

http://www.youtube.com/watch?v=BufSl0VurHo&feature=related

Han Vinck, Univ. Duisburg‐Essen

Page 11: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Hand Geometry

Popular form of biometric

Measures shape of hand– Width of hand, fingers– Length of fingers, etc.

Human hands not unique

Hand geometry sufficient for many situations

Suitable for authentication

Han Vinck, Univ. Duisburg‐Essen

Page 12: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Iris Patterns

• Iris pattern development is “chaotic”• Little or no genetic influence• Different even for identical twins• Pattern is stable through lifetime

Han Vinck, Univ. Duisburg‐Essen

Page 13: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

biometrics

• Why?- it is a key connected to a person: are always with you

- universal- easy to collect data for enrollment- no memorization of voice, face, eyes, or fingerprints- are personal: Cannot be given to somebody else

• Problems?- sensors needed without medical risk- reference values may be not actual (ageing)- failure rate rather high- passwords are exact, biometrics only approximately

• system requirements: accuracy, speed, complexity

• user requirements: harmless, accepted, robust to attacks

Han Vinck, Univ. Duisburg‐Essen

Page 14: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

biometrics

• IDENTIFICATION: compare one to many– Who goes there?

• AUTHENTICATION: compare one to one– Is that really you?

Han Vinck, Univ. Duisburg‐Essen

Page 15: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

15

Identification

• Search a sample against a database of templates.• Typical application: identifying fingerprints

?

Page 16: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

16

Authentication

• Compare a sample against a single stored template• Typical application: voice lock

?

Page 17: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Biometric Fingerprint

• Extracted minutia are compared with user’s minutia stored in a database

• Is it a statistical match?

Han Vinck, Univ. Duisburg‐Essen

Page 18: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

18

Matching problem

For example: rotation and translation

Page 19: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

19

classification

Page 20: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

20

Minutiae (Pavel Margolin)

Page 21: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

21

Minutiae Example Minutiae Example

ridge ending bridge

bifurcation double bifurcation

dot trifurcation

island (short ridge) opposed bifurcations

lake (enclosure) ridge crossing

hook (spur) opposed bifurcation/ridge ending

Page 22: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

22

2 examples of Minutiae

Figure taken from Nandakumar, et al. http://www.cse.msu.edu/~nandakum/FingerprintMatching.ppt

Minutiae can be represented by the location (x,y) and the ridge direction

Page 23: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck 23

Problem: biometrics do change

Example 1

Example 2

Page 24: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck 24

Basic problem: aging introduces (permanent) errors

process Data Baseb c

b‘

verification

is b‘ a noisy version of b Y/N

problem: how to do the processing and verification

enrollment

b‘

Security ?

Han Vinck, Univ. Duisburg‐Essen

Page 25: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Biometrics, performance

Performance measures:– 1. False acceptance rate (FAR) (imposter accepted)– 2. False rejection rate (FRR) ( legitimate match denied)

100%

Quality of recognition

1 2

Han Vinck, Univ. Duisburg‐Essen

FAR/FRR

Page 26: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

User identity check: example

C = e( iris, Si )

C

Secret key Si

cardpublic key Pi

Check card owner:

d(C, Pi) = iris ?

Han Vinck, Univ. Duisburg‐Essen

Page 27: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

27

Template Size

Biometric Approx Template Size

Voice 70k – 80k

Face 84 bytes – 2k

Signature 500 bytes – 1000 bytes

Fingerprint 256 bytes – 1.2k

Hand Geometry 9 bytes

Iris 256 bytes – 512 bytes

Retina 96 bytes

Page 28: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

The connection with information theory

• For perfect secrecy: the number of messages #(M) = #(M|C)• System leakage: #(M)/#(M|C)   1

han Vinck April 2013 28

Page 29: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Starting situation: intuitive analysis

For perfect secrecy: #(M) = #(M|C) = #(K|C) ≤ #(K) 

C and M connected via unique key. Thus, M and C determine K

han Vinck April 2013 29

Page 30: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Noisy key

han Vinck April 2013 30

Page 31: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Noisy key

han Vinck April 2013 31

Let every key gives rise to a set of keys k‘|k =>  we assume the cardinality #(k‘|k) is fixed

Then,        #(k|c) x #(k‘|k) ≤ #(k‘)  .  

Necessary condition, because if not true, there exists a key k‘  that originates from 2 or moredifferent keys and thus incorrect decryption appears

#(k‘) = number of noisy keys#(k‘|k) = number of noisy keys given a key#(k|c) = number of keys given a cipher

Page 32: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

han Vinck April 2013 32

Noisy key

Let #(k‘|k) be the number of noisy keys given a particular key (the same for all keys) and the average number of keys given a noisy key is denoted as av( #(k|k‘)) 

Then #(k) · #(k‘|k) = #(k‘) · av(#(k|k‘))  =>  the # of outgoing arrows = # incoming arrows

and thus for perfect secrecy:  #(M) = #(M|c) = #(k|c)  ≤ #(k‘) / #(k‘|k)  = #(k) /av(#(k|k‘))

Conclusion:  The noisy key gives a reduction in the maximum number of messages

··· ···#k

#k‘

#(k‘|k)#(k|k‘)

Page 33: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck 33

idea: Use redundancy to correct errors in the Bio

Properties of a linear code: length n, k information digitsodd minimum distance dmin

Property: let e1HT = s1 and e2HT = s2; e1 ≠ e2

then s1 ≠ s2 for |e1| and |e2| < dmin /2 because…

Gk

n

HT

n

n-k

= 0

property: rG = ccHT= 0

Ik

In-k

P P

Page 34: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

34

Maximum Aposteriori Probability (MAP) receiver(minimum error probability)

Given a channel 

bs

Attacker of DB:  for every s, guess  a particular bi

‐ the best guess is the bi for which P(bi stored as s|s) is maximum

rule Bayesb)P(b)|P(smaxs)|P(bmaxP(s)(correct)P

s)|P(bmaxs)|P(correct

bsbs

b

HT Data base

Page 35: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck

performance

).bP(max(correct)PB

guess

• Guess b|s

• Guess b

).bP(max2 )s|bP(max)sP()s|(correctPB

knBbSs

guess

Minimum error propability guess (MAP)

We pay a price by using redundancy !

Page 36: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck

construct b from a noisy version b‘ and syndrome s

HTb

be = b‘ bHT  b‘HT

=e HT

verification

n n-k

enrollment

s = bHT

bHT

HTb‘HT

Security: guess  b|s

n n-kb‘e = b

Data Base

Conclusion: 

For  k  small:   good reconstruction, bad security

For  k  large:  bad reconstruction, good security

Page 37: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck 37

Example: BCH codes (bits)test for a valid syndrome

For binary BCH codes:  n = 256,  k = 224 bits,  dmin = 7  

• False Rejection Rate = P(#errors ≥ 4) (100p)4;too many differences

• False Acceptance Rate < 2‐8

random vector insided decoding region• Security: 2‐224

Page 38: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

6/17/2013 A.J. Han Vinck 38

As a picture

2n 2n

Determines FAR

Determines FRR

Number of codewords and length stays the same

Page 39: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

39

It is time for an application

b

eb‘

data

F(b)bkey

Ek(data)

HT

HT

F(b)key

Dk(data)

DB DB

decodeb‘HT

bHT

eHT

data

enrollment

entrance

Page 40: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

40

Another application

b

eb‘

F(b)bkey

HT

HT

F(b)key

DB

decodeb‘HT

bHT

eHT

enrollment

entrance

Equal ?

DB

Y/N

Page 41: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

41

Challenge response

server card

Enrollment: b + c = s; derive key K(c)

K(c)

e(m,K(c))

s = b+c

b‘+s => c

K(c) <= c

b‘

challenge m

e(m,K(c))compare

Page 42: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Han Vinck 42

Another scheme: Enrollment

Fingerprint b

c b

Generate random codeword

c(r)

Condition: given  c  b  and hash(r) it is hard  to estimate b or c(r)

store  c  bhash(r) 

data base: DB

hash(r)

Page 43: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

43

Idea: Juels-Wattenberg

2k  Codewords c‐ choose random r‐ store s : s = c  b  

c(r)

b

Enrollment: b = fingerprint

‐ decode c from s  b‘‐ calculate    s  c = b

c

b‘

s

Secure sketch: input b‘

bs

Page 44: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Han Vinck 44r

authentication

b‘ = b e decode

c b

hash(r)

c  e

c  b 

is b‘ a noisy version of b ?

FRR: valid b’ rejected; FAR: invalid b’ accepted;

data base

r

hash(r)hash(r)

Page 45: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Han Vinck 45

attacker

b‘ = b e decode

c b

hash(r)

c  e

c  b 

is b‘ a noisy version of b ?

data base

r

hash(r)hash(r)

Guess

r or b

find b from   s  c(r) = b

or

find r from      s  b  c(r)

Page 46: Shannon Information theory, coding biometrics - uni  · PDF fileShannon Information theory, coding and biometrics Han Vinck June 2013

Han Vinck 46

Improved legal detector

b‘ = b e decode

c b

hash(r)

c  e

c  b 

is b‘ a noisy version of b ?

FRR: valid b’ rejected; FAR: invalid b’ accepted;

data base

r

hash(r)hash(r)