New Directions in Lightweight Cryptographic Primitives for RFID Applications

Similar documents
Lightweight Cryptography From an Engineers Perspective

Table of Contents. Bibliografische Informationen digitalisiert durch

Computer Security: Principles and Practice

Lightweight Cryptography. Lappeenranta University of Technology

ECC is Ready for RFID A Proof in Silicon

A PPENDIX H RITERIA FOR AES E VALUATION C RITERIA FOR

Cryptographic Algorithms and Key Size Issues. Çetin Kaya Koç Oregon State University, Professor

The Advanced Encryption Standard: Four Years On

Cryptanalysis with a cost-optimized FPGA cluster

The Advanced Encryption Standard (AES)

ECE 842 Report Implementation of Elliptic Curve Cryptography

Cryptography and Network Security

A New Efficient Digital Signature Scheme Algorithm based on Block cipher

Cryptography and Network Security Chapter 12

CS 758: Cryptography / Network Security

Modern Block Cipher Standards (AES) Debdeep Mukhopadhyay

A PERFORMANCE EVALUATION OF COMMON ENCRYPTION TECHNIQUES WITH SECURE WATERMARK SYSTEM (SWS)

Authentication requirement Authentication function MAC Hash function Security of

EXAM questions for the course TTM Information Security May Part 1

IJESRT. [Padama, 2(5): May, 2013] ISSN:

Overview of Cryptographic Tools for Data Security. Murat Kantarcioglu

CRYPTOGRAPHY AND NETWORK SECURITY

CIS 6930 Emerging Topics in Network Security. Topic 2. Network Security Primitives

Implementation of Full -Parallelism AES Encryption and Decryption

Side Channel Analysis and Embedded Systems Impact and Countermeasures

lundi 1 octobre 2012 In a set of N elements, by picking at random N elements, we have with high probability a collision two elements are equal

A Secure Software Implementation of Nonlinear Advanced Encryption Standard

Cryptography and Network Security

Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2010

Testing Framework for estream Profile II Candidates

Cryptography and Network Security Block Cipher

CIS433/533 - Computer and Network Security Cryptography

Cryptography and Network Security Chapter 3

Block encryption. CS-4920: Lecture 7 Secret key cryptography. Determining the plaintext ciphertext mapping. CS4920-Lecture 7 4/1/2015

Lecture Note 8 ATTACKS ON CRYPTOSYSTEMS I. Sourav Mukhopadhyay

IT Networks & Security CERT Luncheon Series: Cryptography

Design and Implementation of Asymmetric Cryptography Using AES Algorithm

CrypTool Claudia Eckert / Thorsten Clausius Bernd Esslinger / Jörg Schneider / Henrik Koy

Pervasive Computing und. Informationssicherheit

CSCE 465 Computer & Network Security

FPGA BASED HARDWARE KEY FOR TEMPORAL ENCRYPTION

Public Key Cryptography Overview

Cryptography Lecture 8. Digital signatures, hash functions

{(i,j) 1 < i,j < n} pairs, X and X i, such that X and X i differ. exclusive-or sums. ( ) ( i ) V = f x f x

2. Cryptography 2.4 Digital Signatures

Chapter 11 Security+ Guide to Network Security Fundamentals, Third Edition Basic Cryptography

Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur

Network Security. Chapter 3 Symmetric Cryptography. Symmetric Encryption. Modes of Encryption. Symmetric Block Ciphers - Modes of Encryption ECB (1)

CRYPTOGRAPHY IN NETWORK SECURITY

Cryptography and Network Security Prof. D. Mukhopadhyay Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Secret File Sharing Techniques using AES algorithm. C. Navya Latha Garima Agarwal Anila Kumar GVN

EXAM questions for the course TTM Information Security June Part 1

The Advanced Encryption Standard (AES)

Network Security. Security Attacks. Normal flow: Interruption: 孫 宏 民 Phone: 國 立 清 華 大 學 資 訊 工 程 系 資 訊 安 全 實 驗 室

Final Exam. IT 4823 Information Security Administration. Rescheduling Final Exams. Kerberos. Idea. Ticket

Keywords Web Service, security, DES, cryptography.

Cryptography and Network Security: Summary

How To Encrypt With A 64 Bit Block Cipher

Elements of Applied Cryptography Public key encryption

A Comparative Study Of Two Symmetric Encryption Algorithms Across Different Platforms.

Lecture 9: Application of Cryptography

Enhancing Advanced Encryption Standard S-Box Generation Based on Round Key

IMPLEMENTATION AND PERFORMANCE ANALYSIS OF ELLIPTIC CURVE DIGITAL SIGNATURE ALGORITHM

Cryptographic mechanisms

JTC 1/SC 27Security Techniques - Översikt arbetsgrupper och standarder

Cryptography and Network Security Chapter 10

Triathlon of Lightweight Block Ciphers for the Internet of Things

A Study of New Trends in Blowfish Algorithm

FIPS Non- Proprietary Security Policy. McAfee SIEM Cryptographic Module, Version 1.0

Developing and Investigation of a New Technique Combining Message Authentication and Encryption

7! Cryptographic Techniques! A Brief Introduction

CSCE 465 Computer & Network Security

Certicom Security for Government Suppliers developing client-side products to meet the US Government FIPS security requirement

Software Implementation of Gong-Harn Public-key Cryptosystem and Analysis

Cryptography and Network Security, PART IV: Reviews, Patches, and Theory 1 / 53

Evaluating The Performance of Symmetric Encryption Algorithms

Design and Verification of Area-Optimized AES Based on FPGA Using Verilog HDL

Outline. Computer Science 418. Digital Signatures: Observations. Digital Signatures: Definition. Definition 1 (Digital signature) Digital Signatures

Hardware Implementation of AES Encryption and Decryption System Based on FPGA

SOPC BASED WIRELESS REMOTE PATIENT MONITORING USING ULTRA LIGHTWEIGHT CRYPTOGRAPHY

Implementing Network Security Protocols

Security and Authentication Primer

Overview of Public-Key Cryptography

Hash Function JH and the NIST SHA3 Hash Competition

Public Key (asymmetric) Cryptography

CycurHSM An Automotive-qualified Software Stack for Hardware Security Modules

Outline. CSc 466/566. Computer Security. 8 : Cryptography Digital Signatures. Digital Signatures. Digital Signatures... Christian Collberg

Study of algorithms for factoring integers and computing discrete logarithms

Chapter 8. Network Security

CRYPTOG NETWORK SECURITY

Public Key Cryptography. Performance Comparison and Benchmarking

Fast Hash-Based Signatures on Constrained Devices

Block Ciphers that are Easier to Mask: How Far Can we Go?

MAC. SKE in Practice. Lecture 5

High Speed Software Driven AES Algorithm on IC Smartcards

A NOVEL STRATEGY TO PROVIDE SECURE CHANNEL OVER WIRELESS TO WIRE COMMUNICATION

AESvisual: A Visualization Tool for the AES Cipher

Network Security. Abusayeed Saifullah. CS 5600 Computer Networks. These slides are adapted from Kurose and Ross 8-1

Transcription:

New Directions in Lightweight Cryptographic Primitives for RFID Applications RFID CUSP Workshop January 23-24, 2008 John Hopkins University Christof Paar University of Bochum and escrypt Inc. Embedded Security www.crypto.rub.de

Acknowledgements Joint work with Sandeep Kumar Lars Knudsen Gregor Leander Axel Poschmann Matt Robshaw Kai Schramm

Contents 1. Some general thoughts about cheap crypto 2. Lightweight Block Ciphers 3. Lightweight Asymmetric Cryptography 4. Lightweight Hash Functions

Why Do We Need Cheap Crypto? 1. There is no other choice (aka RFID) We need security with less than 2000 gates Sanjay Sarma, AUTO-ID Labs, CHES 2002 2. There is another choice, but we like a long battery life Small ciphers improve usability of mobile devices 3. There is another choice, but we like to save money A cipher X that saves $0.01 over cipher Y can be very attractive in many products (esp. in high volume applications!) Important for the myriad pervasive computing devices

Approaches to Lighweight Crypto 1. Design highly efficient implementation of established cipher, e.g., AES, ECC Ex: [Feldhofer et al., CHES 04] 2. Choose established cipher with short parameters (works mainly for asymmetric schemes) Ex: SECG standards, ECC with 112bit etc. 3. Design new lightweight ciphers Ex: PRESENT, estream Note: Option 3 is promising but daring.

New Lightweight Ciphers vs. Standardized Ciphers Most standardized ciphers (AES, 3DES, ECC, DSA, ) are by definition universal ciphers. Universal ciphers must provide very high security for all possible applications, costs are secondary Domain-specific ciphers (here: lightweight) can be better match for certain applications BIG question: security! Lightweight ciphers exploit the trust-performance trade-off Read: If possible, use AES if you want to trade trust-in-cipher for costs, use PRESENT or such.

The cryptographic toolkit Cryptographic Algorithms Symmetric Public-key Hash functions

Contents 1. Some general thoughts about cheap crypto 2. Lightweight Block Ciphers 3. Lightweight Asymmetric Cryptography 4. Lightweight Hash Functions

Lightweight Cryptography We need security with less than 2000 gates Sanjay Sarma, AUTO-ID Labs, CHES 2002 $3 trillions annually due to product piracy* (> US budget 07) *Source: www.bascap.com Authentication & identification problem: can both be fixed with cryptography How cheap can we make symmetric ciphers?

Strong Identification (w/ symmetric crypto) e k () r e k (r) = y e k () 1. random challenge r 2. encrypted response y 3. verification e k (r) = y y == y Challenge: Encryption function e() at extremely low cost almost all symmetric ciphers optimized with SW in mind exception: DES

plaintext 64 DES Data Encryption Standard L 0 R 0 32 K 0 32 f round 1 L 1 R 1 K 1 f round 2 L 2 R 2 L 15 R 15 K 15 f round 16 L 16 R 16 64 ciphertext

Lightweight DES Architecture Key schedule 32% State register S-Boxes 6-to-4 substitution tables highly non-linear high Boolean compl. 34% of area! Idea: Replace S1...S8 by S together 30%

12 months later: new Sbox S S replaces S1 S8 S more robust against differential, linear, and David-Murphy attack than S1 S8 no previous work (!)

Results Lightweight DES gates 1016 clk 144 clk 3595 2168 AES-128 DESXL-112 based on (extremely) well-studied cipher TA product 12 times better than smallest AES architecture details: FSE 07 paper Q: Can we do better??

PRESENT An agressively hardware optimized block cipher for RFID P Key pure substitution-permutation network 64 bit block, 80/128 bit key Register 4-4 bit Sbox 31 round (32 clks) Key Schedule provable secure against DC, LC joint work with Lars Knudsen, Matt Robshaw et al. S S Permutation C

Resource use within lightweight ciphers Round-parallel implementation of PRESENT (1570ge) P Key State 25% Register XOR 11% Key 30% Key Schedule S SP Layer 29% Permutation S Registers (state + key) 55% Key XOR 11% SP Layer ( crypto ) 29% C

Results PRESENT gates 1016 clk 144 clk 32 clk 563clk 3595 2168 1570 996 AES128 DESXL112 PRESENT80 PRESENT80 TA product 1-2 orders of magnitude better than smallest AES architecture Serial implementation approaches theoretical complexity limit: almost all area is used for the 144 bit state (key + data path) smaller than all stream ciphers details: CHES 07 paper

Contents 1. Some general thoughts about cheap crypto 2. Lightweight Block Ciphers 3. Lightweight Asymmetric Cryptography 4. Lightweight Hash Functions

Strong Identification (w/ symmetric crypto) r e k () e k (r) = y e k () Potential weakness: attacker gets access to key on host device (e.g. firmware exploits) and starts cloning batteries

Strong Identification (w/ asymmetric crypto) r 1. random challenge r sig kpr () sig kpr (r) = y ver kpub 2. signed response y 3. verification ver kpub (r,y) = t/f private key is hard to reverse engineer Attacker can only access public key from host device But how cheap can we build public-key algorithms?

Elliptic Curve Primitive Given a Point P on an elliptic curve E over GF(p): E: y 2 =x 3 +ax+b mod p k pub Q = l P k pr Public key Q is multiple of base point P group operation Q = P+P+ +P = l P P 3P EC discrete logarithm problem: l = dlog P (Q) P+P

Design Principles for Tiny ECC Processor Reduce memory requirements : memory amounts to more than 50% of design Reduce arithemtic unit area Keep it simple but efficient : avoid units like inverter + designed for specific size : reduce control logic area - multiplexers

Tiny ECC Processor Units Arithmetic Units Multiplier Squarer inverter Point Multiplier Control Unit Memory Unit Most-Significant Bit Mult.

The Implementation: : MSB Multiplier C(x)=A(x) B(x) =((A b m-1 x + A b m-2 )x)x+a b 0 mod F( Most-Significant Bit (MSB) Multiplier: n cycles for n-bit multiplier

Tiny ECC Processor: : Design decisions Arithmetic Units Multiplier Squarer inverter Point Multiplier Control Unit Memory Unit Most-Significant Bit Mult. Parallel Squaring

The Implementation: Squarer single cycle squaring low gate count low critical path

Tiny ECC Processor Units Arithmetic Units Multiplier Squarer inverter Point Multiplier Control Unit Memory Unit Most-Significant Bit Mult. Parallel Squaring Fermat s Little Theorem

Inverter Some basic number theory Fermat s Little Theorem A -1 A 2m -2 if A GF(2 m )* Straightforward exponentiation: 161 MUL + 162 SQ Exploit exponent structure: A 2m -2 = A 111 110 (Itoh-Tsujii) #MUL = log 2 (m-1) + HW(m-1) 1 #SQ = m-1 For m=163: 9 MUL + 162 SQ

The Tiny ECC Processor Design ECC processor implementation for 2 113,2 131,2 163,2 193 ld_data addr Input Output rd_data rst start done clk n n A T n A B A sel B sel B x 1 x Registers 2 y 1 65% x y C b i_sel b i Memory b i_sel A sel B sel C ld_reg b i 1 mult_start Controller counter k C sel n MULArithmetic SQR Arithmetic Unit ( Crypto ) 17% A.B mod F(x) A 2 mod F(x) n C A+B ADD C sel n

Performance and Results Performance @ 4 MHz for standardized curves Field Size Arithmetic Unit(gates) Memory (gates) Total (gates) Time (ms) 113 1,625 6,686 10,112 47 131 2,071 7,747 11,969 61 163 2,572 9,632 15,094 108 193 2,776 11,400 17,723 139 131, 163 bit: very practical bit sizes Security levels?

Security of mid-size ECC Costs for breaking ECC in one year w/ optimized attack ASICs: ECC131p $2 million ECC163p: $1 trillion (> 20 years security) cf. COPACOBANA @ [CHES06]

Contents 1. Some general thoughts about cheap crypto 2. Lightweight Block Ciphers 3. Lightweight Asymmetric Cryptography 4. Lightweight Hash Functions (Special thanks to Matt Robshaw)

Hash-based authentication H(), k r H(k r) = y H(), k 1. random challenge r 2. encrypted response y 3. verification H(k r) = y y == y Conventional wisdom: Hashing is very cheap compared to real crypto algorithms (e.g., popular assumption in ad-hoc network security community)

Lightweight Hash Function Best results from literature Hash Fct. Output length #Clk Gate equiv. MD5 128 612 8,400 SHA-1 160 1274 8,120 SHA-256 256 1128 10,868 hash functions are far worse than block ciphers in hardware but we can build hash fct. from block ciphers

Hashfunctions from Block Ciphers (1) Run cipher in Davies-Meyer mode H i with AES: 4000 ge, 1024 clk/block drawback: hash size = block size Rijndael with 192 or 256 bit block is appealing but area increases even more DES, PRESENT etc. not suited since 64 bit block e() H i+1 M

Hashfunctions from Block Ciphers (2) Double-block length hash (Hirose construction) H 1 H 2 M H 1 with PRESENT 4000 ge, 32 clk/block 128 bit hash output e() e() extension to triple block length possible but many cipher instances needed H 1 H 2 We need dedicated lightweight hash functions!

Some open problems 1. Lighweight hash functions? 2. Lightweight public-key schemes? 3. Lightweight side-channel analysis (SCA) resistance? 4. Interaction lightweight crypto SCA resistance?

Related Workshops SECSI Secure Component and Systems Identification March 2008, Berlin RFIDSec 2008 July 2008, Budapest CHES Cryptographic Hardware and Embedded Systems August 2008, Washington D.C. escar Embedded Security in Cars November 2008, Hamburg

Further Reading Individual Ciphers 1. M. Feldhofer, J. Wolkerstorfer, V. Rijmen. AES Implementation on a Grain of Sand, Information Security, IEE Proceedings, 152(1):13 20, 2005. 2. G. Leander et al., New Lightweight DES Variants Suited for RFID Applications, FSE 2007. 3. A. Bogdanov et al., PRESENT A Lightweight Block Cipher for RFID, CHES 2007. 4. S. Kumar, Elliptic Curve Cryptography for Constrained Devices, PhD thesis, ECE Dept., Ruhr University Bochum, 2006. 5. S. Hirose, Some Plausible Constructions of Double-Block-Length Hash Functions, FSE 2006. 6. S. Kumar et al., Breaking Ciphers with COPACOBANA A Cost-Optimized Parallel Code Breaker, CHES 2006. Surveys 7. T. Eisenbarth et al., A Survey of Lightweight Cryptography Implementations, IEEE Design and Test, 2007. 8. J.-P. Kaps, G. Gaubatz, B. Sunar, Cryptography on a Speck of Dust, IEEE Computer Magazine, 2007.