Cryptographic coprocessor

Slides:



Advertisements
Similar presentations
Key Management Nick Feamster CS 6262 Spring 2009.
Advertisements

Smart Cards Our Inevitable Future Mark Shippy. What are smart cards? Credit card sized plastic card with an embedded chip. Credit card sized plastic card.
1 A New Multiplication Technique for GF(2 m ) with Cryptographic Significance Athar Mahboob and Nassar Ikram National University of Sciences & Technology,
Number Theory Algorithms and Cryptography Algorithms Prepared by John Reif, Ph.D. Analysis of Algorithms.
Are standards compliant Elliptic Curve Cryptosystems feasible on RFID?
Polynomial Evaluation. Straightforward Evaluation P(x) = 3x 5 +2x 4 +7x 3 +8x 2 +2x+4P(x) = 3x 5 +2x 4 +7x 3 +8x 2 +2x+4 t1 = (3*x*x*x*x*x)t1 = (3*x*x*x*x*x)
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
Computer Organization CS224 Fall 2012 Lesson 19. Floating-Point Example  What number is represented by the single-precision float …00 
Arithmetic in Computers Chapter 4 Arithmetic in Computers2 Outline Data representation integers Unsigned integers Signed integers Floating-points.
Week 6 - Programming I So far, we’ve looked at simple programming via “scripts” = programs of sequentially evaluated commands Today, extend features to:
Chapter 8 – Introduction to Number Theory. Prime Numbers prime numbers only have divisors of 1 and self –they cannot be written as a product of other.
Advanced Information Security 2 SCALAR MULTIPLICATION Dr. Turki F. Al-Somani 2015.
1 Efficient Algorithms for Elliptic Curve Cryptosystems Original article by Jorge Guajardo and Christof Paar Of WPI ECE Department Presentation by Curtis.
Elliptic Curve Cryptography Shane Almeida Saqib Awan Dan Palacio.
A Dual Field Elliptic Curve Cryptographic Processor Laboratory for Reliable Computing (LaRC) Electrical Engineering Department National Tsing Hua University.
CSE 321 Discrete Structures Winter 2008 Lecture 8 Number Theory: Modular Arithmetic.
IHP Im Technologiepark Frankfurt (Oder) Germany IHP Im Technologiepark Frankfurt (Oder) Germany ©
ASYMMETRIC CIPHERS.
CSE 321 Discrete Structures Winter 2008 Lecture 10 Number Theory: Primality.
Peter Lam Discrete Math CS.  Sometimes Referred to Clock Arithmetic  Remainder is Used as Part of Value ◦ i.e Clocks  24 Hours in a Day However, Time.
-Anusha Uppaluri.  ECC- A set of algorithms for key generation, encryption and decryption (public key encryption technique)  ECC was introduced by Victor.
Software Security Seminar - 1 Chapter 11. Mathematical Background 발표자 : 안병희 Applied Cryptography.
1 Network Security Lecture 6 Public Key Algorithms Waleed Ejaz
CPSC 3730 Cryptography and Network Security
Information Security and Management 4. Finite Fields 8
Application of Elliptic Curves to Cryptography
CS 627 Elliptic Curves and Cryptography Paper by: Aleksandar Jurisic, Alfred J. Menezes Published: January 1998 Presented by: Sagar Chivate.
Institute for Applied Information Processing and Communications (IAIK) – VLSI & Security Dr. Johannes Wolkerstorfer IAIK – Graz University of Technology.
Prelude to Public-Key Cryptography Rocky K. C. Chang, February
Chapter 21 Public-Key Cryptography and Message Authentication.
Modular Arithmetic with Applications to Cryptography Lecture 47 Section 10.4 Wed, Apr 13, 2005.
Gaj1P230/MAPLD 2004 Elliptic Curve Cryptography over GF(2 m ) on a Reconfigurable Computer: Polynomial Basis vs. Optimal Normal Basis Representation Comparative.
Chapter 4 – Finite Fields
Some Perspectives on Smart Card Cryptography
BCRYPT ECC-Day 2008 Requirements, Algorithms, Architectures The design space of ECC hardware.
Linear Feedback Shift Register. 2 Linear Feedback Shift Registers (LFSRs) These are n-bit counters exhibiting pseudo-random behavior. Built from simple.
Exploiting the Order of Multiplier Operands: A Low-Cost Approach for HCCA Resistance Poulami Das and Debapriya Basu Roy under the supervision of Dr. Debdeep.
1 Workshop Topics - Outline Workshop 1 - Introduction Workshop 2 - module instantiation Workshop 3 - Lexical conventions Workshop 4 - Value Logic System.
Elliptic Curve Cryptography
Cryptography and Network Security Chapter 4. Introduction  will now introduce finite fields  of increasing importance in cryptography AES, Elliptic.
Ch1 - Algorithms with numbers Basic arithmetic Basic arithmetic Addition Addition Multiplication Multiplication Division Division Modular arithmetic Modular.
Cryptography issues – elliptic curves Presented by Tom Nykiel.
Lecture 9 Elliptic Curves. In 1984, Hendrik Lenstra described an ingenious algorithm for factoring integers that relies on properties of elliptic curves.
Assignment #3 Solutions January 24, Practical Aspects of Modern Cryptography Problem #1 Use Fermat’s Little Theorem and induction on k to prove.
A Reconfigurable System on Chip Implementation for Elliptic Curve Cryptography over GF(2 n ) Michael Jung 1, M. Ernst 1, F. Madlener 1, S. Huss 1, R. Blümel.
Introduction to Number Theory
Pertemuan #5 Pengantar ke Number Theory Kuliah Pengaman Jaringan.
15-499Page :Algorithms and Applications Cryptography II – Number theory (groups and fields)
1 Network Security Dr. Syed Ismail Shah
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
Copyright © Zeph Grunschlag, RSA Encryption Zeph Grunschlag.
Efficient Montgomery Modular Multiplication Algorithm Using Complement and Partition Techniques Speaker: Te-Jen Chang.
Motivation Basis of modern cryptosystems
Public Key Cryptography. Asymmetric encryption is a form of cryptosystem in which Encryption and decryption are performed using the different keys—one.
Elliptic Curve Public Key Cryptography Why ? ● ECC offers greater security for a given key size. ● The smaller key size also makes possible much more compact.
Practical Aspects of Modern Cryptography
CSE565: Computer Security Lecture 7 Number Theory Concepts
Asymmetric-Key Cryptography
Cryptanalysis using Supercomputers, FPGAs and GPUs
D. Cheung – IQC/UWaterloo, Canada D. K. Pradhan – UBristol, UK
FIRST REVIEW.
Number Theory (Chapter 7)
Elliptic Curve Cryptography over GF(2m) on a Reconfigurable Computer:
CSCI206 - Computer Organization & Programming
Practical Aspects of Modern Cryptography
Practical Aspects of Modern Cryptography
Introduction to Elliptic Curve Cryptography
Mathematical Background for Cryptography
1 Lecture 5Multiplication and Division ECE 0142 Computer Organization.
Presentation transcript:

Cryptographic coprocessor Tomáš Davidovič 16. 6. 2008

Cryptographic coprocessor Introduction Asymmetric cryptography RSA – Integer factorization ECC – Elliptic Curve Cryptography Points on an Elliptic Curve Basic operation – scalar point multiplication Q = k*P – compute via add-and-double ECDLP – Elliptic Curve Discrete Logarithm Problem, determine k from Q and P 16. 6. 2008 Cryptographic coprocessor

EC – point addition – real numbers 16. 6. 2008 Cryptographic coprocessor

Cryptographic coprocessor EC – discrete Cannot use real numbers Coordinates from GF(2m) Two coordinate systems Affine coordinates (x, y) – mul & div Projective coordinates (x, y, z) – mul only Two bases in GF(2m) Polynomial – am-1xm-1+am-2xm-2+…+a1x+a0 Normal – am-1x2^(m-1)+am-2x2^(m-2)+…+a1x2+a0x 16. 6. 2008 Cryptographic coprocessor

EC – required operations Addition, subtraction Bitwise XOR in both bases Squaring Simple (but different) comb. logic in both Multiplication Bit-serial (m cycles) Digit-serial multiplier in both (m/D cycles) Division Polynomial b. via Extended Euclid’s Algorithm Normal b. via Little Fermat Theorem (costly) 16. 6. 2008 Cryptographic coprocessor

Cryptographic coprocessor Block diagram Previous work 16. 6. 2008 Cryptographic coprocessor

Cryptographic coprocessor Polynomial squaring 16. 6. 2008 Cryptographic coprocessor

Multiplication – bit-serial 16. 6. 2008 Cryptographic coprocessor

Multiplication – digit-serial Bit-serial – C = A*B Multiplies by 1 bit at a time Digit-serial – C = A*B; Digit – multiply by D bits at a time C = 0; i = 0; (D = 2) C = C + A*B[i] + (A<<1)*B[i+1] Shift A left by 2; i = i + 2; Repeat until i = m 16. 6. 2008 Cryptographic coprocessor

Cryptographic coprocessor Micro-controller 16. 6. 2008 Cryptographic coprocessor

Cryptographic coprocessor Verification Some functions base specific Wrappers Algorithms universal Test algorithms Use algorithms to verify design Quality – code coverage Statement coverage – each line used Branch coverage – each if taken both ways 16. 6. 2008 Cryptographic coprocessor

Cryptographic coprocessor Results – area 16. 6. 2008 Cryptographic coprocessor

Results – speed (cycles) 16. 6. 2008 Cryptographic coprocessor

Cryptographic coprocessor Wrap Up Coprocessor Both bases implemented Both coordinate systems evaluated Verification 100% Branch and statement coverage Everything passes Comparison Normal D=6 and poly D=1 equal in size Normal faster than poly when equal size 16. 6. 2008 Cryptographic coprocessor