Extracting Robust Keys from NAND Flash Physical Unclonable Functions Shijie Jia, Luning Xia, Zhan Wang, Jingqiang Lin, Guozhu Zhang and Yafei Ji Institute.

Slides:



Advertisements
Similar presentations
Trusted Design In FPGAs
Advertisements

Flash storage memory and Design Trade offs for SSD performance
Entropy Extraction in Metastability-based TRNG
Thank you for your introduction.
Under Embargo until December 10, 2007 Introducing Cypress West Bridge™Astoria TM.
0 秘 Type of NAND FLASH Discuss the Differences between Flash NAND Technologies: SLC :Single Level Chip MLC: Multi Level Chip TLC: Tri Level Chip Discuss:
Flash Memory for Ubiquitous Hardware Security Functions
Physical Unclonable Functions and Applications
Hardware Cryptographic Coprocessor Peter R. Wihl Security in Software.
1 U NIVERSITY OF M ICHIGAN Reliable and Efficient PUF- Based Key Generation Using Pattern Matching Srini Devadas and Zdenek Paral (MIT), HOST 2011 Thomas.
TM This document is strictly confidential and proprietary of SMIC. It must not be copied or used for any purpose other than for reference only, and SMIC.
The Performance of Polar Codes for Multi-level Flash Memories
Daniel E. Holcomb, Wayne P. Burleson and Kevin Fu
 Secure Authentication Using Biometric Data Karen Cui.
1 Eitan Yaakobi, Laura Grupp Steven Swanson, Paul H. Siegel, and Jack K. Wolf Flash Memory Summit, August 2010 University of California San Diego Efficient.
Avishai Wool lecture Introduction to Systems Programming Lecture 8.3 Non-volatile Memory Flash.
1 Error Correction Coding for Flash Memories Eitan Yaakobi, Jing Ma, Adrian Caulfield, Laura Grupp Steven Swanson, Paul H. Siegel, Jack K. Wolf Flash Memory.
Coding for Flash Memories
Yinglei Wang, Wing-kei Yu, Sarah Q. Xu, Edwin Kan, and G. Edward Suh Cornell University Tuan Tran.
3/20/2013 Threshold Voltage Distribution in MLC NAND Flash: Characterization, Analysis, and Modeling Yu Cai 1, Erich F. Haratsch 2, Onur Mutlu 1, and Ken.
Yu Cai1, Erich F. Haratsch2 , Onur Mutlu1 and Ken Mai1
Authentication Approaches over Internet Jia Li
Thank you for your introduction.
Program Interference in MLC NAND Flash Memory: Characterization, Modeling, and Mitigation Yu Cai 1 Onur Mutlu 1 Erich F. Haratsch 2 Ken Mai 1 1 Carnegie.
A History of WEP The Ups and Downs of Wireless Security.
Doc.: r0 Submission September 17, 2012 René Struik (Intrinsic-Id)Slide 1 Secure Key Storage and True Random Number Generation Date:
Bit Error Probability Evaluation of RO PUFs Qinglong Zhang, Zongbin Liu, Cunqing Ma and Jiwu Jing Institute of Information Engineering, CAS, Beijing, China.
/38 Lifetime Management of Flash-Based SSDs Using Recovery-Aware Dynamic Throttling Sungjin Lee, Taejin Kim, Kyungho Kim, and Jihong Kim Seoul.
National Institute of Science & Technology Technical Seminar Presentation-2004 Presented By: Arjun Sabat [EE ] Flash Memory By Arjun Sabat Roll.
IVEC: Off-Chip Memory Integrity Protection for Both Security and Reliability Ruirui Huang, G. Edward Suh Cornell University.
Speaker: 吳晋賢 (Chin-Hsien Wu) Embedded Computing and Applications Lab Department of Electronic Engineering National Taiwan University of Science and Technology,
1 UCR Hardware Security Primitives with focus on PUFs Slide credit: Srini Devedas and others.
University of Hawaii, College of Engineering September 2013 COCONETS Optimal Detectors for Flash Memory Channels with Intercell Interference Alek Kavčić.
Post-Manufacturing ECC Customization Based on Orthogonal Latin Square Codes and Its Application to Ultra-Low Power Caches Rudrajit Datta and Nur A. Touba.
2010 IEEE ICECS - Athens, Greece, December1 Using Flash memories as SIMO channels for extending the lifetime of Solid-State Drives Maria Varsamou.
Lecture 16: Storage and I/O EEN 312: Processors: Hardware, Software, and Interfacing Department of Electrical and Computer Engineering Spring 2014, Dr.
I/O Computer Organization II 1 Introduction I/O devices can be characterized by – Behavior: input, output, storage – Partner: human or machine – Data rate:
Embedded System Lab. Daeyeon Son Neighbor-Cell Assisted Error Correction for MLC NAND Flash Memories Yu Cai 1, Gulay Yalcin 2, Onur Mutlu 1, Erich F. Haratsch.
1 Amit Berman Reliable Architecture for Flash Memory Joint work with Uri C. Weiser, Acknowledgement: thanks to Idit Keidar Department of Electrical Engineering,
CHES Viktor Fischer Université Jean Monnet, Saint-Etienne, France Miloš Drutarovský Technical University of Košice,
Extending the Lifetime of NAND Flash Memory by Salvaging Bad Blocks Chundong Wang and Weng-Fai Wong DATE’12.
Implicit-Storing and Redundant- Encoding-of-Attribute Information in Error-Correction-Codes Yiannakis Sazeides 1, Emre Ozer 2, Danny Kershaw 3, Panagiota.
1 The XCBC-XOR, XECB-XOR and XECB-MAC Modes Virgil D. GligorPompiliu Donescu VDG Inc 6009 Brookside Drive Chevy Chase, Maryland {gligor,
Neighbor-Cell Assisted Error Correction for MLC NAND Flash Memories Yu Cai 1 Gulay Yalcin 2 Onur Mutlu 1 Erich F. Haratsch 3 Adrian Cristal 2 Osman S.
CLOUD BASED STORAGE Amy. Cloud Based Storage Cloud based storage is “the storage of data online in the cloud”
Carnegie Mellon University, *Seagate Technology
7/6/99 MITE1 Fully Parallel Learning Neural Network Chip for Real-time Control Students: (Dr. Jin Liu), Borte Terlemez Advisor: Dr. Martin Brooke.
Proposal for an Open Source Flash Failure Analysis Platform (FLAP) By Michael Tomer, Cory Shirts, SzeHsiang Harper, Jake Johns
Katie Hintze.  A non-volatile storage device that stores digitally encoded data  Introduced in 1956  Long-term persistent storage.
Data Retention in MLC NAND FLASH Memory: Characterization, Optimization, and Recovery. 서동화
When is Key Derivation from Noisy Sources Possible?
Design of Physically Unclonable Functions Using FPGAs
Eitan Yaakobi, Laura Grupp Steven Swanson, Paul H. Siegel, and Jack K. Wolf Flash Memory Summit, August 2011 University of California San Diego Error-Correcting.
Carnegie Mellon University, *Seagate Technology
Taeho Kgil, Trevor Mudge Advanced Computer Architecture Laboratory The University of Michigan Ann Arbor, USA CASES’06.
Yixin Luo, Saugata Ghose, Yu Cai, Erich F. Haratsch, Onur Mutlu Carnegie Mellon University, Seagate Technology Online Flash Channel Modeling and Its Applications.
COS 518: Advanced Computer Systems Lecture 8 Michael Freedman
What you should know about Flash Storage
SDM5A-M 7P/180D LP2(H).
On-Chip ECC for Low-Power SRAM Design
Aya Fukami, Saugata Ghose, Yixin Luo, Yu Cai, Onur Mutlu
Neighbor-cell Assisted Error Correction for MLC NAND Flash Memories
Introduction I/O devices can be characterized by I/O bus connections
Vulnerabilities in MLC NAND Flash Memory Programming: Experimental Analysis, Exploits, and Mitigation Techniques Yu Cai, Saugata Ghose, Yixin Luo, Ken.
reFresh SSDs: Enabling High Endurance, Low Cost Flash in Datacenters
Jeremie S. Kim Minesh Patel Hasan Hassan Onur Mutlu
COS 518: Advanced Computer Systems Lecture 8 Michael Freedman
Vulnerabilities in MLC NAND Flash Memory Programming: Experimental Analysis, Exploits, and Mitigation Techniques HPCA Session 3A – Monday, 3:15 pm,
COS 518: Advanced Computer Systems Lecture 9 Michael Freedman
Yu Cai, Yixin Luo, Erich F. Haratsch, Ken Mai, Onur Mutlu
Presentation transcript:

Extracting Robust Keys from NAND Flash Physical Unclonable Functions Shijie Jia, Luning Xia, Zhan Wang, Jingqiang Lin, Guozhu Zhang and Yafei Ji Institute of Information Engineering, CAS, Beijing, China ISC th September,2015 1

Outline  Motivation  NAND Flash memory basics  Robust key generation  Experiments and Evaluation  Conclusion 2

Outline  Motivation  NAND Flash memory basics  Robust key generation  Experiments and Evaluation  Conclusion 3

 NAND Flash memory is ubiquitous  Smart phones, SD cards, USB memory stick, etc.  The keys used by electronic devices need be protected  contain many confidential information  many applications need to identify and authenticate users Motivation 4

Physically uncloable function (PUF)  PUFs are hardware primitives which produce unpredictable and instantiation dependent outcomes. Noises exist in the PUFs  PUF responses are generally not perfectly reproducible.  In general, fuzzy extractors (ECC and hash function )are used to ensure the reliability of the responses.  As the error rate increases, the cost of fuzzy extractor is rather high for devices with limited hardware resources. 5

Motivation Physically uncloable function (PUF)  PUFs are hardware primitives which produce unpredictable and instantiation dependent outcomes. Noises exist in the PUFs  PUF responses are generally not perfectly reproducible.  In general, fuzzy extractors (ECC and hash function )are used to ensure the reliability of the responses.  As the error rate increases, the cost of fuzzy extractor is rather high for devices with limited hardware resources. 6

 We focus on  NAND Flash Physical Unclonable Function (NFPUF)  Error reduction techniques  First, we present three methods to extract raw NFPUF numbers.  partial erasure  partial programming  program disturbance  Second, we introduce two methods to select the cells.  bit-map  position-map Motivation 7

Outline  Motivation  NAND Flash memory basics  Robust key generation  Experiments and Evaluation  Conclusion 8

NAND Flash memory basics  Uncertain States of Cells  on account of variations in manufacturing processes, the threshold voltages vary from cell to cell.  When the threshold voltage is not shifted sufficiently from the programmed state to the erased state, and vice versa, the cell will be in an uncertain state. 9

NAND Flash memory basics  Uncertain States of Cells  on account of variations in manufacturing processes, the threshold voltages vary from cell to cell.  When the threshold voltage is not shifted sufficiently from the programmed state to the erased state, and vice versa, the cell will be in an uncertain state. 10

NAND Flash memory basics  Disturbance Related to Array Organization  During the programming operations,there exists noises between the adjacent cells.  After many repeating operations, it makes the adjacent cells flip 11

NAND Flash memory basics  Disturbance Related to Array Organization  During the programming operations,there exists noises between the adjacent cells.  After many repeating operations, it makes the adjacent cells flip 12

Outline  Motivation  NAND Flash memory basics  Robust key generation  Experiments and Evaluation  Conclusion 13

 Partial Erasure  Erase a block  program a page to “0”  perform fixed number (PENum) of partial erasure operations (Te) to the selected page  record the number of partial erasure operations that the selected cells need to flip 14 Robust key generation ---- Extracting Raw NFPUF Numbers Raw NFPUF Numbers:

 Partial Erasure  Erase a block  program a page to “0”  perform fixed number (PENum) of partial erasure operations (Te) to the selected page  record the number of partial erasure operations that the selected cells need to flip 15 Robust key generation ---- Extracting Raw NFPUF Numbers Raw NFPUF Numbers:

 Partial Programming  Erase a block  perform fixed number (PPNum) of partial programming operations (Tp) to the selected page  record the number of partial programming operations that the selected cells need to flip 16 Robust key generation ---- Extracting Raw NFPUF Numbers Raw NFPUF Numbers:

 Partial Programming  Erase a block  perform fixed number (PPNum) of partial programming operations (Tp) to the selected page  record the number of partial programming operations that the selected cells need to flip 17 Robust key generation ---- Extracting Raw NFPUF Numbers Raw NFPUF Numbers:

 Program Disturbance  Erase a block  perform fixed number (PDNum) of programming operations to the selected page  record the number of programming operations that the selected cells in its physically adjacent page need to flip 18 Robust key generation ---- Extracting Raw NFPUF Numbers Raw NFPUF Numbers:

 Program Disturbance  Erase a block  perform fixed number (PDNum) of programming operations to the selected page  record the number of programming operations that the selected cells in its physically adjacent page need to flip 19 Robust key generation ---- Extracting Raw NFPUF Numbers Raw NFPUF Numbers:

20 Robust key generation ---- Extracting Robust Keys from Raw NFPUF Numbers Fluctuations of raw NFPUF numbers from four cells of a MLC type NAND Flash memory chip

21 Robust key generation ---- Extracting Robust Keys from Raw NFPUF Numbers

22 Robust key generation ---- Extracting Robust Keys from Raw NFPUF Numbers

23 Robust key generation ---- Extracting Robust Keys from Raw NFPUF Numbers

Outline  Motivation  NAND Flash memory basics  Robust key generation  Experiments and Evaluation  Conclusion 24

25 Experiments  Setup  Platform: a Flash test board with an ARM Cortex-M3 controller  Tested NAND Flash memory chips

26 Evaluation  The security and reliability of the keys  speed (for performance)  reproducibility (for reliability)  uniqueness (for security)  randomness (for high-entropy)

27 Evaluation ——speed The average throughput of the raw NFPUF numbers (Kbits/second) Parameters setting of the raw NFPUF numbers extraction methods

28 Evaluation ——speed The average throughput of the raw NFPUF numbers (Kbits/second) Parameters setting of the raw NFPUF numbers extraction methods

29 Evaluation ——Reproducibility ( Intra-chip variations )

30 Evaluation —— Uniqueness ( Inter-chip variations ) The inter-chip variations of the three proposed extraction methods

31 Evaluation —— Randomness The percentage of bit “1” with temperature changes

Outline  Motivation  NAND Flash memory basics  Robust key generation  Experiments and Evaluation  Conclusion 32

33  First, we proposed three methods to extract raw NFPUF numbers from NAND Flash memory chips.  Second, we utilized the bit-map or position-map method to select the cells with the most reliable relationship of the size between raw NFPUF numbers.  At last, we evaluated the primary characteristics of the key under various temperature and aging conditions.  Our key generator eschews the costly ECC overheads to generate robust and error-free keys.

34