Home

GF2n

GF(2^n) denotes a finite field with 2^n elements and characteristic 2. It can be constructed as the quotient GF(2)[x]/(f(x)) where f(x) is an irreducible polynomial over GF(2) of degree n. Each element of GF(2^n) can be represented as a polynomial of degree at most n−1 with coefficients in {0,1}, or equivalently as an n-bit binary vector. Different choices of f(x) yield different representations of the same abstract field; all fields GF(2^n) are isomorphic.

Arithmetic in GF(2^n) is defined with respect to this representation. Addition is performed by bitwise XOR of

Representations and optimization: GF(2^n) supports different basis choices, which affect hardware and software efficiency for field

coefficients.
Multiplication
is
polynomial
multiplication
followed
by
reduction
modulo
f(x).
Inversion
can
be
computed
by
the
extended
Euclidean
algorithm.
The
nonzero
elements
form
a
cyclic
group
of
order
2^n−1,
so
primitive
elements
exist
and
generate
the
multiplicative
group.
For
efficiency,
implementations
often
use
a
chosen
basis
(polynomial
basis
or
normal
basis)
or
precomputed
log/anti-log
tables.
operations.
The
field
is
widely
used
in
coding
theory
and
cryptography.
In
error-correcting
codes,
GF(2^n)
fields
underpin
Reed-Solomon
codes
used
in
CDs,
DVDs,
QR
codes,
and
data
transmission
systems.
In
cryptography,
elliptic
curves
over
GF(2^n)
are
used
in
binary-field
ECC
schemes.
A
common
concrete
instance
is
GF(2^8),
used
by
the
AES
encryption
standard
with
the
irreducible
polynomial
x^8
+
x^4
+
x^3
+
x
+
1.
Although
specific
polynomials
may
vary,
all
GF(2^n)
fields
share
the
same
fundamental
algebraic
properties.