We have seen that [X]x8+x4+x3+x+1 (in Example 5.18) is the set of all polynomials modulo the irreducible polynomial x8 + x4 + x3 + x + 1 over and has 28 elements. Now we know that is also a field of 28 elements and can be represented by the following space
where q is a root of (e.g.) the equation x8 + x4 + x3 + x + 1 = 0, and the scalars
. Clearly, these two fields are isomorphic; in particular, we can also use a byte to represent an element in the latter representation of .
In Example 5.18 we mentioned that multiplication in is a bit complicated and needs modulo polynomial which requires the Euclid algorithm for polynomial division. Multiplication in spanned from polynomial basis can be easier: straightforward multiplying two elements and representing any resultant terms with qi for i > 7 using a linear combination of the basis 1, q, …, q7.
For example, let us compute '57' . '83', or
Since
we have the following linear combinations (notice –1 = 1 in ):
• Table of Contents
Modern Cryptography: Theory and Practice By Wenbo Mao Hewlett-Packard Company
Publisher: Prentice Hall PTR Pub Date: July 25, 2003
ISBN: 0-13-066943-1 Pages: 648
Many cryptographic schemes and protocols, especially those based on public-keycryptography, have basic or so-called "textbook crypto" versions, as these versionsare usually the subjects for many textbooks on cryptography. This book takes adifferent approach to introducing
cryptography: it pays much more attention tofit-for-application aspects of cryptography. It explains why "textbook crypto" isonly good in an ideal world where data are random and bad guys behave nicely.It reveals the general unfitness of "textbook crypto" for the real world by demonstratingnumerous attacks on such schemes, protocols and systems under variousreal- world application scenarios. This book chooses to introduce a set of practicalcryptographic schemes, protocols and systems, many of them standards or de factoones, studies them closely, explains their working principles, discusses their practicalusages, and examines their strong (i.e., fit-for-application) security properties, oftenwith security evidence formally established. The book also includes self-containedtheoretical background material that is the foundation for modern cryptography.
That is, we have '57' . '83' = 'C1'.
We now provide a remark as a summary on our study of finite fields.
. Remark 5.2
We have studied two methods for constructing finite fields: field modulo an irreducible polynomial
(§5.4.2) and field spanned from a polynomial basis (§5.4.3). In our study of finite fields we have
used to denote a field of the latter construction. However, under isomorphism, two fields of the same number of elements can be viewed without difference. Therefore from now on, we will denote by any finite field of q elements where q is a prime power.
5.4.4 Primitive Roots
We asserted in §4.5 that the complete factorization of n – 1 provides a piece of "internal information" (i.e., auxiliary input for verifying a problem in ) for answering whether n is prime with an efficient deterministic algorithm. Now with the knowledge of finite fields, that assertion can be easily proved.
. Theorem 5.11
The multiplicative group of field is cyclic.
Proof By Theorem 5.9(iii), the entire roots of polynomial xpn–1 – 1 = 0 forms . However, the entire roots of this polynomial are the pn – 1 distinct (nontrivial) roots of 1, spread over the unity circle. So there exists a (pn – 1)-th root of 1, which generates the group . Hence
is cyclic.
Definition 5.24: Primitive RootA multiplicative generator of the group is called a primitive root of field .
. Theorem 5.12
Let n be a positive integer with n – 1 = r1r2…rkas the complete prime factorization of n–1 (some of the prime factors may repeat). Then n is prime if and only if there exists a positive integer a < n such that an–1 1 (mod n) and a (n–1)/r
i 1 (mod n) for i = 1, 2, …, k.
Proof ( ) If n is prime, then by Theorem 5.11, the group ( )* is cyclic and has a generator which is an (n – 1)-th root of 1. Denoting by a this root, then a satisfies the conditions in the theorem statement.
( ) Let integer a < n satisfy the conditions in the theorem statement. Then a, a2, …, an–1 are
• Table of Contents
Modern Cryptography: Theory and Practice By Wenbo Mao Hewlett-Packard Company
Publisher: Prentice Hall PTR Pub Date: July 25, 2003
ISBN: 0-13-066943-1 Pages: 648
Many cryptographic schemes and protocols, especially those based on public-keycryptography, have basic or so-called "textbook crypto" versions, as these versionsare usually the subjects for many textbooks on cryptography. This book takes adifferent approach to introducing
cryptography: it pays much more attention tofit-for-application aspects of cryptography. It explains why "textbook crypto" isonly good in an ideal world where data are random and bad guys behave nicely.It reveals the general unfitness of "textbook crypto" for the real world by demonstratingnumerous attacks on such schemes, protocols and systems under variousreal- world application scenarios. This book chooses to introduce a set of practicalcryptographic schemes, protocols and systems, many of them standards or de factoones, studies them closely, explains their working principles, discusses their practicalusages, and examines their strong (i.e., fit-for-application) security properties, oftenwith security evidence formally established. The book also includes self-containedtheoretical background material that is the foundation for modern cryptography.
Suppose otherwise aj–i 1 (mod n) for some i, j with 0 < j – i < n – 1; then by Definition 5.9
ord(a)|j – i|n – 1, contradicting to the conditions in the theorem statement. Now we know that a is a multiplicative group of n – 1 elements (multiplication modulo n). This group can contain at most f(n) elements. So f(n) = n – 1. Hence n is prime by definition of Euler's function (Definition 5.11).
Theorem 5.12 suggests an efficient algorithm for finding a primitive root modulo a prime p, i.e., a generator of the group . The algorithm is specified in Alg 5.1.
By Theorem 5.2(4), we know that in the group there are exactly f(p – 1) elements of order p – 1, and these elements are generators of the group. Therefore Alg 5.1 is expected to terminate in
(see e.g., page 65 of [198]) steps of recursive calls. Since the number of prime factors of p – 1 is bounded by logp, the time complexity of the algorithm is bounded by OB((log p)4log logp).
Algorithm 5.1: Random Primitive Root Modulo Prime
INPUT p: a prime; q1, q2, …, qk: all prime factors of p – 1;
OUTPUT g: a random primitive root modulo p.
PrimitiveRoot(p, q1, q2, …, qk)
pick g u [2, p – 1);
1.
for ( i = 1, i++, k ) do if ( g(p–1)/q
i 1 (mod p) ) return( PrimitiveRoot(p, q1, q2, …, qk) );
2.
return( g ).
• Table of Contents
Modern Cryptography: Theory and Practice By Wenbo Mao Hewlett-Packard Company
Publisher: Prentice Hall PTR Pub Date: July 25, 2003
ISBN: 0-13-066943-1 Pages: 648
Many cryptographic schemes and protocols, especially those based on public-keycryptography, have basic or so-called "textbook crypto" versions, as these versionsare usually the subjects for many textbooks on cryptography. This book takes adifferent approach to introducing
cryptography: it pays much more attention tofit-for-application aspects of cryptography. It explains why "textbook crypto" isonly good in an ideal world where data are random and bad guys behave nicely.It reveals the general unfitness of "textbook crypto" for the real world by demonstratingnumerous attacks on such schemes, protocols and systems under variousreal- world application scenarios. This book chooses to introduce a set of practicalcryptographic schemes, protocols and systems, many of them standards or de factoones, studies them closely, explains their working principles, discusses their practicalusages, and examines their strong (i.e., fit-for-application) security properties, oftenwith security evidence formally established. The book also includes self-containedtheoretical background material that is the foundation for modern cryptography.
5.5 Group Constructed Using Points on an Elliptic
Curve
A class of groups which are very important to modern cryptography is those constructed by points on elliptic curves. Miller [203] and Koblitz [166] originally suggest to use elliptic curve groups for realizing public-key cryptography.
Elliptic curves for cryptography are defined over finite algebraic structures such as finite fields. For ease of exposition, let us confine ourselves to the easy case of prime fields of
characteristic greater than 3. Such a curve is the set of geometric solutions P = (x, y) to an equation of the following form
Equation 5.5.1
where a and b are constants in (p > 3) satisfying (mod p)[a]. To have the points on E to form a group, an extra point denoted by O is included. This extra point is called the point at infinity and can be formulated as
[a] Reason to be given after Definition 5.25.
So for the group format, we write
Equation 5.5.2
This set of points form a group under a group operation which is conventionally written additively using the notation "+" . We will define the operation in a moment.
Denote by f(x) the cubic polynomial in the right-hand side of (5.5.1). If f(x) is reducible over
then for being a zero of f(x) (i.e. f(§) 0 (mod p)), point (x, 0) E. We will see in a moment that these points have order 2 under the group operation "+" . Since f(x) is a cubic polynomial, there are at most three such points (either 1 or 3 depending on the reducibility of f(x) over ; answer why by doing Exercise 5.13).
• Table of Contents
Modern Cryptography: Theory and Practice By Wenbo Mao Hewlett-Packard Company
Publisher: Prentice Hall PTR Pub Date: July 25, 2003
ISBN: 0-13-066943-1 Pages: 648
Many cryptographic schemes and protocols, especially those based on public-keycryptography, have basic or so-called "textbook crypto" versions, as these versionsare usually the subjects for many textbooks on cryptography. This book takes adifferent approach to introducing
cryptography: it pays much more attention tofit-for-application aspects of cryptography. It explains why "textbook crypto" isonly good in an ideal world where data are random and bad guys behave nicely.It reveals the general unfitness of "textbook crypto" for the real world by demonstratingnumerous attacks on such schemes, protocols and systems under variousreal- world application scenarios. This book chooses to introduce a set of practicalcryptographic schemes, protocols and systems, many of them standards or de factoones, studies them closely, explains their working principles, discusses their practicalusages, and examines their strong (i.e., fit-for-application) security properties, oftenwith security evidence formally established. The book also includes self-containedtheoretical background material that is the foundation for modern cryptography.
residue element in (i.e., a square number modulo p, see §6.5). In such cases, for each such h, there are two distinct solutions for y (every quadratic residue element in has two square roots modulo p, see Corollary 6.2). Since f(h) is a constant, the two square roots will be
and – . Thus, we can denote by h, and – such two points of solutions.
To this end we know that the points on the curve are O, (x, 0), (h, ) and (h, – ) for all x, h in satisfying f(§) 0 (mod p) and f(h) being a quadratic residue in .
5.5.1 The Group Operation
The set E defined in (5.5.2) forms an abelian group under the operation "+" defined as follows.
Definition 5.25: Elliptic Curve Group Operation ("tangent and chord method")Let P, Q E, l be the line containing P and Q (tangent line to E if P = Q), and R, the third point of
intersection of l with E. Let l' be the line connecting R and O. Then P "+" Q is the point such that l' intersects E at R, O and P "+" Q.
For the moment let us suppose that under Definition 5.25, (E, "+") does form a group. We should first explain why we have required the coefficients of the cubic polynomial in (5.5.1) to satisfy 4a3 + 27b2 0 (mod p). Notice that
is the discriminant of the cubic polynomial f(x) = x3 + ax + b. If d = 0 then f(x) = 0 has at least a double zero X (root which makes f(X) = 0) and clearly (X, 0) is on E. For F(x, y) = y2 – x3 – ax – b = 0, this point satisfies
That is, (X, 0) is a singular point at which there is no definition for a real tangent value. With the tangent-and-chord operation failing at the singular point (X, 0), E cannot be a group.
Fig 5.1 illustrates the tangent-and-chord operation. The top curve is the case of D < 0 (the cubic polynomial has only one real root) and the lower, D > 0. We have intentionally plotted the curves as dotted lines to indicate ) being a discrete set. The discrete points are called -rational points. Their number is finite (see (5.5.6) to be given in a moment).