Lecture 6: Finite Fields (PART 3) PART 3: Polynomial Arithmetic. Theoretical Underpinnings of Modern Cryptography

Similar documents
The finite field with 2 elements The simplest finite field is

Copy in your notebook: Add an example of each term with the symbols used in algebra 2 if there are any.

Chapter 4, Arithmetic in F [x] Polynomial arithmetic and the division algorithm.

Factoring Polynomials

minimal polyonomial Example

H/wk 13, Solutions to selected problems

Quotient Rings and Field Extensions

CYCLIC REDUNDANCY CHECKS IN USB. Introduction. Two-minute mathematical background

JUST THE MATHS UNIT NUMBER 1.8. ALGEBRA 8 (Polynomials) A.J.Hobson

r + s = i + j (q + t)n; 2 rs = ij (qj + ti)n + qtn.

SOLVING POLYNOMIAL EQUATIONS

Introduction to Finite Fields (cont.)

7. Some irreducible polynomials

Modern Algebra Lecture Notes: Rings and fields set 4 (Revision 2)

Factorization Algorithms for Polynomials over Finite Fields

The Division Algorithm for Polynomials Handout Monday March 5, 2012

Chapter 13: Basic ring theory

Unique Factorization

Cryptography and Network Security. Prof. D. Mukhopadhyay. Department of Computer Science and Engineering. Indian Institute of Technology, Kharagpur

Basics of Polynomial Theory

PROBLEM SET 6: POLYNOMIALS

Application. Outline. 3-1 Polynomial Functions 3-2 Finding Rational Zeros of. Polynomial. 3-3 Approximating Real Zeros of.

U.C. Berkeley CS276: Cryptography Handout 0.1 Luca Trevisan January, Notes on Algebra

9. POLYNOMIALS. Example 1: The expression a(x) = x 3 4x 2 + 7x 11 is a polynomial in x. The coefficients of a(x) are the numbers 1, 4, 7, 11.

Pre-Calculus II Factoring and Operations on Polynomials

3 1. Note that all cubes solve it; therefore, there are no more

Breaking The Code. Ryan Lowe. Ryan Lowe is currently a Ball State senior with a double major in Computer Science and Mathematics and

(a) Write each of p and q as a polynomial in x with coefficients in Z[y, z]. deg(p) = 7 deg(q) = 9

Some facts about polynomials modulo m (Full proof of the Fingerprinting Theorem)

Lagrange Interpolation is a method of fitting an equation to a set of points that functions well when there are few points given.

3.6 The Real Zeros of a Polynomial Function

Determinants can be used to solve a linear system of equations using Cramer s Rule.

63. Graph y 1 2 x and y 2 THE FACTOR THEOREM. The Factor Theorem. Consider the polynomial function. P(x) x 2 2x 15.

CHAPTER SIX IRREDUCIBILITY AND FACTORIZATION 1. BASIC DIVISIBILITY THEORY

EMBEDDING DEGREE OF HYPERELLIPTIC CURVES WITH COMPLEX MULTIPLICATION

Module MA3411: Abstract Algebra Galois Theory Appendix Michaelmas Term 2013

3.2 The Factor Theorem and The Remainder Theorem

Mathematics Course 111: Algebra I Part IV: Vector Spaces

Polynomials. Key Terms. quadratic equation parabola conjugates trinomial. polynomial coefficient degree monomial binomial GCF

8 Primes and Modular Arithmetic

it is easy to see that α = a

Basic Algorithms In Computer Algebra

Algebra Unpacked Content For the new Common Core standards that will be effective in all North Carolina schools in the school year.

2.3. Finding polynomial functions. An Introduction:

3.6. The factor theorem

3.1. RATIONAL EXPRESSIONS

a 1 x + a 0 =0. (3) ax 2 + bx + c =0. (4)

Chapter 7 - Roots, Radicals, and Complex Numbers

Chapter 4 -- Decimals

Factorization in Polynomial Rings

Math Review. for the Quantitative Reasoning Measure of the GRE revised General Test

Notes 11: List Decoding Folded Reed-Solomon Codes

A New Generic Digital Signature Algorithm

b) since the remainder is 0 I need to factor the numerator. Synthetic division tells me this is true

calculating the result modulo 3, as follows: p(0) = = 1 0,

FACTORING POLYNOMIALS IN THE RING OF FORMAL POWER SERIES OVER Z

Algebra I Vocabulary Cards

Lecture 13 - Basic Number Theory.

Groups in Cryptography

EXERCISES FOR THE COURSE MATH 570, FALL 2010

1 Homework 1. [p 0 q i+j p i 1 q j+1 ] + [p i q j ] + [p i+1 q j p i+j q 0 ]

FACTORING SPARSE POLYNOMIALS

PUTNAM TRAINING POLYNOMIALS. Exercises 1. Find a polynomial with integral coefficients whose zeros include

Recall the process used for adding decimal numbers. 1. Place the numbers to be added in vertical format, aligning the decimal points.

CS 103X: Discrete Structures Homework Assignment 3 Solutions

The Greatest Common Factor; Factoring by Grouping

Vocabulary Words and Definitions for Algebra

ABSTRACT ALGEBRA: A STUDY GUIDE FOR BEGINNERS

Non-unique factorization of polynomials over residue class rings of the integers

6.1 The Greatest Common Factor; Factoring by Grouping

Basic Properties of Rational Expressions

2.4 Real Zeros of Polynomial Functions

CORRELATED TO THE SOUTH CAROLINA COLLEGE AND CAREER-READY FOUNDATIONS IN ALGEBRA

a. all of the above b. none of the above c. B, C, D, and F d. C, D, F e. C only f. C and F

Factoring Polynomials

Cryptography and Network Security Number Theory

Algebra 3: algorithms in algebra

Erasure Codes Made So Simple, You ll Really Like Them

ADDITIVE GROUPS OF RINGS WITH IDENTITY

Modern Block Cipher Standards (AES) Debdeep Mukhopadhyay

Paramedic Program Pre-Admission Mathematics Test Study Guide

The Euclidean Algorithm

First and raw version september 2013 klokken 13:45

POLYNOMIAL FUNCTIONS

Prime Numbers and Irreducible Polynomials

Discrete Mathematics, Chapter 4: Number Theory and Cryptography

Factoring & Primality

1.3 Polynomials and Factoring

The Factor Theorem and a corollary of the Fundamental Theorem of Algebra

MOP 2007 Black Group Integer Polynomials Yufei Zhao. Integer Polynomials. June 29, 2007 Yufei Zhao

SUBGROUPS OF CYCLIC GROUPS. 1. Introduction In a group G, we denote the (cyclic) group of powers of some g G by

FACTORING IN QUADRATIC FIELDS. 1. Introduction. This is called a quadratic field and it has degree 2 over Q. Similarly, set

Introduction to Modern Algebra

POLYNOMIAL RINGS AND UNIQUE FACTORIZATION DOMAINS

Stupid Divisibility Tricks

ADDITION. Children should extend the carrying method to numbers with at least four digits.

Lecture Notes on Polynomials

Number Theory Hungarian Style. Cameron Byerley s interpretation of Csaba Szabó s lectures

Short Programs for functions on Curves

Transcription:

Lecture 6: Finite Fields (PART 3) PART 3: Polynomial Arithmetic Theoretical Underpinnings of Modern Cryptography Lecture Notes on Computer and Network Security by Avi Kak (kak@purdue.edu) January 29, 2015 3:28pm c 2015 Avinash Kak, Purdue University Goals: To review polynomial arithmetic Polynomial arithmetic when the coefficients are drawn from a finite field The concept of an irreducible polynomial Polynomials over the GF(2) finite field 1

CONTENTS Section Title Page 6.1 Polynomial Arithmetic 3 6.2 Arithmetic Operations on Polynomials 5 6.3 Dividing One Polynomial by Another Using Long 7 Division 6.4 Arithmetic Operations on Polynomial Whose 9 Coefficients Belong to a Finite Field 6.5 Dividing Polynomials Defined over a Finite Field 11 6.6 Let s Now Consider Polynomials Defined 13 over GF(2) 6.7 Arithmetic Operations on Polynomials 15 over GF(2) 6.8 So What Sort of Questions Does Polynomial 17 Arithmetic Address? 6.9 Polynomials over a Finite Field Constitute a Ring 18 6.10 When is Polynomial Division Permitted? 20 6.11 Irreducible Polynomials, Prime Polynomials 22 6.12 Homework Problems 23 2

6.1: POLYNOMIAL ARITHMETIC Why study polynomial arithmetic? As you will see in the next lecture, defining finite fields over sets of polynomials will allow us to create a finite set of numbers that are particularly appropriate for digital computation. Since these numbers will constitute a finite field, we will be able to carry out all arithmetic operations on them in particular the operation of division without error. A polynomial is an expression of the form a n x n + a n 1 x n 1 +... + a 1 x + a 0 for some non-negative integer n and where the coefficients a 0, a 1,..., a n are drawn from some designated set S. S is called the coefficient set. When a n 0, we have a polynomial of degree n. 3

A zeroth-degree polynomial is called a constant polynomial. Polynomial arithmetic deals with the addition, subtraction, multiplication, and division of polynomials. Note that we have no interest in evaluating the value of a polynomial for a specific value of the variable x. 4

6.2: ARITHMETIC OPERATIONS ON POLYNOMIALS We can add two polynomials: f(x) = a 2 x 2 + a 1 x + a 0 g(x) = b 1 x + b 0 f(x) + g(x) = a 2 x 2 + (a 1 +b 1 )x + (a 0 +b 0 ) We can subtract two polynomials: f(x) = a 2 x 2 + a 1 x + a 0 g(x) = b 3 x 3 + b 0 f(x) g(x) = b 3 x 3 +a 2 x 2 + a 1 x + (a 0 b 0 ) We can multiply two polynomials: f(x) = a 2 x 2 + a 1 x + a 0 g(x) = b 1 x + b 0 f(x) g(x) = a 2 b 1 x 3 +(a 2 b 0 +a 1 b 1 )x 2 +(a 1 b 0 +a 0 b 1 )x+a 0 b 0 5

We can divide two polynomials(result obtained by long division): f(x) = a 2 x 2 + a 1 x + a 0 g(x) = b 1 x + b 0 f(x) / g(x) =? 6

6.3: DIVIDING ONE POLYNOMIAL BY ANOTHER USING LONG DIVISION Let s say we want to divide the polynomial 8x 2 + 3x + 2 by the polynomial 2x + 1: Inthisexample, ourdividendis8x 2 + 3x + 2andthedivisor is 2x + 1. We now need to find the quotient. Long division for polynomials consists of the following steps: Arrange both the dividend and the divisor in the descending powers of the variable. Divide the first term of the dividend by the first term of the divisor and write the result as the first term of the quotient. In our example, the first term of the dividend is 8x 2 and the first term of the divisor is 2x. So the first term of the quotient is 4x. 7

Multiply the divisor with the quotient term just obtained and arrange the result under the dividend so that the same powers of x match up. Subtract the expression just laid out from the dividend. In our example, 4x times 2x + 1 is 8x 2 + 4x. Subtracting this from the dividend yields x + 2. Consider the result of the above subtraction as the new dividend and go back to the first step. (The new dividend in our case is x + 2). In our example, dividing 8x 2 + 3x + 2 by 2x + 1 yields a quotient of 4x 0.5 and a remainder of 2.5. Therefore, we can write 8x 2 + 3x + 2 2x + 1 = 4x 0.5 + 2.5 2x + 1 8

6.4: ARITHMETIC OPERATIONS ON POLYNOMIALS WHOSE COEFFICIENTS BELONG TO A FINITE FIELD Let s consider the set of all polynomials whose coefficients belong tothe finitefieldz 7 (whichis the sameas GF(7)). (See Section 5.5 of Lecture 5 for the GF(p) notation.) Here is an example of adding two such polynomials: f(x) = 5x 2 + 4x + 6 g(x) = 2x + 1 f(x) + g(x) = 5x 2 + 6x Here is an example of subtracting two such polynomials: f(x) = 5x 2 + 4x + 6 g(x) = 2x + 1 f(x) g(x) = 5x 2 + 2x + 5 9

since the additive inverse of 2 in Z 7 is 5 and that of 1 is 6. So 4x 2x is the same as 4x + 5x and 6 1 is the same as 6 + 6, with both additions modulo 7. Here is an example of multiplying two such polynomials: f(x) = 5x 2 + 4x + 6 g(x) = 2x + 1 f(x) g(x) = 3x 3 + 6x 2 + 2x + 6 Here is an example of dividing two such polynomials: f(x) = 5x 2 + 4x + 6 g(x) = 2x + 1 f(x) / g(x) = 6x + 6 If you multiply the divisor 2x + 1 with the quotient 6x + 6, you get the dividend 5x 2 + 4x + 6. 10

6.5: DIVIDING POLYNOMIALS DEFINED OVER A FINITE FIELD First note that we say that a polynomial is defined over a field if all its coefficients are drawn from the field. It is also commonto use the phrase polynomial over a field to convey the same meaning. Dividing polynomials defined over a finite field is a littlebit more frustrating than performing other arithmetic operations on such polynomials. Now your mental gymnastics must include both additive inverses and multiplicative inverses. Consider again the polynomials defined over GF(7). Let s say we want to divide 5x 2 + 4x + 6 by 2x + 1. In a long division, we must start by dividing 5x 2 by 2x. This requiresthatwedivide5by2ingf(7). Dividing5by2isthesame 11

as multiplying 5 by the multiplicative inverse of 2. Multiplicative inverse of 2 is 4 since 2 4 mod 7 is 1. So we have 5 2 = 5 2 1 = 5 4 = 20 mod 7 = 6 Therefore, the first term of the quotient is 6x. Since the product of6xand2x + 1is5x 2 + 6x,weneedtosubtract5x 2 + 6xfrom the dividend 5x 2 + 4x + 6. The result is (4 6)x + 6, which (since the additive inverse of 6 is 1) is the sameas (4 + 1)x + 6, and that is the same as 5x + 6. Our new dividend for the next round of long division is therefore 5x + 6. To find the next quotient term, we need to divide 5x by the first term of the divisor, that is by 2x. Reasoning as before, we see that the next quotient term is again 6. The final result is that when the coefficients are drawn from the set GF(7), 5x 2 + 4x + 6 divided by 2x + 1 yields a quotient of 6x + 6 and the remainder is zero. So we can say that as a polynomial defined over the field GF(7), 5x 2 + 4x + 6 is a product of two factors, 2x + 1 and 6x + 6. We can therefore write 5x 2 + 4x + 6 = (2x + 1) (6x + 6) 12

6.6: LET S NOW CONSIDER POLYNOMIALS DEFINED OVER GF(2) Recall from Section 5.5 of Lecture 5 that the notation GF(2) means the same thing as Z 2. We are obviously talking about arithmetic modulo 2. First of all, GF(2) is a sweet little finite field. Recall that the number2isthefirstprime. [For a number to be prime, it must have exactly two distinct divisors, 1 and itself.] GF(2) consists of the set {0, 1}. The two elements of this set obey the following addition and multiplication rules: 0 + 0 = 0 0 X 0 = 0 0 + 1 = 1 0 X 1 = 0 1 + 0 = 1 1 X 0 = 0 1 + 1 = 0 1 X 1 = 1 0-0 = 0 1-0 = 1 0-1 = 0 + 1 = 1 1-1 = 1 + 1 = 0 13

So the addition over GF(2) is equivalent to the logical XOR operation, and multiplication to the logical AND operation. Examples of polynomials defined over GF(2): x 3 + x 2 1 x 5 + x 4 x 2 + 1 x + 1 14

6.7: ARITHMETIC OPERATIONS ON POLYNOMIALS OVER GF(2) Here is an example of adding two such polynomials: f(x) = x 2 + x + 1 g(x) = x + 1 f(x) + g(x) = x 2 Here is an example of subtracting two such polynomials: f(x) = x 2 + x + 1 g(x) = x + 1 f(x) g(x) = x 2 Here is an example of multiplying two such polynomials: f(x) = x 2 + x + 1 g(x) = x + 1 f(x) g(x) = x 3 + 1 15

Here is an example of dividing two such polynomials: f(x) = x 2 + x + 1 g(x) = x + 1 f(x) / g(x) = x + 1 x + 1 If you multiply the divisor x + 1 with the quotient x, you get x 2 + x that when added to the remainder 1 gives us back the dividend x 2 + x + 1. 16

6.8: SO WHAT SORT OF QUESTIONS DOES POLYNOMIAL ARITHMETIC ADDRESS? Given two polynomials whose coefficients are derived from a set S, what can we say about the coefficients of the polynomial that results from an arithmetic operation on the two polynomials? If we insist that the polynomial coefficients all come from a particular S, then which arithmetic operations are permitted and which prohibited? Let s say that the coefficient set is a finite field F with its own rules for addition, subtraction, multiplication, and division, and let s further say that when we carry out an arithmetic operation on two polynomials, we subject the operations on the coefficients to those that apply to the finite field F. Now what can be said about the set of such polynomials? 17

6.9: POLYNOMIALS OVER A FIELD CONSTITUTE A RING The group operator is polynomial addition, with the addition of the coefficients carried out as dictated by the field used for the coefficients. The polynomial 0 is obviously the identity element with respect to polynomial addition. Polynomial addition is associative and commutative. The set of all polynomials over a given field is closed under polynomial addition. We can show that polynomial multiplication distributes over polynomial addition. 18

We can also show polynomial multiplication is associative. Therefore, the set of all polynomials over a field constitutes a ring. Such a ring is also called the polynomial ring. Since polynomial multiplication is commutative, the set of polynomials over a field is actually a commutative ring. In light of the constraints we have placed on what constitutes a polynomial, it does not make sense to talk about multiplicative inverses of polynomials in the set of all possible polynomials that can be defined over a finitefield. (Recall that our polynomialsdo not contain negative powers of x.) Nevertheless, as you will see in the next lecture, it is possible for a finite set of polynomials, whose coefficients are drawn from a finite field, to constitute a finite field. 19

6.10: WHEN IS POLYNOMIAL DIVISION PERMITTED? Polynomial division is obviously not allowed for polynomials that are not defined over fields. For example, for polynomials defined over the set of all integers, you cannot divide 4x 2 + 5 by the polynomial 5x. If you tried, the first term of the quotient would be (4/5)x where the coefficient of x is not an integer. You can always divide polynomials defined over a field. What that means is that the operation of division is legal when the coefficients are drawn from a finite field. Note that, in general, when you divide one such polynomial by another, you will end up with a remainder, as is the case when, in general, you divide one integer by another integer in purely integer arithmetic. Therefore, in general, for polynomials defined over a field, the divisionof a polynomialf(x) of degree m by another polynomial g(x) of degree n m can be expressed by f(x) g(x) = q(x) + r(x) g(x) 20

where q(x) is the quotient and r(x) the remainder. So we can write for any two polynomials defined over a field f(x) = q(x)g(x) + r(x) assuming that the degree of f(x) is not less than that of g(x). When r(x) is zero, we say that g(x) divides f(x). This fact can also be expressed by saying that g(x) is a divisor of f(x) and by the notation g(x) f(x). 21

6.11: IRREDUCIBLE POLYNOMIALS, PRIME POLYNOMIALS Wheng(x)dividesf(x)withoutleavingaremainder,wesayg(x) is a factor of f(x). A polynomial f(x) over a field F is called irreducible if f(x) cannot be expressed as a product of two polynomials, both over F and both of degree lower than that of f(x). An irreducible polynomial is also referred to as a prime polynomial. 22

6.12: HOMEWORK PROBLEMS 1. Where is our main focus in studying polynomial arithmetic: a) in evaluating the value of a polynomial for different values of the variablexand investigatinghow the valueof the polynomial changes as x changes; or b) in adding, subtracting, multiplying, and dividing the polynomials and figuring out how to characterize a given set of polynomials with respect to such operations. 2. What is the first thing you do when you divide one polynomial by another via long division? 3. What do we mean by the phrase polynomial over a field? 4. Divide by 23x+4x+3 23

5x+6 assuming that the polynomials are over the field Z 7. 5. Anything particularly noteworthy about the addition and the multiplication of the numbers in GF(2)? 6. Complete the following equalities for the numbers in GF(2): 1 + 1 =? 1 1 =? 1 =? 1 1 =? 1 1 =? 7. Calculate the result of the following if the polynomials are over GF(2): 24

(x 4 +x 2 +x+1) + (x 3 +1) (x 4 +x 2 +x+1) (x 3 +1) (x 4 +x 2 +x+1) (x 3 +1) (x 4 +x 2 +x+1) / (x 3 +1) 8. When is polynomial division permitted in general? 9. Whenthecoefficientsofpolynomialsaredrawnfromafinitefield, the set of polynomials constitutes a a group an Abelian group a ring a commutative ring an integral domain a field 10. What is an irreducible polynomial? 25