Paper #32 - University of Michigan

Download Report

Transcript Paper #32 - University of Michigan

Reliable and Efficient PUFBased Key Generation Using
Pattern Matching
Srini Devadas and Zdenek Paral (MIT), HOST 2011
Thomas Chen, Anup Jadhav
UNIVERSITY OF MICHIGAN
1
Outline
 Motivation & Security Challenges
 Problem & Previous Approaches
 Physical Unclonable Functions (PUF)
 PUF-based Key Generation Using Pattern Matching
 Results
 Conclusion
 References
UNIVERSITY OF MICHIGAN
2
Motivation


Secure computing
 Devices are becoming:
 Distributed
 Unsupervised
 Physically exposed
Prone to physical tampering
 Need protection at the hardware level
UNIVERSITY OF MICHIGAN
3
Problem & Previous Approaches


Making a device tamper proof is difficult and expensive
 IBM 4758 cryptographic coprocessor ($3000)
 Battery powered sensors
 Anti-tamper package
Attackers can
 Extract keys from NVM while processor is off
 Depackage,etch, and polish down to poly to read off fuse bits
ROM
UNIVERSITY OF MICHIGAN
Fuses
Flash
Anti-fuses
4
Physical Unclonable Function (PUF)



Silicon “fingerprint”
 Unique per instance
 Reproducible/repeatable
Challenge
Variability
Sensitive Circuit
Usefulness
 Random key generation
 Low-cost key “storage”
 Tamper resistant
Extract keys from complex physical system
C
R1
UNIVERSITY OF MICHIGAN
Response
!=
R2
!=
R3
5
PUF-based Key Generation


Use PUF to generate fixed size of secret bits
 Can use as symmetric key bits or seed for asymmetric key
But…
 Some bits may be “noisy”- need error correction
 Need to use helper data/syndrome to correct
Response
PUF
Key
Key Generator
Path-swapping switch
Arbiter
…
D Q
C
C0
UNIVERSITY OF MICHIGAN
C1
C2
Cn
6
Reproducibility



Intra-distance metric (use fractional Hamming distance)
 Ideally HDintra=0
Mean intra-distance varies with voltage, temperature
 Can reduce unstable bits by:
 pre/post selection, temporal majority voting, compensation, etc.
Typically >5%, <20% over region of operation (before corr.)
PUF A
2 bits -> 6.25%
Stored PUF A response
1
0
1
1
0
1
1
0
1
0
1
1
0
1
1
0
1
0
1
1
0
1
1
0
0
0
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
0
1
0
1
1
1
1
0
0
1
0
1
1
1
1
0
0
1
0
1
0
1
1
0
0
1
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
0
UNIVERSITY OF MICHIGAN
7
Uniqueness



Inter-distance metric
Use fractional Hamming distance
Ideally, HDinter of 50% -> no correlation between chips
15 bits ->
46.875%
PUF A
PUF B
1
0
1
1
0
1
1
0
1
0
1
1
0
1
1
0
1
1
1
0
1
1
0
0
0
0
1
0
1
0
0
0
0
0
1
0
1
0
0
0
0
1
1
0
1
0
1
1
1
1
1
1
0
0
1
0
1
1
1
1
0
0
1
0
1
1
0
0
0
1
1
1
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
0
0
1
1
0
1
0
1
0
UNIVERSITY OF MICHIGAN
8
Error Correction & Entropy



Key must be 100% reproducible (HDintra=0)
 Often use BCH codes
Increase reproducibility
 But helper data leaks information, reduces unpredictability
Need bigger response then compress
 Extracted key length <= Total accumulated entropy
1
0
1
1
0
1
1
0
1
0
0
1
0
1
0
1
0
1
0
1
0
1
1
0
0
1
0
0
0
1
0
1
1
1
0
0
0
0
1
0
1
1
0
1
1
0
0
0
1
0
1
0
0
0
1
1
1
1
0
0
1
1
0
1
1
1
0
0
Correction
1 0 0 1 0 1 1 0
Helper
Data
UNIVERSITY OF MICHIGAN
9
Pattern Matching Key
Generator(PMKG) Architecture
UNIVERSITY OF MICHIGAN
10
Key Generation Scheme



Major Difference
 Instead of making challenge public, make response public
Provisioning and Regeneration
 Happens over a number of rounds
Regeneration
 Involves matching the patterns provisioned to recreate key
UNIVERSITY OF MICHIGAN
11
Pattern Matching


Provisioning
 In each round select an index I
 Starting at that index store a pattern of length W
Regeneration
 Match against known patterns to obtain index
Index=sub-key
X X 7
PUF generated
bit stream:
1
1110100110
10 bits
UNIVERSITY OF MICHIGAN
0
Pattern Storage
011
000
101
12
Key Generator Architecture
UNIVERSITY OF MICHIGAN
13
Security



Public helper data does not leak information about key
 Index based key
Key mixer
 Post process key bits
LFSR forking
 Fork the next round of challenge generator based on key index
 Fixed number of comparisons against helper patterns
UNIVERSITY OF MICHIGAN
14
Key Generation Parameters
UNIVERSITY OF MICHIGAN
15
Intra-distance and Inter-distance
UNIVERSITY OF MICHIGAN
16
Matching threshold and FAR,FRR



Tolerance match detector
 Causes false positives and false negatives
 Requires appropriate matching threshold
 Requires sufficiently wide pattern
Otherwise use error correction scheme
For small pattern, additional logic required to prevent collision
UNIVERSITY OF MICHIGAN
17
False Negatives and False Positives
UNIVERSITY OF MICHIGAN
18
Trials Required For Key Regeneration
UNIVERSITY OF MICHIGAN
19
Conclusion


Main contribution
 Expose PUF response, keep challenge hidden
 Key regeneration via pattern matching
 Key bits are not directly stored
 Subkeys are indices of PUF responses
Avoid heavy error correction logic
 But need to choose good threshold and pattern width
 False positives, false negatives
UNIVERSITY OF MICHIGAN
20
Questions & Discussion Points



Is there enough process variation to identify between ICs?
Is setting a threshold a good enough approach?
Is the arbiter PUF a good choice?
UNIVERSITY OF MICHIGAN
21
References

[1] Paral, Z., and Srinivas Devadas. "Reliable and efficient
PUF-based key generation using pattern
matching." Hardware-Oriented Security and Trust (HOST),
2011 IEEE International Symposium on. IEEE, 2011.
UNIVERSITY OF MICHIGAN
22