Topic 6: Number Theory Basics

Slides:



Advertisements
Similar presentations
1 Section 2.4 The Integers and Division. 2 Number Theory Branch of mathematics that includes (among other things): –divisibility –greatest common divisor.
Advertisements

Chapter Primes and Greatest Common Divisors ‒Primes ‒Greatest common divisors and least common multiples 1.
Basic properties of the integers
Elementary Number Theory and Methods of Proof. Basic Definitions An integer n is an even number if there exists an integer k such that n = 2k. An integer.
6/20/2015 5:05 AMNumerical Algorithms1 x x1x
Theory of Computation Transparency No. 1-1 Chapter 2 Introduction to Number Theory and Its applications Cheng-Chia Chen October 2002.
Chapter 4 – Finite Fields Introduction  will now introduce finite fields  of increasing importance in cryptography AES, Elliptic Curve, IDEA, Public.
CS555Spring 2012/Topic 61 Cryptography CS 555 Topic 6: Number Theory Basics.
Lecture 3.2: Public Key Cryptography II CS 436/636/736 Spring 2012 Nitesh Saxena.
Mathematics of Cryptography Part I: Modular Arithmetic, Congruence,
CSE 311 Foundations of Computing I Lecture 12 Primes, GCD, Modular Inverse Spring
Fall 2002CMSC Discrete Structures1 Let us get into… Number Theory.
CS555Spring 2012/Topic 61 Cryptography CS 555 Topic 6: Number Theory Basics.
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.
Mathematics of Cryptography Part I: Modular Arithmetic, Congruence,
Divisibility October 8, Divisibility If a and b are integers and a  0, then the statement that a divides b means that there is an integer c such.
© by Kenneth H. Rosen, Discrete Mathematics & its Applications, Sixth Edition, Mc Graw-Hill, 2007 Chapter 3 (Part 2): The Fundamentals: Algorithms, the.
Great Theoretical Ideas in Computer Science.
1 Properties of Integers Objectives At the end of this unit, students should be able to: State the division algorithm Apply the division algorithm Find.
9/2/2015Discrete Structures1 Let us get into… Number Theory.
Mathematics of Cryptography Part I: Modular Arithmetic
Module :MA3036NI Cryptography and Number Theory Lecture Week 7
Cryptography Inverses and GCD Piotr Faliszewski. GCD(a,b) gcd(a, 0) = a gcd(a, b) = gcd(b, a mod b) a = b*q + r Here: q =  a / b  r = a mod b (a –
CompSci 102 Discrete Math for Computer Science
Chinese Remainder Theorem Dec 29 Picture from ………………………
Chapter 2 (Part 1): The Fundamentals: Algorithms, the Integers & Matrices The Integers and Division (Section 2.4)
Foundations of Discrete Mathematics Chapter 4 By Dr. Dalia M. Gil, Ph.D.
MA/CSSE 473 Day 08 Extended Euclid's Algorithm Modular Division Fermat's little theorem.
Tuesday’s lecture: Today’s lecture: One-way permutations (OWPs)
Ref: Pfleeger96, Ch.31 Properties of Arithmetic Reference: Pfleeger, Charles P., Security in Computing, 2nd Edition, Prentice Hall, 1996.
Lecture 3.1: Public Key Cryptography I CS 436/636/736 Spring 2015 Nitesh Saxena.
Cryptography Lecture 14 Arpita Patra © Arpita Patra.
Divisibility and Modular Arithmetic
1 Discrete Structures – CNS2300 Text Discrete Mathematics and Its Applications Kenneth H. Rosen (5 th Edition) Chapter 2 The Fundamentals: Algorithms,
Ch04-Number Theory and Cryptography 1. Introduction to Number Theory Number theory is about integers and their properties. We will start with the basic.
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.
Number Theory Lecture 1 Text book: Discrete Mathematics and its Applications, 7 th Edition.
Great Theoretical Ideas in Computer Science.
Chapter 3 The Fundamentals: Algorithms, the integers, and matrices Section 3.4: The integers and division Number theory: the part of mathematics involving.
Dr Nazir A. Zafar Advanced Algorithms Analysis and Design Advanced Algorithms Analysis and Design By Dr. Nazir Ahmad Zafar.
Number Theory. Introduction to Number Theory Number theory is about integers and their properties. We will start with the basic principles of divisibility,
Relations Chapter 9 Copyright © McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill.
Discrete Math II Howon Kim
CS 210 Discrete Mathematics The Integers and Division (Section 3.4)
B504/I538: Introduction to Cryptography
Topic 12: Number Theory Basics (2)
Advanced Algorithms Analysis and Design
Advanced Algorithms Analysis and Design
Lecture 3.2: Public Key Cryptography II
Integers and Division Section 3.4.
Numerical Algorithms x x-1 Numerical Algorithms
CMSC Discrete Structures
MATH301- DISCRETE MATHEMATICS Copyright © Nahid Sultana Dr. Nahid Sultana Chapter 4: Number Theory and Cryptography.
Number Theory and Modular Arithmetic
Numerical Algorithms x x-1
Applied Discrete Mathematics Week 4: Number Theory
Number Theory (Chapter 7)
Great Theoretical Ideas in Computer Science
Number Theory.
Foundations of Discrete Mathematics
刘振 上海交通大学 计算机科学与工程系 电信群楼3-509
Lecture 3.1: Public Key Cryptography I
Algorithmic Number Theory and Cryptography (CS 303) Modular Arithmetic
CMSC 203, Section 0401 Discrete Structures Fall 2004 Matt Gaston
Copyright © Zeph Grunschlag,
Divisibility and Modular Arithmetic
Applied Discrete Mathematics Week 10: Introduction to Counting
Clements MAΘ October 30th, 2014
Number Theory.
Number Theory.
Presentation transcript:

Topic 6: Number Theory Basics Cryptography CS 555 Topic 6: Number Theory Basics CS555 Spring 2012/Topic 6

Outline and Readings Outline Readings: Divisibility, Prime and composite numbers, The Fundamental theorem of arithmetic, Greatest Common Divisor, Modular operation, Congruence relation The Extended Euclidian Algorithm Solving Linear Congruence Readings: Katz and Lindell: 7.1.1, 7.1.2 CS555 Spring 2012/Topic 6

Divisibility Definition Given integers a and b, with a  0, a divides b (denoted a|b) if  integer k, s.t. b = ak. a is called a divisor of b, and b a multiple of a. Proposition: (1) If a  0, then a|0 and a|a. Also, 1|b for every b (2) If a|b and b|c, then a | c. (3) If a|b and a|c, then a | (sb + tc) for all integers s and t. am = b an = c (bx+cy) = amx + any = a(mx+ny) so a divides bx +cy B/a = q + alfa, so b = aq + aalfa Uniqueness: assume 2 expressions Q-q’ = (r’-r)/a, but -1<r, r’<a so -1 < (r-r’)/a < 1 -1 < q-q’<1 so q=q’ and r=r’ so the prepresentation is unique CS555 Spring 2012/Topic 6

Divisibility (cont.) Theorem (Division algorithm) Given integers a, b such that a>0, a<b then there exist two unique integers q and r, 0  r < a s.t. b = aq + r. Proof: Uniqueness of q and r: assume  q’ and r’ s.t b = aq’ + r’, 0  r’< a, q’ integer then aq + r=aq’ + r’  a(q-q’)=r’-r  q-q’ = (r’-r)/a as 0  r,r’ <a  -a < (r’-r) < a  -1 < (r’-r)/a < 1 So -1 < q-q’ < 1, but q-q’ is integer, therefore q = q’ and r = r’ CS555 Spring 2012/Topic 6

Prime and Composite Numbers Definition An integer n > 1 is called a prime number if its positive divisors are 1 and n. Any integer number n > 1 that is not prime, is called a composite number. Example Prime numbers: 2, 3, 5, 7, 11, 13, 17 … Composite numbers: 4, 6, 25, 900, 17778, … CS555 Spring 2012/Topic 6

Decomposition in Product of Primes Theorem (Fundamental Theorem of Arithmetic) Any integer number n > 1 can be written as a product of prime numbers (>1), and the product is unique if the numbers are written in increasing order. Example: 84 = 2237 CS555 Spring 2012/Topic 6

Classroom Discussion Question (Not a Quiz) Are the total number of prime numbers finite or infinite? CS555 Spring 2012/Topic 6

Greatest Common Divisor (GCD) Definition Given integers a > 0 and b > 0, we define gcd(a, b) = c, the greatest common divisor (GCD), as the greatest number that divides both a and b. Example gcd(256, 100)=4 Two integers a > 0 and b > 0 are relatively prime if gcd(a, b) = 1. 25 and 128 are relatively prime. CS555 Spring 2012/Topic 6

GCD as a Linear Combination Theorem Given integers a, b > 0 and a > b, then d = gcd(a,b) is the least positive integer that can be represented as ax + by, x, y integer numbers. Proof: Let t be the smallest positive integer s.t. t = ax + by. We have d | a and d | b  d | ax + by, so d | t, so d  t. We now show t ≤ d. First t | a; otherwise, a = tu + r, 0 < r < t; r = a - ut = a - u(ax+by) = a(1-ux) + b(-uy), so we found another linear combination and r < t. Contradiction. Similarly t | b, so t is a common divisor of a and b, thus t ≤ gcd (a, b) = d. So t = d. Example gcd(100, 36) = 4 = 4  100 – 11  36 = 400 - 396 CS555 Spring 2012/Topic 6

GCD and Multiplication Theorem Given integers a, b, m >1. If gcd(a, m) = gcd(b, m) = 1, then gcd(ab, m) = 1 Proof idea: ax + ym = 1 = bz + tm Find u and v such that (ab)u + mv = 1 CS555 Spring 2012/Topic 6

GCD and Division Theorem Given integers a>0, b, q, r, such that b = aq + r, then gcd(b, a) = gcd(a, r). Proof: Let gcd(b, a) = d and gcd(a, r) = e, this means d | b and d | a, so d | b - aq , so d | r Since gcd(a, r) = e, we obtain d ≤ e. e | a and e | r, so e | aq + r , so e | b, Since gcd(b, a) = d, we obtain e ≤ d. Therefore d = e CS555 Spring 2012/Topic 6

Finding GCD Using the Theorem: Given integers a>0, b, q, r, such that b = aq + r, then gcd(b, a) = gcd(a, r). Euclidian Algorithm Find gcd (b, a) while a 0 do r  b mod a b  a a  r return b CS555 Spring 2012/Topic 6

Euclidian Algorithm Example Find gcd(143, 110) 143 = 1  110 + 33 110 = 3  33 + 11 33 = 3  11 + 0 gcd (143, 110) = 11 gcd(91,63) CS555 Spring 2012/Topic 6

Modulo Operation Definition: Example: 7 mod 3 = 1 -7 mod 3 = 2 CS555 Spring 2012/Topic 6

Congruence Relation Definition: Let a, b, n be integers with n>0, we say that a  b (mod n), if a – b is a multiple of n. Properties: a  b (mod n) if and only if n | (a – b) if and only if n | (b – a) if and only if a = b+k·n for some integer k if and only if b = a+k·n for some integer k E.g., 327 (mod 5), -1237 (mod 7), 1717 (mod 13) CS555 Spring 2012/Topic 6

Properties of the Congruence Relation Proposition: Let a, b, c, n be integers with n>0 a  0 (mod n) if and only if n | a a  a (mod n) a  b (mod n) if and only if b  a (mod n) if a  b and b  c (mod n), then a  c (mod n) Corollary: Congruence modulo n is an equivalence relation. Every integer is congruent to exactly one number in {0, 1, 2, …, n–1} modulo n CS555 Spring 2012/Topic 6

Equivalence Relation Definition A binary relation R over a set Y is a subset of Y  Y. We denote a relation (a,b)  R as aRb. example of relations over integers? A relation is an equivalence relation on a set Y, if R is Reflexive: aRa for all a  R Symmetric: for all a, b  R, aRb  bRa . Transitive: for all a,b,c  R, aRb and bRc  aRc Example “=“ is an equivalence relation on the set of integers CS555 Spring 2012/Topic 6

More Properties of the Congruence Relation Proposition: Let a, b, c, n be integers with n>0 If a  b (mod n) and c  d (mod n), then: a + c  b + d (mod n), a – c  b – d (mod n), a·c  b·d (mod n) E.g., 5  12 (mod 7) and 3  -4 (mod 7), then, … CS555 Spring 2012/Topic 6

Multiplicative Inverse Definition: Given integers n>0, a, b, we say that b is a multiplicative inverse of a modulo n if ab  1 (mod n). Proposition: Given integers n>0 and a, then a has a multiplicative inverse modulo n if and if only if a and n are relatively prime. CS555 Spring 2012/Topic 6

Towards Extended Euclidian Algorithm Theorem: Given integers a, b > 0, then d = gcd(a,b) is the least positive integer that can be represented as ax + by, x, y integer numbers. How to find such x and y? CS555 Spring 2012/Topic 6

The Extended Euclidian Algorithm First computes b = q1a + r1 a = q2r1 + r2 r1 = q3r2 + r3  rk-3 =qk-1rk-2+rk-1 rk-2 = qkrk-1 Then computes x0 = 0 x1 = 1 x2 = -q1x1+x0  xk = -qk-1xk-1+xk-2 And y0 = 1 y1 = 0 y2 = -q1y1+y0  yk = -qk-1yk-1+yk-2 We have axk + byk = rk-1 = gcd(a,b) CS555 Spring 2012/Topic 6

Extended Euclidian Algorithm Extended_Euclidian (a,b) x=1; y=0; d=a; r=0; s=1; t=b; while (t>0) { q = d/t; u=x-qr; v=y-qs; w=d-qt; x=r; y=s; d=t; r=u; s=v; t=w; } return (d, x, y) end Invariants: ax + by = d ar + bs = t CS555 Spring 2012/Topic 6

Another Way Find gcd(143, 111) 32 = 143  1  111 143 = 1  111 + 32 32 = 143  1  111 15 = 111  3  32 = 4111  3 143 2 = 32  2  15 = 7 143  9  111 1 = 15 - 7  2 = 67  111 – 52  143 143 = 1  111 + 32 111 = 3  32 + 15 = 2  15 + 2 15 = 7  2 + 1 gcd (143, 111) = 1 CS555 Spring 2012/Topic 6

Linear Equation Modulo n If gcd(a, n) = 1, the equation has a unique solution, 0< x < n. This solution is often represented as a-1 mod n Proof: if ax1  1 (mod n) and ax2  1 (mod n), then a(x1-x2)  0 (mod n), then n | a(x1-x2), then n | (x1-x2), then x1-x2=0 How to compute a-1 mod n? CS555 Spring 2012/Topic 6

Examples Example 1: Observe that 3·5  1 (mod 7). Let us try to solve 3·x+4  3 (mod 7). Subtracts 4 from both side, 3·x  -1 (mod 7). We know that -1  6 (mod 7). Thus 3·x  6 (mod 7). Multiply both side by 5, 3·5·x  5·6 (mod 7). Thus, x  1·x  3·5·x  5·6  30  2 (mod 7). Thus, any x that satisfies 3·x+4  3 (mod 7) must satisfy x  2 (mod 7) and vice versa. Question: To solve that 2x  2 (mod 4). Is the solution x1 (mod 4)? CS555 Spring 2012/Topic 6

Linear Equation Modulo (cont.) To solve the equation When gcd(a,n)=1, compute x = a-1 b mod n. When gcd(a,n) = d >1, do the following If d does not divide b, there is no solution. Assume d|b. Solve the new congruence, get x0 The solutions of the original congruence are x0, x0+(n/d), x0+2(n/d), …, x0+(d-1)(n/d) (mod n). CS555 Spring 2012/Topic 6

Solving Linear Congruences Theorem: Let a, n, z, z’ be integers with n>0. If gcd(a,n)=1, then azaz’ (mod n) if and only if zz’ (mod n). More generally, if d:=gcd(a,n), then azaz’ (mod n) if and only if zz’ (mod n/d). Example: 5·2  5·-4 (mod 6) 3·5  3·3 (mod 6) CS555 Spring 2012/Topic 6

Coming Attractions … More on secure encryption Reading: Katz & Lindell: 3.4, 3.5, 3.6 CS555 Spring 2012/Topic 6