Prime Fields 04/05/2007. Hybrid system simulator for ODE 1. Galois field. The issue. Prime fields: naïve implementation

Size: px
Start display at page:

Download "Prime Fields 04/05/2007. Hybrid system simulator for ODE 1. Galois field. The issue. Prime fields: naïve implementation"

Transcription

1 Galois field The issue Topic: finite fields with word size cardinality Field: 4 arithmetic operators to implement (+, -, *, /) We will focus on axpy: r = a x + y (operation mainly used in linear algebra applications) Naïve dot product on a Pentium III, 1GHz: Int : 85 Millions of operations per second Z/ pz : 1 Millions of field operations per second GF(p 2 ) : 1 Million of field operations per second System division is very expensive Polynomial arithmetic is prohibitive Prime field, Z/ pz, (or Zp) : integers modulo a prime p Galois field, GF(q) : finite field of characteristic q=p k Isomorphic to Z/ pz [x]/q polynomials over Z/ pz modulo an irreducible polynomial Q of degree k 1. Reduce the constant factor Several representations and algorithms 2. Transform the constant into a decreasing function Specialize algorithms (ex.: dotproduct, matrix multiplication, LU triangularizations, etc.) Prime fields: naïve implementation Prime Fields Use system division to implement multiplication ADD : MUL : AXPY: r=(x + y); r = (r<p? r : r-p); r=(a x); r = (r<p? r : r%p); r=(a x + y); r = (r<p? r : r%p); Addition, subtraction are very fast Multiplication is slow Needs: Size(p 2 +p) < word size (p<46337 for 32 bits, p< for 64 bits) Hybrid system simulator for ODE 1

2 Prime fields: floating point implementation Using Generators All finite fields of same cardinality are isomorphic Stores a floating-point representation of the inverse of p AXPY: r=(a x + y); r -= floor( r 1/p ) p; Multiplication can be faster (no division used, but floor is also quite slow) Needs also: Size(p 2 +p) < word size The multiplicative group of invertibles is cyclic of cardinality p-1: 1. there exists a generator, g 2. each invertible element is a power of g Ex. in Z/ 7Z : 2 1 =2, 2 2 =4,2 3 =1, but 3 1 3, 3 2 2, 3 3 6, 3 4 4, 3 5 5, In Z/ mz, a generator of the invertibles is a primitive root If m=2,4,p k, 2p k, there are Φ(Φ(m)) primitive roots If m is prime, Φ(m-1) primitive roots They are the g k for k coprime with m-1 How to find a primitive root? Prime fields: primitive roots 1/2 First : a test to recognize one 1. Brute-force : try all possible exponents 2. Order of a divides φ(m), thus p prime and dividing φ(m) Thus a is a primtive root. Requires to factor m in order to compute φ(m) Factoring can be partial probable primitive root Then : Finding one? In 8% of the cases, it seems that there is one generator 6 Random tries: average of m-1/ Φ(m-1) < K ln(ln(m)) tries Takes less than.1s on 333MHz, for m<2 64 Then: pre-compute 3 tables takes less than 2s for fields of size less than ) Correspondence between x and i: t 1 [x] = i, s.t. x = g i 2) Correspondence between i and x: t 2 [i] = x, s.t. x = g i 3) «Plus one» table: t 3 [i] = j, s.t. 1+g i = g j [Conway]: perform operations only on the indices! a x : (g i g j ) % m = gi+j ±(m-1) and 1 have special values, for instance and m-1 [Imamura], [Hubert], [Douillet] can reduce the size of tables Hybrid system simulator for ODE 2

3 Prime fields: primitive roots 2/2 a = g i ; x = g j ; y = g k ; a x + y = g i g j + g k = g k (1+g i+j-k ) AXPY: r = i+j-k ; r = t 3 [r] + k ; and tests for zero, indices modulo m-1 Absolutely no system multiplication nor division Every operation is just a combination of tests, additions and table accesses. Prime fields: Montgomery reduction 1/2 System division is replaced by shifts and masks AXPY: 1. c = (a x); /* c = c h B + c l */ 2. unsigned long c (c & MASK); /* c mod B */ 3. c = (c * nim) & MASK; /* -c/p mod B */ 4. c += c * p; /* c = mod B */ 5. c >>= HALF_BITS; /* high bits of c */ 6. return (c>p?c-p:c); /* < c < 2p */ Indeed, RES 4 = c c l (p -1 mod B)p which is thus: modulo B and c modulo p Therefore, RES 5 = RES 4 / B corresponds to c B -1 mod p And we have computed c B -1 modulo p without any division by p Prime fields: Montgomery reduction 2/2 Sun Ultra 25 MHz The trick is that RES 5 is cb -1 mod p but of small size RES 5 < ( (p-1)² + (p-1)b) / B < p-1 + (p-1) Thus only a final subtraction by p might be necessary How to use cb -1? Change of representation : elements are stored as ab mod p Montgomery(aB x bb) cb -1 abbbb -1 abb mod p ab + bb (a+b)b mod p To print only, we need another reduction: Montgomery(aB) abb -1 a No division (replaced by shifts and masks), faster for many machines Smaller primes: Size(p 2 +p*half_word_size) < word size (p<4499 with 32 bits, p< with 64 bits) Speed (Mfop/s) %twice Z/pZ NTL GFq If Memory is fast / machine arithmetic: Tabulation wins p 2 tabulation possible, but pays either: Huge table size / cache misses supplementary additions [Kawame-Murao, MBLAS] AXPY Hybrid system simulator for ODE 3

4 Arithmetics modulo on a PIII 993 MHz Speed (Mfop/s) Montgomery Z/pZ NTL GFq PIII 993 MHz Speed (Mfop/s) Montgomery Z/pZ NTL GFq Better arithmetic, Division still slow: Montgomery wins Addition Soustraction Negation Multiplication Division AXPYIN AXPY AXPY Arithmetics modulo on a PIV 2.4 GHz Speed (Mfop/s) PIV 2.4 GHz 5 Montgomery Z/pZ NTL GFq Speed (Mfop/s) Montgomery Z/pZ NTL GFq Better division? NO! slowing down of Montgomery on PIV classical 2 6 Only 12 Mffop/s % of peak performances 5 AXPY Addition Soustraction Negation Multiplication Division AXPYIN AXPY Hybrid system simulator for ODE 4

5 Set Theory Extension Fields and polynomials Group (G,*) : * binary, internal, associative, neutral, every element has an inverse. An abelian group has * commutative A cyclic group contains at least one generator : g G, a G, i Z, a = g i Ring (A,+, ) : (A,+) abelian group, associative, distributive on +, neutral for (A est unitary). A* is the set of invertible elements by e.g.: (Z/nZ,+, ) where the invertibles a the coprime with n Field (A,+, ) : ring and A* = A\{} R, C, Q : infinite e.g. : Integers modulo a prime p (Z/pZ) : finite of size p Ring of polynomials on an abelian field Polynomial operations complexity G a field, then for a i G, we write P = a i X i G[X] In this ring, there is an euclidian division : A, B G[X] :! (Q, R) G[X] with deg(r) < deg(b) s.t. A = B.Q + R Therefore there is a gcd, and the Extended Euclidian Algorithm works. Two polynomials are coprime if their gcd G A polynomial is irreducible if it is coprime with all the polynomials of degree strictly less than his. There is a factorisation (unique up to a factor of G) into irreducible polynomials Polynomial complexity! [Berlekamp], [Cantor-Zassenhaus] e.g.: In Z/3Z, we have X 3 +X+1=(X-1)(X 2 +X-1) Addition : d additions of the field Multiplication Classical : O(d 2 ) additions/multiplications of the field Karatsuba : O(d ) additions/multiplications of the field If supports FFT : O(d log(d) ) additions/multiplications Euclide : O( Mult(d) log(d) ) field operations Factorizations [Cantor-Zassenhauss] : O ~ ( d 2 log(q) ) operations on GF(q) [Berlekamp] : O( d 3 + Mult(d)log(q) ) operations on GF(q) Hybrid system simulator for ODE 5

6 Fast polynomial product Quotient ring G[X]/P ω n-th root of unity 1. H = DFT( P ) = [ ; j p j ω kj ; ] H k = P( ω k ) 2. DFT( P Q ) = DFT(P). DFT(Q) one to one C k = H k G k = P(ω k ) Q(ω k ) = PQ(ω k ) 3. PQ = DFT -1 ( DFT(P). DFT(Q) ) = [ ; k C k ω kj ; ] Complexity : 3 transformations O(n log(n) ) 1 one to one product O(n) For a field G, P a degree d polynomial The set of polynomial of degree strictly less than d with addition and multiplication modulo P is a commutative ring When G =q, this ring has q d elements When P is irreducible, Euclide proves that it is a field e.g.: Z/3Z[X] / (X 2 +X-1) = {, 1, 2, X, X+1, X-1, 2X, 2X+1, 2X-1} And (X+1)(2X+1) = 2X 2 +1 = 2(X 2 +X-1)+X = X Proposition : p premier, d >, irreducibles exists Corollary : There exists a finite field of size p d Theorem : Those quotient rings are the only ones Some properties Irreducibility test Q et Z/pZ : prime fields GF(q) : Galois Field with q elements K = {k N*, k. 1 G = }; Characteristic : if K is empty (e.g.: R, C, Q) Smallest element in K (e.g.: p for Z/pZ) or prime! Size of finite field = power of its characteristic The set of invertibles GF(p k )* is cyclic of size p k -1 The order of an element is the smallest power s.t. x e = 1 The order always divides p k -1 Theorem : (X q ) r -X is the product of all the unitary irreducible polynomials of GF(q)[X] which degree divides r. Irreducibility test [Ben-Or] for P GF(q)[X] IF gcd(p,p ) 1 THEN Return «no» // Now P is square-free W = X FOR d=1 UNTIL d P / 2 DO W W q [P] IF gcd(w-x,p) 1 THEN Return «no» Return «yes» Hybrid system simulator for ODE 6

7 How ot build a finite field? How many irreducibles of degree d? about one over d Random tries : a mean of d tries Polynomial arithmetics is faster when the irreducible is sparse e.g.: AB=HX d +L mod (X d +a) = -ah + L Search first irreducible of the form: X d +a, X d +bx k +a With an irreducible polynomial, the arithmetic operations can be build, as is the field! Second implementation : generators GF(q d )* is cyclic There exists generators e.g.: Inside Z/3Z[X] / (X 2 +X-1) = {,1,2,X,X+1,X+2,2X,2X+1,2X+2} (X+1) = 1 (X+1) 1 = X+1 (X+1) 2 = X 2 +2X+1 = X+2 (X+1) 3 = (X+2)(X+1) = 2 X (X+1) 4 = 2 (X+1) 5 = 2X+2 (X+1) 6 = 2X+1 (X+1) 7 = X (X+1) 8 = 1 Test for generators 1. Brute force : try P and compute all the successive powers of R until 1 is found 2. But the order of R divides q d -1, thus THEN R is a generator We replaced degree d polynomial complexity by indices arithmetic! speed-up factor of at least d 2! Primitive polynomials tables : compute all the powers of a generator R Faster when P is sprase and R is simple There exists P s.t. X is a generator Called primitive, or X-irreducibles There are φ(q d -1)/d of them among p r polynomials For p < 2 32, the mean tries is < 12d Hybrid system simulator for ODE 7

8 X-irreducibility Building larger finite fields Build with tables : Fast arithmetics Needs O(p k ) memory units RAM size is the limit Build with polynomials : No memory issue Polynomial arithmetics Generation of discrete logarithm tables on a PII, 333 MHz Building a large GF(p d ) with d=kr Build an efficient GF(p k ) with memory fitting in RAM Find an irreducible polynomial of degree r in GF(p k ) Then GF(p d ) GF(p k ) [X] / P Hybrid system simulator for ODE 8

Congruences and Residue Class Rings

Congruences and Residue Class Rings Congruences and Residue Class Rings (Chapter 2 of J. A. Buchmann, Introduction to Cryptography, 2nd Ed., 2004) Shoichi Hirose Faculty of Engineering, University of Fukui S. Hirose (U. Fukui) Congruences

More information

Dense Linear Algebra over Finite Fields: the FFLAS and FFPACK packages

Dense Linear Algebra over Finite Fields: the FFLAS and FFPACK packages Dense Linear Algebra over Finite Fields: the FFLAS and FFPACK packages Jean-Guillaume Dumas, Thierry Gautier, Pascal Giorgi, Clément Pernet To cite this version: Jean-Guillaume Dumas, Thierry Gautier,

More information

CSIR - Algebra Problems

CSIR - Algebra Problems CSIR - Algebra Problems N. Annamalai DST - INSPIRE Fellow (SRF) Department of Mathematics Bharathidasan University Tiruchirappalli -620024 E-mail: algebra.annamalai@gmail.com Website: https://annamalaimaths.wordpress.com

More information

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties:

A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: Byte multiplication 1 Field arithmetic A field F is a set of numbers that includes the two numbers 0 and 1 and satisfies the properties: F is an abelian group under addition, meaning - F is closed under

More information

COMPUTER ARITHMETIC. 13/05/2010 cryptography - math background pp. 1 / 162

COMPUTER ARITHMETIC. 13/05/2010 cryptography - math background pp. 1 / 162 COMPUTER ARITHMETIC 13/05/2010 cryptography - math background pp. 1 / 162 RECALL OF COMPUTER ARITHMETIC computers implement some types of arithmetic for instance, addition, subtratction, multiplication

More information

arxiv:cs/ v2 [cs.sc] 19 Apr 2004

arxiv:cs/ v2 [cs.sc] 19 Apr 2004 Efficient dot product over word-size finite fields Jean-Guillaume Dumas Laboratoire de Modélisation et Calcul. 50 av. des Mathématiques, B.P. 53, 38041 Grenoble, France. Jean-Guillaume.Dumas@imag.fr, www-lmc.imag.fr/lmc-mosaic/jean-guillaume.dumas

More information

Chapter 4 Finite Fields

Chapter 4 Finite Fields Chapter 4 Finite Fields Introduction will now introduce finite fields of increasing importance in cryptography AES, Elliptic Curve, IDEA, Public Key concern operations on numbers what constitutes a number

More information

17 Galois Fields Introduction Primitive Elements Roots of Polynomials... 8

17 Galois Fields Introduction Primitive Elements Roots of Polynomials... 8 Contents 17 Galois Fields 2 17.1 Introduction............................... 2 17.2 Irreducible Polynomials, Construction of GF(q m )... 3 17.3 Primitive Elements... 6 17.4 Roots of Polynomials..........................

More information

Mathematical Foundations of Cryptography

Mathematical Foundations of Cryptography Mathematical Foundations of Cryptography Cryptography is based on mathematics In this chapter we study finite fields, the basis of the Advanced Encryption Standard (AES) and elliptical curve cryptography

More information

Galois fields/1. (M3) There is an element 1 (not equal to 0) such that a 1 = a for all a.

Galois fields/1. (M3) There is an element 1 (not equal to 0) such that a 1 = a for all a. Galois fields 1 Fields A field is an algebraic structure in which the operations of addition, subtraction, multiplication, and division (except by zero) can be performed, and satisfy the usual rules. More

More information

Fast Polynomial Multiplication

Fast Polynomial Multiplication Fast Polynomial Multiplication Marc Moreno Maza CS 9652, October 4, 2017 Plan Primitive roots of unity The discrete Fourier transform Convolution of polynomials The fast Fourier transform Fast convolution

More information

Q-adic Transform revisited

Q-adic Transform revisited Q-adic Transform revisited Jean-Guillaume Dumas To cite this version: Jean-Guillaume Dumas. Q-adic Transform revisited. 2007. HAL Id: hal-00173894 https://hal.archives-ouvertes.fr/hal-00173894v3

More information

D-MATH Algebra II FS18 Prof. Marc Burger. Solution 26. Cyclotomic extensions.

D-MATH Algebra II FS18 Prof. Marc Burger. Solution 26. Cyclotomic extensions. D-MAH Algebra II FS18 Prof. Marc Burger Solution 26 Cyclotomic extensions. In the following, ϕ : Z 1 Z 0 is the Euler function ϕ(n = card ((Z/nZ. For each integer n 1, we consider the n-th cyclotomic polynomial

More information

Finite Fields. Mike Reiter

Finite Fields. Mike Reiter 1 Finite Fields Mike Reiter reiter@cs.unc.edu Based on Chapter 4 of: W. Stallings. Cryptography and Network Security, Principles and Practices. 3 rd Edition, 2003. Groups 2 A group G, is a set G of elements

More information

Quasi-reducible Polynomials

Quasi-reducible Polynomials Quasi-reducible Polynomials Jacques Willekens 06-Dec-2008 Abstract In this article, we investigate polynomials that are irreducible over Q, but are reducible modulo any prime number. 1 Introduction Let

More information

MATH 3030, Abstract Algebra FALL 2012 Toby Kenney Midyear Examination Friday 7th December: 7:00-10:00 PM

MATH 3030, Abstract Algebra FALL 2012 Toby Kenney Midyear Examination Friday 7th December: 7:00-10:00 PM MATH 3030, Abstract Algebra FALL 2012 Toby Kenney Midyear Examination Friday 7th December: 7:00-10:00 PM Basic Questions 1. Compute the factor group Z 3 Z 9 / (1, 6). The subgroup generated by (1, 6) is

More information

Finite Fields. Saravanan Vijayakumaran Department of Electrical Engineering Indian Institute of Technology Bombay

Finite Fields. Saravanan Vijayakumaran Department of Electrical Engineering Indian Institute of Technology Bombay 1 / 25 Finite Fields Saravanan Vijayakumaran sarva@ee.iitb.ac.in Department of Electrical Engineering Indian Institute of Technology Bombay September 25, 2014 2 / 25 Fields Definition A set F together

More information

Discrete Logarithms. Let s begin by recalling the definitions and a theorem. Let m be a given modulus. Then the finite set

Discrete Logarithms. Let s begin by recalling the definitions and a theorem. Let m be a given modulus. Then the finite set Discrete Logarithms Let s begin by recalling the definitions and a theorem. Let m be a given modulus. Then the finite set Z/mZ = {[0], [1],..., [m 1]} = {0, 1,..., m 1} of residue classes modulo m is called

More information

NOTES ON FINITE FIELDS

NOTES ON FINITE FIELDS NOTES ON FINITE FIELDS AARON LANDESMAN CONTENTS 1. Introduction to finite fields 2 2. Definition and constructions of fields 3 2.1. The definition of a field 3 2.2. Constructing field extensions by adjoining

More information

Chapter 4 Mathematics of Cryptography

Chapter 4 Mathematics of Cryptography Chapter 4 Mathematics of Cryptography Part II: Algebraic Structures Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4.1 Chapter 4 Objectives To review the concept

More information

1. Group Theory Permutations.

1. Group Theory Permutations. 1.1. Permutations. 1. Group Theory Problem 1.1. Let G be a subgroup of S n of index 2. Show that G = A n. Problem 1.2. Find two elements of S 7 that have the same order but are not conjugate. Let π S 7

More information

Rings. EE 387, Notes 7, Handout #10

Rings. EE 387, Notes 7, Handout #10 Rings EE 387, Notes 7, Handout #10 Definition: A ring is a set R with binary operations, + and, that satisfy the following axioms: 1. (R, +) is a commutative group (five axioms) 2. Associative law for

More information

CIS 6930/4930 Computer and Network Security. Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography

CIS 6930/4930 Computer and Network Security. Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography CIS 6930/4930 Computer and Network Security Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography 1 Review of Modular Arithmetic 2 Remainders and Congruency For any integer a and any positive

More information

Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography

Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography Course 2BA1: Trinity 2006 Section 9: Introduction to Number Theory and Cryptography David R. Wilkins Copyright c David R. Wilkins 2006 Contents 9 Introduction to Number Theory and Cryptography 1 9.1 Subgroups

More information

Course MA2C02, Hilary Term 2013 Section 9: Introduction to Number Theory and Cryptography

Course MA2C02, Hilary Term 2013 Section 9: Introduction to Number Theory and Cryptography Course MA2C02, Hilary Term 2013 Section 9: Introduction to Number Theory and Cryptography David R. Wilkins Copyright c David R. Wilkins 2000 2013 Contents 9 Introduction to Number Theory 63 9.1 Subgroups

More information

Foundations of Cryptography

Foundations of Cryptography Foundations of Cryptography Ville Junnila viljun@utu.fi Department of Mathematics and Statistics University of Turku 2015 Ville Junnila viljun@utu.fi Lecture 7 1 of 18 Cosets Definition 2.12 Let G be a

More information

Chapter 8. P-adic numbers. 8.1 Absolute values

Chapter 8. P-adic numbers. 8.1 Absolute values Chapter 8 P-adic numbers Literature: N. Koblitz, p-adic Numbers, p-adic Analysis, and Zeta-Functions, 2nd edition, Graduate Texts in Mathematics 58, Springer Verlag 1984, corrected 2nd printing 1996, Chap.

More information

Section VI.33. Finite Fields

Section VI.33. Finite Fields VI.33 Finite Fields 1 Section VI.33. Finite Fields Note. In this section, finite fields are completely classified. For every prime p and n N, there is exactly one (up to isomorphism) field of order p n,

More information

Sets. We discuss an informal (naive) set theory as needed in Computer Science. It was introduced by G. Cantor in the second half of the nineteenth

Sets. We discuss an informal (naive) set theory as needed in Computer Science. It was introduced by G. Cantor in the second half of the nineteenth Sets We discuss an informal (naive) set theory as needed in Computer Science. It was introduced by G. Cantor in the second half of the nineteenth century. Most students have seen sets before. This is intended

More information

Outline. Some Review: Divisors. Common Divisors. Primes and Factors. b divides a (or b is a divisor of a) if a = mb for some m

Outline. Some Review: Divisors. Common Divisors. Primes and Factors. b divides a (or b is a divisor of a) if a = mb for some m Outline GCD and Euclid s Algorithm AIT 682: Network and Systems Security Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography Modulo Arithmetic Modular Exponentiation Discrete Logarithms

More information

Outline. AIT 682: Network and Systems Security. GCD and Euclid s Algorithm Modulo Arithmetic Modular Exponentiation Discrete Logarithms

Outline. AIT 682: Network and Systems Security. GCD and Euclid s Algorithm Modulo Arithmetic Modular Exponentiation Discrete Logarithms AIT 682: Network and Systems Security Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography Instructor: Dr. Kun Sun Outline GCD and Euclid s Algorithm Modulo Arithmetic Modular Exponentiation

More information

1/30: Polynomials over Z/n.

1/30: Polynomials over Z/n. 1/30: Polynomials over Z/n. Last time to establish the existence of primitive roots we rely on the following key lemma: Lemma 6.1. Let s > 0 be an integer with s p 1, then we have #{α Z/pZ α s = 1} = s.

More information

Algebra Review. Instructor: Laszlo Babai Notes by Vincent Lucarelli and the instructor. June 15, 2001

Algebra Review. Instructor: Laszlo Babai Notes by Vincent Lucarelli and the instructor. June 15, 2001 Algebra Review Instructor: Laszlo Babai Notes by Vincent Lucarelli and the instructor June 15, 2001 1 Groups Definition 1.1 A semigroup (G, ) is a set G with a binary operation such that: Axiom 1 ( a,

More information

Math 312/ AMS 351 (Fall 17) Sample Questions for Final

Math 312/ AMS 351 (Fall 17) Sample Questions for Final Math 312/ AMS 351 (Fall 17) Sample Questions for Final 1. Solve the system of equations 2x 1 mod 3 x 2 mod 7 x 7 mod 8 First note that the inverse of 2 is 2 mod 3. Thus, the first equation becomes (multiply

More information

ϕ : Z F : ϕ(t) = t 1 =

ϕ : Z F : ϕ(t) = t 1 = 1. Finite Fields The first examples of finite fields are quotient fields of the ring of integers Z: let t > 1 and define Z /t = Z/(tZ) to be the ring of congruence classes of integers modulo t: in practical

More information

ELG 5372 Error Control Coding. Lecture 12: Ideals in Rings and Algebraic Description of Cyclic Codes

ELG 5372 Error Control Coding. Lecture 12: Ideals in Rings and Algebraic Description of Cyclic Codes ELG 5372 Error Control Coding Lecture 12: Ideals in Rings and Algebraic Description of Cyclic Codes Quotient Ring Example + Quotient Ring Example Quotient Ring Recall the quotient ring R={,,, }, where

More information

PUTTING FÜRER ALGORITHM INTO PRACTICE WITH THE BPAS LIBRARY. (Thesis format: Monograph) Linxiao Wang. Graduate Program in Computer Science

PUTTING FÜRER ALGORITHM INTO PRACTICE WITH THE BPAS LIBRARY. (Thesis format: Monograph) Linxiao Wang. Graduate Program in Computer Science PUTTING FÜRER ALGORITHM INTO PRACTICE WITH THE BPAS LIBRARY. (Thesis format: Monograph) by Linxiao Wang Graduate Program in Computer Science A thesis submitted in partial fulfillment of the requirements

More information

Summary Slides for MATH 342 June 25, 2018

Summary Slides for MATH 342 June 25, 2018 Summary Slides for MATH 342 June 25, 2018 Summary slides based on Elementary Number Theory and its applications by Kenneth Rosen and The Theory of Numbers by Ivan Niven, Herbert Zuckerman, and Hugh Montgomery.

More information

A Generalization of Wilson s Theorem

A Generalization of Wilson s Theorem A Generalization of Wilson s Theorem R. Andrew Ohana June 3, 2009 Contents 1 Introduction 2 2 Background Algebra 2 2.1 Groups................................. 2 2.2 Rings.................................

More information

Fields in Cryptography. Çetin Kaya Koç Winter / 30

Fields in Cryptography.   Çetin Kaya Koç Winter / 30 Fields in Cryptography http://koclab.org Çetin Kaya Koç Winter 2017 1 / 30 Field Axioms Fields in Cryptography A field F consists of a set S and two operations which we will call addition and multiplication,

More information

Group, Rings, and Fields Rahul Pandharipande. I. Sets Let S be a set. The Cartesian product S S is the set of ordered pairs of elements of S,

Group, Rings, and Fields Rahul Pandharipande. I. Sets Let S be a set. The Cartesian product S S is the set of ordered pairs of elements of S, Group, Rings, and Fields Rahul Pandharipande I. Sets Let S be a set. The Cartesian product S S is the set of ordered pairs of elements of S, A binary operation φ is a function, S S = {(x, y) x, y S}. φ

More information

Computer Algebra for Computer Engineers

Computer Algebra for Computer Engineers p.1/23 Computer Algebra for Computer Engineers Galois Fields: GF(2 m ) Priyank Kalla Department of Electrical and Computer Engineering University of Utah, Salt Lake City p.2/23 Galois Fields A Galois Field

More information

Information Theory. Lecture 7

Information Theory. Lecture 7 Information Theory Lecture 7 Finite fields continued: R3 and R7 the field GF(p m ),... Cyclic Codes Intro. to cyclic codes: R8.1 3 Mikael Skoglund, Information Theory 1/17 The Field GF(p m ) π(x) irreducible

More information

Exact Arithmetic on a Computer

Exact Arithmetic on a Computer Exact Arithmetic on a Computer Symbolic Computation and Computer Algebra William J. Turner Department of Mathematics & Computer Science Wabash College Crawfordsville, IN 47933 Tuesday 21 September 2010

More information

Fast algorithms for polynomials and matrices Part 2: polynomial multiplication

Fast algorithms for polynomials and matrices Part 2: polynomial multiplication Fast algorithms for polynomials and matrices Part 2: polynomial multiplication by Grégoire Lecerf Computer Science Laboratory & CNRS École polytechnique 91128 Palaiseau Cedex France 1 Notation In this

More information

18. Cyclotomic polynomials II

18. Cyclotomic polynomials II 18. Cyclotomic polynomials II 18.1 Cyclotomic polynomials over Z 18.2 Worked examples Now that we have Gauss lemma in hand we can look at cyclotomic polynomials again, not as polynomials with coefficients

More information

TC10 / 3. Finite fields S. Xambó

TC10 / 3. Finite fields S. Xambó TC10 / 3. Finite fields S. Xambó The ring Construction of finite fields The Frobenius automorphism Splitting field of a polynomial Structure of the multiplicative group of a finite field Structure of the

More information

Algebra SEP Solutions

Algebra SEP Solutions Algebra SEP Solutions 17 July 2017 1. (January 2017 problem 1) For example: (a) G = Z/4Z, N = Z/2Z. More generally, G = Z/p n Z, N = Z/pZ, p any prime number, n 2. Also G = Z, N = nz for any n 2, since

More information

Algebraic algorithms

Algebraic algorithms Algebraic algorithms Freely using the textbook: Victor Shoup s A Computational Introduction to Number Theory and Algebra Péter Gács Computer Science Department Boston University Fall 2005 Péter Gács (Boston

More information

LECTURE NOTES IN CRYPTOGRAPHY

LECTURE NOTES IN CRYPTOGRAPHY 1 LECTURE NOTES IN CRYPTOGRAPHY Thomas Johansson 2005/2006 c Thomas Johansson 2006 2 Chapter 1 Abstract algebra and Number theory Before we start the treatment of cryptography we need to review some basic

More information

Faster arithmetic for number-theoretic transforms

Faster arithmetic for number-theoretic transforms University of New South Wales 7th October 2011, Macquarie University Plan for talk 1. Review number-theoretic transform (NTT) 2. Discuss typical butterfly algorithm 3. Improvements to butterfly algorithm

More information

Algebraic structures I

Algebraic structures I MTH5100 Assignment 1-10 Algebraic structures I For handing in on various dates January March 2011 1 FUNCTIONS. Say which of the following rules successfully define functions, giving reasons. For each one

More information

Factorization in Polynomial Rings

Factorization in Polynomial Rings Factorization in Polynomial Rings Throughout these notes, F denotes a field. 1 Long division with remainder We begin with some basic definitions. Definition 1.1. Let f, g F [x]. We say that f divides g,

More information

CSC 474 Network Security. Outline. GCD and Euclid s Algorithm. GCD and Euclid s Algorithm Modulo Arithmetic Modular Exponentiation Discrete Logarithms

CSC 474 Network Security. Outline. GCD and Euclid s Algorithm. GCD and Euclid s Algorithm Modulo Arithmetic Modular Exponentiation Discrete Logarithms Computer Science CSC 474 Network Security Topic 5.1 Basic Number Theory -- Foundation of Public Key Cryptography CSC 474 Dr. Peng Ning 1 Outline GCD and Euclid s Algorithm Modulo Arithmetic Modular Exponentiation

More information

RINGS: SUMMARY OF MATERIAL

RINGS: SUMMARY OF MATERIAL RINGS: SUMMARY OF MATERIAL BRIAN OSSERMAN This is a summary of terms used and main results proved in the subject of rings, from Chapters 11-13 of Artin. Definitions not included here may be considered

More information

Chapter 4. Characters and Gauss sums. 4.1 Characters on finite abelian groups

Chapter 4. Characters and Gauss sums. 4.1 Characters on finite abelian groups Chapter 4 Characters and Gauss sums 4.1 Characters on finite abelian groups In what follows, abelian groups are multiplicatively written, and the unit element of an abelian group A is denoted by 1 or 1

More information

Finite Fields: An introduction through exercises Jonathan Buss Spring 2014

Finite Fields: An introduction through exercises Jonathan Buss Spring 2014 Finite Fields: An introduction through exercises Jonathan Buss Spring 2014 A typical course in abstract algebra starts with groups, and then moves on to rings, vector spaces, fields, etc. This sequence

More information

MODEL ANSWERS TO HWK #10

MODEL ANSWERS TO HWK #10 MODEL ANSWERS TO HWK #10 1. (i) As x + 4 has degree one, either it divides x 3 6x + 7 or these two polynomials are coprime. But if x + 4 divides x 3 6x + 7 then x = 4 is a root of x 3 6x + 7, which it

More information

Implementation of the DKSS Algorithm for Multiplication of Large Numbers

Implementation of the DKSS Algorithm for Multiplication of Large Numbers Implementation of the DKSS Algorithm for Multiplication of Large Numbers Christoph Lüders Universität Bonn The International Symposium on Symbolic and Algebraic Computation, July 6 9, 2015, Bath, United

More information

a b (mod m) : m b a with a,b,c,d real and ad bc 0 forms a group, again under the composition as operation.

a b (mod m) : m b a with a,b,c,d real and ad bc 0 forms a group, again under the composition as operation. Homework for UTK M351 Algebra I Fall 2013, Jochen Denzler, MWF 10:10 11:00 Each part separately graded on a [0/1/2] scale. Problem 1: Recalling the field axioms from class, prove for any field F (i.e.,

More information

Math 120 HW 9 Solutions

Math 120 HW 9 Solutions Math 120 HW 9 Solutions June 8, 2018 Question 1 Write down a ring homomorphism (no proof required) f from R = Z[ 11] = {a + b 11 a, b Z} to S = Z/35Z. The main difficulty is to find an element x Z/35Z

More information

Introduction to Cryptology. Lecture 19

Introduction to Cryptology. Lecture 19 Introduction to Cryptology Lecture 19 Announcements HW6 due today HW7 due Thursday 4/20 Remember to sign up for Extra Credit Agenda Last time More details on AES/DES (K/L 6.2) Practical Constructions of

More information

Homework 10 M 373K by Mark Lindberg (mal4549)

Homework 10 M 373K by Mark Lindberg (mal4549) Homework 10 M 373K by Mark Lindberg (mal4549) 1. Artin, Chapter 11, Exercise 1.1. Prove that 7 + 3 2 and 3 + 5 are algebraic numbers. To do this, we must provide a polynomial with integer coefficients

More information

Abstract Algebra Part I: Group Theory

Abstract Algebra Part I: Group Theory Abstract Algebra Part I: Group Theory From last time: Let G be a set. A binary operation on G is a function m : G G G Some examples: Some non-examples Addition and multiplication Dot and scalar products

More information

Basic Concepts in Number Theory and Finite Fields

Basic Concepts in Number Theory and Finite Fields Basic Concepts in Number Theory and Finite Fields Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu Audio/Video recordings of this lecture are available at: 4-1 Overview

More information

Elliptic Curves Spring 2013 Lecture #3 02/12/2013

Elliptic Curves Spring 2013 Lecture #3 02/12/2013 18.783 Elliptic Curves Spring 2013 Lecture #3 02/12/2013 3.1 Arithmetic in finite fields To make explicit computations with elliptic curves over finite fields, we need to know how to perform arithmetic

More information

Outline. MSRI-UP 2009 Coding Theory Seminar, Week 2. The definition. Link to polynomials

Outline. MSRI-UP 2009 Coding Theory Seminar, Week 2. The definition. Link to polynomials Outline MSRI-UP 2009 Coding Theory Seminar, Week 2 John B. Little Department of Mathematics and Computer Science College of the Holy Cross Cyclic Codes Polynomial Algebra More on cyclic codes Finite fields

More information

Irreducible Polynomials. Finite Fields of Order p m (1) Primitive Polynomials. Finite Fields of Order p m (2)

Irreducible Polynomials. Finite Fields of Order p m (1) Primitive Polynomials. Finite Fields of Order p m (2) S-72.3410 Finite Fields (2) 1 S-72.3410 Finite Fields (2) 3 Irreducible Polynomials Finite Fields of Order p m (1) The following results were discussed in the previous lecture: The order of a finite field

More information

(January 14, 2009) q n 1 q d 1. D = q n = q + d

(January 14, 2009) q n 1 q d 1. D = q n = q + d (January 14, 2009) [10.1] Prove that a finite division ring D (a not-necessarily commutative ring with 1 in which any non-zero element has a multiplicative inverse) is commutative. (This is due to Wedderburn.)

More information

Math Introduction to Modern Algebra

Math Introduction to Modern Algebra Math 343 - Introduction to Modern Algebra Notes Rings and Special Kinds of Rings Let R be a (nonempty) set. R is a ring if there are two binary operations + and such that (A) (R, +) is an abelian group.

More information

CDM. Finite Fields. Klaus Sutner Carnegie Mellon University. Fall 2018

CDM. Finite Fields. Klaus Sutner Carnegie Mellon University. Fall 2018 CDM Finite Fields Klaus Sutner Carnegie Mellon University Fall 2018 1 Ideals The Structure theorem Where Are We? 3 We know that every finite field carries two apparently separate structures: additive and

More information

Basic Algebra and Number Theory. Nicolas T. Courtois - University College of London

Basic Algebra and Number Theory. Nicolas T. Courtois - University College of London Basic Algebra and Number Theory Nicolas T. Courtois - University College of London Integers 2 Number Theory Not more than 30 years ago mathematicians used to say Number Theory will be probably last branch

More information

CS 6260 Some number theory

CS 6260 Some number theory CS 6260 Some number theory Let Z = {..., 2, 1, 0, 1, 2,...} denote the set of integers. Let Z+ = {1, 2,...} denote the set of positive integers and N = {0, 1, 2,...} the set of non-negative integers. If

More information

Basic Algorithms in Number Theory

Basic Algorithms in Number Theory Basic Algorithms in Number Theory Algorithmic Complexity... 1 Basic Algorithms in Number Theory Francesco Pappalardi Discrete Logs, Modular Square Roots & Euclidean Algorithm. July 20 th 2010 Basic Algorithms

More information

Calculating Algebraic Signatures Thomas Schwarz, S.J.

Calculating Algebraic Signatures Thomas Schwarz, S.J. Calculating Algebraic Signatures Thomas Schwarz, S.J. 1 Introduction A signature is a small string calculated from a large object. The primary use of signatures is the identification of objects: equal

More information

Continuing discussion of CRC s, especially looking at two-bit errors

Continuing discussion of CRC s, especially looking at two-bit errors Continuing discussion of CRC s, especially looking at two-bit errors The definition of primitive binary polynomials Brute force checking for primitivity A theorem giving a better test for primitivity Fast

More information

ECEN 5682 Theory and Practice of Error Control Codes

ECEN 5682 Theory and Practice of Error Control Codes ECEN 5682 Theory and Practice of Error Control Codes Introduction to Algebra University of Colorado Spring 2007 Motivation and For convolutional codes it was convenient to express the datawords and the

More information

Public-key Cryptography: Theory and Practice

Public-key Cryptography: Theory and Practice Public-key Cryptography Theory and Practice Department of Computer Science and Engineering Indian Institute of Technology Kharagpur Chapter 2: Mathematical Concepts Divisibility Congruence Quadratic Residues

More information

An introduction to the algorithmic of p-adic numbers

An introduction to the algorithmic of p-adic numbers An introduction to the algorithmic of p-adic numbers David Lubicz 1 1 Universté de Rennes 1, Campus de Beaulieu, 35042 Rennes Cedex, France Outline Introduction 1 Introduction 2 3 4 5 6 7 8 When do we

More information

Introduction to finite fields

Introduction to finite fields Chapter 7 Introduction to finite fields This chapter provides an introduction to several kinds of abstract algebraic structures, particularly groups, fields, and polynomials. Our primary interest is in

More information

Introduction to Information Security

Introduction to Information Security Introduction to Information Security Lecture 5: Number Theory 007. 6. Prof. Byoungcheon Lee sultan (at) joongbu. ac. kr Information and Communications University Contents 1. Number Theory Divisibility

More information

Commutative Rings and Fields

Commutative Rings and Fields Commutative Rings and Fields 1-22-2017 Different algebraic systems are used in linear algebra. The most important are commutative rings with identity and fields. Definition. A ring is a set R with two

More information

Algebra Review 2. 1 Fields. A field is an extension of the concept of a group.

Algebra Review 2. 1 Fields. A field is an extension of the concept of a group. Algebra Review 2 1 Fields A field is an extension of the concept of a group. Definition 1. A field (F, +,, 0 F, 1 F ) is a set F together with two binary operations (+, ) on F such that the following conditions

More information

Algebra. Modular arithmetic can be handled mathematically by introducing a congruence relation on the integers described in the above example.

Algebra. Modular arithmetic can be handled mathematically by introducing a congruence relation on the integers described in the above example. Coding Theory Massoud Malek Algebra Congruence Relation The definition of a congruence depends on the type of algebraic structure under consideration Particular definitions of congruence can be made for

More information

A. Algebra and Number Theory

A. Algebra and Number Theory A. Algebra and Number Theory Public-key cryptosystems are based on modular arithmetic. In this section, we summarize the concepts and results from algebra and number theory which are necessary for an understanding

More information

Course 311: Michaelmas Term 2005 Part III: Topics in Commutative Algebra

Course 311: Michaelmas Term 2005 Part III: Topics in Commutative Algebra Course 311: Michaelmas Term 2005 Part III: Topics in Commutative Algebra D. R. Wilkins Contents 3 Topics in Commutative Algebra 2 3.1 Rings and Fields......................... 2 3.2 Ideals...............................

More information

Moreover this binary operation satisfies the following properties

Moreover this binary operation satisfies the following properties Contents 1 Algebraic structures 1 1.1 Group........................................... 1 1.1.1 Definitions and examples............................. 1 1.1.2 Subgroup.....................................

More information

THE JOHNS HOPKINS UNIVERSITY Faculty of Arts and Sciences FINAL EXAM - SPRING SESSION ADVANCED ALGEBRA II.

THE JOHNS HOPKINS UNIVERSITY Faculty of Arts and Sciences FINAL EXAM - SPRING SESSION ADVANCED ALGEBRA II. THE JOHNS HOPKINS UNIVERSITY Faculty of Arts and Sciences FINAL EXAM - SPRING SESSION 2006 110.402 - ADVANCED ALGEBRA II. Examiner: Professor C. Consani Duration: 3 HOURS (9am-12:00pm), May 15, 2006. No

More information

Groups, Rings, and Finite Fields. Andreas Klappenecker. September 12, 2002

Groups, Rings, and Finite Fields. Andreas Klappenecker. September 12, 2002 Background on Groups, Rings, and Finite Fields Andreas Klappenecker September 12, 2002 A thorough understanding of the Agrawal, Kayal, and Saxena primality test requires some tools from algebra and elementary

More information

Further linear algebra. Chapter II. Polynomials.

Further linear algebra. Chapter II. Polynomials. Further linear algebra. Chapter II. Polynomials. Andrei Yafaev 1 Definitions. In this chapter we consider a field k. Recall that examples of felds include Q, R, C, F p where p is prime. A polynomial is

More information

Factoring Algorithms Pollard s p 1 Method. This method discovers a prime factor p of an integer n whenever p 1 has only small prime factors.

Factoring Algorithms Pollard s p 1 Method. This method discovers a prime factor p of an integer n whenever p 1 has only small prime factors. Factoring Algorithms Pollard s p 1 Method This method discovers a prime factor p of an integer n whenever p 1 has only small prime factors. Input: n (to factor) and a limit B Output: a proper factor of

More information

Computations/Applications

Computations/Applications Computations/Applications 1. Find the inverse of x + 1 in the ring F 5 [x]/(x 3 1). Solution: We use the Euclidean Algorithm: x 3 1 (x + 1)(x + 4x + 1) + 3 (x + 1) 3(x + ) + 0. Thus 3 (x 3 1) + (x + 1)(4x

More information

38 Irreducibility criteria in rings of polynomials

38 Irreducibility criteria in rings of polynomials 38 Irreducibility criteria in rings of polynomials 38.1 Theorem. Let p(x), q(x) R[x] be polynomials such that p(x) = a 0 + a 1 x +... + a n x n, q(x) = b 0 + b 1 x +... + b m x m and a n, b m 0. If b m

More information

Mathematics for Cryptography

Mathematics for Cryptography Mathematics for Cryptography Douglas R. Stinson David R. Cheriton School of Computer Science University of Waterloo Waterloo, Ontario, N2L 3G1, Canada March 15, 2016 1 Groups and Modular Arithmetic 1.1

More information

Groups in Cryptography. Çetin Kaya Koç Winter / 13

Groups in Cryptography.   Çetin Kaya Koç Winter / 13 http://koclab.org Çetin Kaya Koç Winter 2017 1 / 13 A set S and a binary operation A group G = (S, ) if S and satisfy: Closure: If a, b S then a b S Associativity: For a, b, c S, (a b) c = a (b c) A neutral

More information

Chapter 5. Modular arithmetic. 5.1 The modular ring

Chapter 5. Modular arithmetic. 5.1 The modular ring Chapter 5 Modular arithmetic 5.1 The modular ring Definition 5.1. Suppose n N and x, y Z. Then we say that x, y are equivalent modulo n, and we write x y mod n if n x y. It is evident that equivalence

More information

Rings. Chapter Definitions and Examples

Rings. Chapter Definitions and Examples Chapter 5 Rings Nothing proves more clearly that the mind seeks truth, and nothing reflects more glory upon it, than the delight it takes, sometimes in spite of itself, in the driest and thorniest researches

More information

Profinite Groups. Hendrik Lenstra. 1. Introduction

Profinite Groups. Hendrik Lenstra. 1. Introduction Profinite Groups Hendrik Lenstra 1. Introduction We begin informally with a motivation, relating profinite groups to the p-adic numbers. Let p be a prime number, and let Z p denote the ring of p-adic integers,

More information

Euler s ϕ function. Carl Pomerance Dartmouth College

Euler s ϕ function. Carl Pomerance Dartmouth College Euler s ϕ function Carl Pomerance Dartmouth College Euler s ϕ function: ϕ(n) is the number of integers m [1, n] with m coprime to n. Or, it is the order of the unit group of the ring Z/nZ. Euler: If a

More information

ECEN 5022 Cryptography

ECEN 5022 Cryptography Elementary Algebra and Number Theory University of Colorado Spring 2008 Divisibility, Primes Definition. N denotes the set {1, 2, 3,...} of natural numbers and Z denotes the set of integers {..., 2, 1,

More information