UMass Lowell Computer Science 91.503 Analysis of Algorithms Prof. Karen Daniels Spring, 2009 Tuesday, 28 April Number-Theoretic Algorithms Chapter 31.

Slides:



Advertisements
Similar presentations
Number Theory Algorithms and Cryptography Algorithms Prepared by John Reif, Ph.D. Analysis of Algorithms.
Advertisements

Cryptography and Network Security Chapter 8 Fourth Edition by William Stallings Lecture slides by Lawrie Brown Modified – Tom Noack.
RSA COSC 201 ST. MARY’S COLLEGE OF MARYLAND FALL 2012 RSA.
COMP 170 L2 Page 1 L06: The RSA Algorithm l Objective: n Present the RSA Cryptosystem n Prove its correctness n Discuss related issues.
Cryptography and Network Security
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.
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.
Primality Testing Patrick Lee 12 July 2003 (updated on 13 July 2003)
22C:19 Discrete Structures Integers and Modular Arithmetic
Chapter 8 More Number Theory. Prime Numbers Prime numbers only have divisors of 1 and itself They cannot be written as a product of other numbers Prime.
Number Theory Presented by Shrividya Shivkumar and George Frederick.
22C:19 Discrete Math Integers and Modular Arithmetic Fall 2010 Sukumar Ghosh.
Notation Intro. Number Theory Online Cryptography Course Dan Boneh
Lecture 3.3: Public Key Cryptography III CS 436/636/736 Spring 2012 Nitesh Saxena.
Foundations of Network and Computer Security J J ohn Black Lecture #10 Sep 18 th 2009 CSCI 6268/TLEN 5550, Fall 2009.
Public Key Crytography1 From: Introduction to Algorithms Cormen, Leiserson and Rivest.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lecture 8 Tuesday, 11/13/01 String Matching Algorithms Chapter.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2002 Tuesday, 26 November Number-Theoretic Algorithms Chapter 31.
6/20/2015 5:05 AMNumerical Algorithms1 x x1x
1 Lecture #10 Public Key Algorithms HAIT Summer 2005 Shimrit Tzur-David.
CS470, A.SelcukPublic Key Cryptography1 CS 470 Introduction to Applied Cryptography Instructor: Ali Aydin Selcuk.
CSE 321 Discrete Structures Winter 2008 Lecture 8 Number Theory: Modular Arithmetic.
Theory I Algorithm Design and Analysis (9 – Randomized algorithms) Prof. Dr. Th. Ottmann.
Lecture 3.2: Public Key Cryptography II CS 436/636/736 Spring 2012 Nitesh Saxena.
UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Fall, 2001 Lecture 7 Tuesday, 11/6/01 Number-Theoretic Algorithms Chapter.
ASYMMETRIC CIPHERS.
CSE 311 Foundations of Computing I Lecture 12 Primes, GCD, Modular Inverse Spring
Software Security Seminar - 1 Chapter 11. Mathematical Background 발표자 : 안병희 Applied Cryptography.

1 Network Security Lecture 6 Public Key Algorithms Waleed Ejaz
1 Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown Chapter 4 – Finite Fields.
Section 4.3: Fermat’s Little Theorem Practice HW (not to hand in) From Barr Text p. 284 # 1, 2.
RSA and its Mathematics Behind
Prelude to Public-Key Cryptography Rocky K. C. Chang, February
RSA Parameter Generation Bob needs to: - find 2 large primes p,q - find e s.t. gcd(e, Á (pq))=1 Good news: - primes are fairly common: there are about.
Lecture 2 Basic Number Theory and Algebra. In modern cryptographic systems,the messages are represented by numerical values prior to being encrypted and.
Cryptography Lecture 7: RSA Primality Testing Piotr Faliszewski.
Introduction to Algorithms Second Edition by Cormen, Leiserson, Rivest & Stein Chapter 31.
YSLInformation Security -- Public-Key Cryptography1 Prime and Relatively Prime Numbers Divisors: We say that b  0 divides a if a = mb for some m, where.
RSA and its Mathematics Behind July Topics  Modular Arithmetic  Greatest Common Divisor  Euler’s Identity  RSA algorithm  Security in RSA.
CSE 311: Foundations of Computing Fall 2014 Lecture 12: Primes, GCD.
Lecture 6.1: Misc. Topics: Number Theory CS 250, Discrete Structures, Fall 2011 Nitesh Saxena.
9/22/15UB Fall 2015 CSE565: S. Upadhyaya Lec 7.1 CSE565: Computer Security Lecture 7 Number Theory Concepts Shambhu Upadhyaya Computer Science & Eng. University.
CS Modular Division and RSA1 RSA Public Key Encryption To do RSA we need fast Modular Exponentiation and Primality generation which we have shown.
Notation Intro. Number Theory Online Cryptography Course Dan Boneh
Tuesday’s lecture: Today’s lecture: One-way permutations (OWPs)
Ch1 - Algorithms with numbers Basic arithmetic Basic arithmetic Addition Addition Multiplication Multiplication Division Division Modular arithmetic Modular.
Introduction to Cryptography Lecture 9. Public – Key Cryptosystems Each participant has a public key and a private key. It should be infeasible to determine.
Week 4 - Wednesday.  What did we talk about last time?  Finished DES  AES.
Lecture 3.1: Public Key Cryptography I CS 436/636/736 Spring 2012 Nitesh Saxena.
Lecture 3.1: Public Key Cryptography I CS 436/636/736 Spring 2015 Nitesh Saxena.
9.1 Primes and Related Congruence Equations 23 Sep 2013.
CSE 311: Foundations of Computing Fall 2013 Lecture 12: Primes, GCD, modular inverse.
Lecture 2-3 Basic Number Theory and Algebra. In modern cryptographic systems, the messages are represented by numerical values prior to being encrypted.
RSA Cryptosystem Great Theoretical Ideas In Computer Science S. Rudich V. Adamchik CS Spring 2006 Lecture 8Feb. 09, 2006Carnegie Mellon University.
CS480 Cryptography and Information Security
Cryptography RSA Algorithm BY : Wesam Fadheel Computer science department - WMU CS-6800 Advanced Theory of Computation Instructor: Dr. Elise De Doncker.
Number-Theoretic Algorithms
Mathematical Background for Cryptography: Modular arithmetic and gcd
Public Key Encryption Major topics The RSA scheme was devised in 1978
Lecture 3.2: Public Key Cryptography II
RSA Preliminaries.
ALGORITHM NUMBER THEORY
Mathematical Background: Prime Numbers
Discrete Math for CS CMPSC 360 LECTURE 12 Last time: Stable matching
Introduction to Cryptography
Tuesday, 27 April Number-Theoretic Algorithms Chapter 31
Lecture 3.1: Public Key Cryptography I
Lecture 2-3 Basic Number Theory and Algebra
Mathematical Background : A quick approach to Group and Field Theory
Presentation transcript:

UMass Lowell Computer Science Analysis of Algorithms Prof. Karen Daniels Spring, 2009 Tuesday, 28 April Number-Theoretic Algorithms Chapter 31

Chapter Dependencies Ch 31 Number-Theoretic Algorithms RSA Math: Number Theory You’re responsible for material in this chapter that we discuss in lecture. (Note that this does not include sections 31.8 or 31.9.)

Overview ä Motivation: RSA ä Basics ä Euclid’s GCD Algorithm ä Chinese Remainder Theorem ä Powers of an Element ä RSA Details

Motivation: RSA

RSA Encryption source: textbook Cormen et al. 31.5

RSA Digital Signature source: textbook Cormen et al assume Alice also sends her name so Bob knows whose public key to use ?

RSA Cryptosystem (31.19) (31.26) (31.35) (31.36) encode decode source: textbook Cormen et al. to be explained later…. need efficient ways to compute P(M), S(C)

RSA Dependence ä Correctness:  Euler’s  Function ä Fermat’s Theorem ä Chinese Remainder Theorem ä Efficiency: ä Modular Exponentiation ä Primality Testing ä Security: ä Difficulty of Factoring Large Integers see chart of result dependencies on next slide (courtesy of Mark Micire)… Need to show:

Notes on Primality Testing ä Efficient primality testing has been goal for > 2,000 years. ä Early attempts required exponential time. ä Miller-Rabin (Section 31.8) primality test is a randomized polynomial-time algorithm (1980’s). ä Agrawal, Kayal, Saxena provided a deterministic polynomial-time algorithm (2002).

Basic Concepts * Indicates that result is on chart of result dependencies

Division & Remainders source: textbook Cormen et al (3.8) *

Equivalence Class Modulo n source: textbook Cormen et al. (31.1) (31.2)

Common Divisors source: textbook Cormen et al. (31.3) (31.4) (31.5) * *

Greatest Common Divisor source: textbook Cormen et al. (31.6) (31.7) (31.8) (31.9) (31.10) 31.2 (3.8) (31.4) * *

Greatest Common Divisor source: textbook Cormen et al (31.4) *

Relatively Prime Integers source: textbook Cormen et al *

Relatively Prime Integers source: textbook Cormen et al *

Greatest Common Divisor source: textbook Cormen et al (31.5) (3.8) (31.4) (31.3) (31.4) (31.3) (31.5) (31.14) (31.15) (31.14) (31.15) *

Euclid’s GCD Algorithm

source: textbook Cormen et al. * Also see Java code on course web site

Extended Euclid source: textbook Cormen et al. (31.16) 31.1 * *

Chinese Remainder Theorem

Modular Arithmetic source: textbook Cormen et al.

Finite Groups source: textbook Cormen et al. size of this group is 6 size of this group is Additive group mod 6 Multiplicative group mod 15 elements relatively prime to n

Finite Groups source: textbook Cormen et al

Finite Groups source: textbook Cormen et al

Euler’s Phi Function source: textbook Cormen et al. (31.19) *

Lagrange’s Theorem source: textbook Cormen et al *

Finite Groups * source: textbook Cormen et al ** additive subgroup generated by a where k

Solving Modular Linear Eq source: textbook Cormen et al (31.4) *

Solving Modular Linear Eq source: textbook Cormen et al * *

Solving Modular Linear Eq source: textbook Cormen et al * *

Chinese Remainder Theorem source: textbook Cormen et al. (31.23) (31.23) (31.24) (31.25) (31.26) *

Chinese Remainder Theorem source: textbook Cormen et al *

Powers of an Element

Theorems of Euler & Fermat source: textbook Cormen et al * * 31.20

Modular Exponentiation source: textbook Cormen et al. * Also see Java code on course web site

RSA Details

RSA Encryption source: textbook Cormen et al. 31.5

RSA Digital Signature source: textbook Cormen et al assume Alice also sends her name so Bob knows whose public key to use ?

RSA Cryptosystem (31.19) (31.26) (31.35) (31.36) encode decode source: textbook Cormen et al. need efficient ways to compute P(M), S(C)

RSA Correctness source: textbook Cormen et al. (31.35)(31.36) by Thm (Fermat)