**EC Cryptography Tutorials - Herong's Tutorial Examples** - v1.02, by Dr. Herong Yang

Finite Fields

This chapter provides an introduction to Finite Fields. Topics covered include definition of finite fields; examples of finite fields: prime fields GF(p), binary fields GF(2^n) and polynomial fields GF(p^n); field order as the number of elements; field characteristic p is the least positive integer that the scalar multiplication of p and 1 is 0.

*These sections are omitted from this Web preview version. To view the full content,
see information on how to obtain the full version this book.
*

What Is Finite Field

Prime Fields GF(p) - Finite Fields with Modular Arithmetic

Prime Field Example - GF(11)

Binary Fields GF(2^n) on Binary Polynomials

Binary Field Example - GF(2^2) with Modulo x^2+x+1

Binary Field Example - GF(2^3) with Modulo x^3+x+1

Binary Format of Binary Fields GF(2^n)

Binary Format for GF(2^3) with Modulo x^3+x+1

Polynomial Fields GF(p^n) on Prime Polynomials

Polynomial Field Example - GF(3^2) with Modulo x^2+1

Field Order and Field Characteristic

Field Characteristic Is a Prime Number

Field Order Is Prime Power

Takeaways:

- An Finite Field is a set of elements that is both an Additive Abelian Group and a Multiplicative Abelian Group. Their operations satisfy the distributivity condition.
- A prime field, GF(p), is a finite field defined on integers of 0, 1, 2, ..., p-1 for a given prime number p.
- A binary field, GF(2^n), is a finite field defined
on binary polynomials of n-1 degree,
c
_{n-1}x^{n-1}+ ... + c_{2}x^{2}+ c_{1}x^{1}+ c_{0}x^{0}, where coefficients are 0 or 1. - A polynomial field, GF(p^n), is a finite field defined
on prime polynomials of n-1 degree,
c
_{n-1}x^{n-1}+ ... + c_{2}x^{2}+ c_{1}x^{1}+ c_{0}x^{0}, where coefficients are 0, 1, 2, ..., or p-1 for a given prime number p. - The field order is defined as the total number of elements in a finite field. And it is a power of a prime number.
- The field characteristic is defined as the least positive integer, p, such that the scalar multiplication of p and 1 is 0. And it is a prime number.

Table of Contents

Geometric Introduction to Elliptic Curves

Algebraic Introduction to Elliptic Curves

Abelian Group and Elliptic Curves

Discrete Logarithm Problem (DLP)

Generators and Cyclic Subgroups

tinyec - Python Library for ECC

ECDH (Elliptic Curve Diffie-Hellman) Key Exchange

ECDSA (Elliptic Curve Digital Signature Algorithm)