EPFL-IC-IIF-LACAL Marcelo E. Kaihara April 27 th, 2007 Algorithms for public-key cryptology Montgomery Arithmetic.

Slides:



Advertisements
Similar presentations
Mod arithmetic.
Advertisements

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)
Section 4.1: Primes, Factorization, and the Euclidean Algorithm Practice HW (not to hand in) From Barr Text p. 160 # 6, 7, 8, 11, 12, 13.
The Integers and Division. Outline Division: Factors, multiples Exercise 2.3 Primes: The Fundamental Theorem of Arithmetic. The Division Algorithm Greatest.
CSE115/ENGR160 Discrete Mathematics 03/13/12 Ming-Hsuan Yang UC Merced 1.
Number Theory and Cryptography
Notation Intro. Number Theory Online Cryptography Course Dan Boneh
C. Walter, Data Integrity for Modular Arithmetic, CHES 2000 CHES 2000 Data Integrity in Hardware for Modular Arithmetic Colin Walter Computation Department,
Advanced Information Security 4 Field Arithmetic
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2009 Tuesday, 28 April Number-Theoretic Algorithms Chapter 31.
1 Efficient Algorithms for Elliptic Curve Cryptosystems Original article by Jorge Guajardo and Christof Paar Of WPI ECE Department Presentation by Curtis.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Tuesday, 26 November Number-Theoretic Algorithms Chapter 31.
Name: Kaiyong Zhao Supervisor: Dr. X. -W Chu. Background & Related Work Multiple-Precision Integer GPU Computing & CUDA Multiple-Precision Arithmetic.
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
Lecture 3.2: Public Key Cryptography II CS 436/636/736 Spring 2012 Nitesh Saxena.
CSE 20 DISCRETE MATH Prof. Shachar Lovett Clicker frequency: CA.
ASYMMETRIC CIPHERS.
Montgomery multiplication Algorithm Mohammad Farmani Under supervision of : Dr. S. Bayat-sarmadi 2 nd. Semister, Sharif University of Technology.
Arithmetic.
Elgamal Public Key Encryption CSCI 5857: Encoding and Encryption.
Software Security Seminar - 1 Chapter 11. Mathematical Background 발표자 : 안병희 Applied Cryptography.
Introduction to Modular Arithmetic and Public Key Cryptography.
1 Network Security Lecture 6 Public Key Algorithms Waleed Ejaz
Number Systems - Part II
3.4/3.5 The Integers and Division/ Primes and Greatest Common Divisors Let each of a and b be integers. We say that a divides b, in symbols a | b, provided.
MATH 224 – Discrete Mathematics
Section 4.3: Fermat’s Little Theorem Practice HW (not to hand in) From Barr Text p. 284 # 1, 2.
CompSci 102 Discrete Math for Computer Science February 16, 2012 Prof. Rodger.
Integer Representation for People Computer Organization and Assembly Language: Module 3.
Chapter The Integers and Division Division
Modular Arithmetic with Applications to Cryptography Lecture 47 Section 10.4 Wed, Apr 13, 2005.
RSA Prepared by: SITI ZAINAH ADNAN
Complexity 20-1 Complexity Andrei Bulatov Parallel Arithmetic.
CSE 311: Foundations of Computing Fall 2014 Lecture 12: Primes, GCD.
Optimizing Robustness while Generating Shared Secret Safe Primes Emil Ong and John Kubiatowicz University of California, Berkeley.
Lecture 6.1: Misc. Topics: Number Theory CS 250, Discrete Structures, Fall 2011 Nitesh Saxena.
Overview of Residue Number System (RNS) for Advanced VLSI Design and VLSI Signal Processing NTUEE 吳安宇.
Digital Signature Standard (DSS) US Govt approved signature scheme designed by NIST & NSA in early 90's published as FIPS-186 in 1991 revised in 1993,
Congruence and Sets Discrete Structures (CS 173) Madhusudan Parthasarathy, University of Illinois Dali - “The Persistence of Memory” 1.
Fermat’s Little Theorem The RSA Cryptosystem will require exponentiation to decrypt messages. Exponentiation Notation Example 1: Compute Exponentials Example.
15-499Page :Algorithms and Applications Cryptography II – Number theory (groups and fields)
CSE 311: Foundations of Computing Fall 2013 Lecture 12: Primes, GCD, modular inverse.
Unit 2 Modular Arithmetic and Cryptography IT Disicipline ITD1111 Discrete Mathematics & Statistics STDTLP 1 Unit 2 Modular Arithmetic and Cryptography.
Dan Boneh Intro. Number Theory Arithmetic algorithms Online Cryptography Course Dan Boneh.
High-Radix Sequential Multipliers Bit-Serial Multipliers Modular Multipliers Lecture 9.
Discrete Mathematics
Introduction to Elliptic Curve Cryptography CSCI 5857: Encoding and Encryption.
Elgamal Public Key Encryption CSCI 5857: Encoding and Encryption.
ACCESS IC LAB Graduate Institute of Electronics Engineering, NTU Brief Overview of Residue Number System (RNS) VLSI Signal Processing 台灣大學電機系 吳安宇.
1 Discrete Structures – CNS2300 Text Discrete Mathematics and Its Applications Kenneth H. Rosen (5 th Edition) Chapter 2 The Fundamentals: Algorithms,
The Fundamentals: Algorithms, Integers, and Matrices CSC-2259 Discrete Structures Konstantin Busch - LSU1.
Chapter 4 With Question/Answer Animations 1. Chapter Motivation Number theory is the part of mathematics devoted to the study of the integers and their.
Efficient Montgomery Modular Multiplication Algorithm Using Complement and Partition Techniques Speaker: Te-Jen Chang.
Motivation Basis of modern cryptosystems
1 Digital Logic Design (41-135) Chapter 5 Number Representation & Arithmetic Circuits Younglok Kim Dept. of Electrical Engineering Sogang University Spring.
Floating Point Arithmetic – Part I
Number-Theoretic Algorithms
Overview of Residue Number System (RNS) for Advanced VLSI Design and VLSI Signal Processing NTUEE 吳安宇.
CHAPTER 4: Representing Integer Data
MATH301- DISCRETE MATHEMATICS Copyright © Nahid Sultana Dr. Nahid Sultana Chapter 4: Number Theory and Cryptography.
Brief Overview of Residue Number System (RNS)
Discrete Math for CS CMPSC 360 LECTURE 12 Last time: Stable matching
Week #5 – 23/25/27 September 2002 Prof. Marie desJardins
CPU Design & Computer Arithmetic
Modular Arithmetic and Change of Base
Digital Logic Design (CSNB163)
Modular Arithmetic and Elliptic Curves
CLOCK ARITHMETIC.
Presentation transcript:

EPFL-IC-IIF-LACAL Marcelo E. Kaihara April 27 th, 2007 Algorithms for public-key cryptology Montgomery Arithmetic

RSA: ElGamal: Motivation Need of efficient algorithms for modular multiplication Most of the time computing modular multiplications

Radix representation Notation Multiple-precision integer arithmetic depending on the processor (normalized)

General overview Ordinary RepresentationMontgomery Representation Sequential multiplications performed in Montgomery representation Montgomery Multiplication

Isomorphic Ordinary RepresentationMontgomery Representation Montgomery radix Montgomery Multiplication

Definition Definition:

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute? Algorithm

How to compute?

Subtraction-less Montgomery multiplication Algorithm

Subtraction-less Montgomery multiplication Algorithm

Subtraction-less Montgomery multiplication Algorithm

Ordinary RepresentationMontgomery Representation Conversion back and forth from ordinary representation and Montgomery representation

How to compute R 2 mod m ? Ordinary RepresentationMontgomery Representation Montgomery Bootstrapping

What about modular inversion? Ordinary RepresentationMontgomery Representation Montgomery Bootstrapping

How to compute m 0 -1 mod B? Montgomery Bootstrapping

Montgomery Squaring

RSA pseudorandom bit generator