Administrative HW1 due Th, Sep. 20, before class HW2 due Today, before class QUIZ1 Tu, Sep. 18 number theory/cryptography, pages 1-44 of DPV problem session:

Slides:



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

Computability and Complexity
Having Proofs for Incorrectness
Primality Testing Patrick Lee 12 July 2003 (updated on 13 July 2003)
Data encryption with big prime numbers
Introduction to Modern Cryptography Lecture 6 1. Testing Primitive elements in Z p 2. Primality Testing. 3. Integer Multiplication & Factoring as a One.
22C:19 Discrete Math Integers and Modular Arithmetic Fall 2010 Sukumar Ghosh.
Notation Intro. Number Theory Online Cryptography Course Dan Boneh
1 The RSA Algorithm Supplementary Notes Prepared by Raymond Wong Presented by Raymond Wong.
Great Theoretical Ideas in Computer Science.
Foundations of Network and Computer Security J J ohn Black Lecture #10 Sep 18 th 2009 CSCI 6268/TLEN 5550, Fall 2009.
and Factoring Integers (I)
Announcements: 1. Pass in Homework 5 now. 2. Term project groups and topics due by Friday 1.Can use discussion forum to find teammates 3. HW6 posted, due.
מבוא מורחב - שיעור 6 1 Lecture 6 High order procedures Primality testing The RSA cryptosystem.
Complexity1 Pratt’s Theorem Proved. Complexity2 Introduction So far, we’ve reduced proving PRIMES  NP to proving a number theory claim. This is our next.
ACM International Collegiate Programming Contest Banff Springs, Alberta April 6 – 10, 2008 Sep. 22 (local) Oct. 6 (Oswego – preliminary) Nov. 10 (RIT –
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.
DTTF/NB479: Dszquphsbqiz Day 9 Announcements: Homework 2 due now Homework 2 due now Computer quiz Thursday on chapter 2 Computer quiz Thursday on chapter.
The RSA Algorithm Based on the idea that factorization of integers into their prime factors is hard. ★ n=p . q, where p and q are distinct primes Proposed.
1 CIS 5371 Cryptography 8. Asymmetric encryption-.
Topic 18: RSA Implementation and Security
CSE 321 Discrete Structures Winter 2008 Lecture 10 Number Theory: Primality.
Introduction to Modular Arithmetic and Public Key Cryptography.
CS 312: Algorithm Analysis Lecture #4: Primality Testing, GCD This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.Creative.
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.
MA/CSSE 473 Day 08 Randomized Primality Testing Carmichael Numbers Miller-Rabin test.
The Complexity of Primality Testing. What is Primality Testing? Testing whether an integer is prime or not. – An integer p is prime if the only integers.
MA/CSSE 473 Day 11 Primality testing summary Data Encryption RSA.
MA/CSSE 473 Day 10 Primality testing summary Data Encryption RSA.
CS 312: Algorithm Analysis Lecture #4: Primality Testing, GCD This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.Creative.
Great Theoretical Ideas in Computer Science for Some.
Lecture 6.1: Misc. Topics: Number Theory CS 250, Discrete Structures, Fall 2011 Nitesh Saxena.
מבוא מורחב - שיעור 6 1 Lecture 6 High order procedures Primality testing The RSA cryptosystem.
Chinese Remainder Theorem. How many people What is x? Divided into 4s: remainder 3 x ≡ 3 (mod 4) Divided into 5s: remainder 4 x ≡ 4 (mod 5) Chinese Remainder.
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.
Great Theoretical Ideas in Computer Science for Some.
Modular Arithmetic and the RSA Cryptosystem Great Theoretical Ideas In Computer Science John LaffertyCS Fall 2005 Lecture 9Sept 27, 2005Carnegie.
Great Theoretical Ideas in Computer Science.
Great Theoretical Ideas In Computer Science Anupam GuptaCS Fall 2006 Lecture 15Oct 17, 2006Carnegie Mellon University Algebraic Structures: Groups,
CS Lecture 14 Powerful Tools     !. Build your toolbox of abstract structures and concepts. Know the capacities and limits of each tool.
Introduction to Number Theory
Primality Testing. Introduction The primality test provides the probability of whether or not a large number is prime. Several theorems including Fermat’s.
Lecture 3.1: Public Key Cryptography I CS 436/636/736 Spring 2015 Nitesh Saxena.
Dan Boneh Intro. Number Theory Fermat and Euler Online Cryptography Course Dan Boneh.
Introduction to Number Theory Department of Computer Engineering Sharif University of Technology 3/8/2006.
Chapter 13 Mathematic Structures 13.1 Modular Arithmetic Definition 1 (modulo). Let a be an integer and m be a positive integer. We denoted by a mod m.
CS 312: Algorithm Analysis Lecture #4: Primality Testing, GCD This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.Creative.
Great Theoretical Ideas in Computer Science.
Great Theoretical Ideas In Computer Science COMPSCI 102 Fall 2010 Lecture 16October 27, 2010Duke University Modular Arithmetic and the RSA Cryptosystem.
Great Theoretical Ideas in Computer Science.
MA/CSSE 473 Day 09 Modular Division Revisited Fermat's Little Theorem Primality Testing.
RSA Cryptosystem Great Theoretical Ideas In Computer Science S. Rudich V. Adamchik CS Spring 2006 Lecture 8Feb. 09, 2006Carnegie Mellon University.
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.
Mathematics of Cryptography
Topic 12: Number Theory Basics (2)
Great Theoretical Ideas in Computer Science
Lecture 3.2: Public Key Cryptography II
Number-Theoretic Algorithms (UNIT-4)
Great Theoretical Ideas In Computer Science
Cryptography Lecture 21.
Great Theoretical Ideas in Computer Science
Great Theoretical Ideas in Computer Science
Patrick Lee 12 July 2003 (updated on 13 July 2003)
Clements MAΘ October 30th, 2014
Cryptography Lecture 17.
Cryptography Lecture 20.
Presentation transcript:

Administrative HW1 due Th, Sep. 20, before class HW2 due Today, before class QUIZ1 Tu, Sep. 18 number theory/cryptography, pages 1-44 of DPV problem session: Fr, Sep. 14, 8am, CSB601

I was great at Geometry. If I wanted to train someone as a comedian, I would make them do lots of proofs. That's what comedy is: a kind of bogus proof. You set up a fallacious premise and then prove it with rigorous logic. It just makes people laugh. You'll find that most of my stuff is based on that system... You must think rationally on a completely absurd plane.

Cryptography – public key - RSA 1. pick two large primes p,q, let N=pq 2. pick e such that gcd(e,p-1)=1, gcd(e,q-1)=1 3. find d such that e.d  1 mod (p-1)(q-1) 4. announce e,N, keep p,q,d secret ENCODE(x) = x e mod N DECODE(y) = y d mod N

Fermat’s little Theorem Let p be a prime. Let a  {1,...,p-1}. Then a p-1  1 (mod p) good for computing inverses? good for primality testing?

if 2 x-1  1 (mod x) say PRIME else say COMPOSITE

good for primality testing? pick random a  {1,...,x-1} if a x-1  1 (mod x) say PRIME else say COMPOSITE

good for primality testing? pick random a  {1,...,x-1} if a x-1  1 (mod x) say PRIME else say COMPOSITE if a x-1  1 (mod x) b x-1  1 (mod x) then (ab) x-1  1 (mod x) (a -1 ) x-1  1 (mod x) Zx*Zx* GOOD NEWS!

BAD NEWS! Carmichael numbers  a  Z 561 * a 560  1 (mod 561) 561 = 3*11* = 2 4 * 5 * 7

GOOD NEWS! can be fixed: main idea (informally): 1 has has only 2 square roots modulo a prime 1 has at least 4 square roots modulo an odd composite what are the square roots of 1 mod 15?

GOOD NEWS! 1 has at least 4 square roots modulo an odd composite Chinese Remainder Theorem Let M,N be such that gcd(M,N)=1. Let a,b be two integers. Then x  a (mod M) x  b (mod N) has a unique solution in {0,...,MN-1}

Rabin-Miller Primality Test pick random a  {1,...,x-1} if a x-1  1 (mod x) say COMPOSITE x-1=2 k.y where y is odd e:=x-1 for j from 1 to k do e:=e/2; if 2 e  1 (mod x) then if 2 e  -1 (mod x) then PRIME else COMPOSITE PRIME

Primality testing P RP co-RP ZPP co-RP = Miler-Rabin ( ) RP = Adleman-Huang (1992) P = Agrawal,Saxena,Kayal (2002)

Primality testing P NP co-NP Pratt’1975

Ok so I can test for primality, how do I get a random prime???

What else can I use random primes for?

Group set S, with a binary operation  : S  S  S 1)  is associative a  (b  c) = (a  b)  c 2) neutral element (  e  S)(  x  S) e  x = x  e = x 3) inverse (  x  S)(  y  S) x  y = y  x = e

Lagrange’s theorem Let G be finite. Let H  G. Then |H| divides |G|. we say H is a subgroup of G (denoted H  G) if for all x,y  H we have x  y  H, and for all x  H we have x -1  H DEFINITION: