Binary Fields
Binary fields denoted as , i.e. quotient ring of integers modulo ring of 2 integers , are a special class of Finite Fields, with modulus = . Main properties exhibited by Binary fields are:
- Addition corresponds to bitwise XOR
- Multiplication corresponds to bitwise AND
- since, , i.e. negation of a number is itself
This allows for extremely efficient arithmetic that is much more hardware friendly than fields based on other primes.
Binary Extension fields
Finite field with elements represented as , where is an irreducible of degree . Used extensively in cryptography like AES block cipher and error-correcting codes.
Two ways of representing :
- univariate basis - two ways of representing in univariate basis as well, namely:
- polynomial basis: elements are represented as degree k-1 polynomial by equivalence class , where f(x) is any irreducible in the kth power.
- normal basis: elements are represented as taking powers of an element from the field
- multilinear basis: there’s one other way of representing elements, i.e. Multilinear basis, where elements are represented by monomials: , with each coefficient in .
Extension field using towers
Binius realises binary extension field using towers formalised in Weidemann et al..
Basic idea is to derive sequence of polynomial rings inductively
- start with
- set , namely .
- set
- continue this further with , where is an irreducible in
In practice, Extension Field elements are represented in vector of binary field components of length . Forms a multilinear basis of the form , where .
Let's take an example of K=2, this forms a field extension of . Let's form our basis vector, with :
- : representing in binary form, ,
Now, we have our basis to represents numbers in , taking few examples:
A very nice property of binary fields is defining an element using it's subfield, using it's first and second halves in the subfield:
Arithmetic in Binary Extensions
- Addition, Subtraction is just bitwise XOR
- Negation is the element itself
- Multiplication is done using a hybrid of Karatsuba multiplication
- Inversion is , using Fermat's little theorem