4
$\begingroup$

I have read a lot about Galois Fields (GF). They are also presented in The The Design of Rijndael: AES - The Advanced Encryption Standard on pages 13 and 14.

In computer memory, the polynomials in $F[x]|_l$ with $F$ a finite field can be stored efficiently by storing the $l$ coefficients as a string.

Example 2.1.6. The polynomial in GF$(2)|_8$ $$x^6+x^4+x^2+x+1$$ corresponds to the bit string $01010111$.

In their paper Differential propagation analysis of Keccak, they also use the notation $\mathbb{Z}_2^b$ :

In general, for a function $f$ with domain $\mathbb{Z}_2^b$, we define the weight of a differential $(u′, v')$ as $$w(u' \xrightarrow{f} v') = b - \log_2 |\{u: f(u) \oplus f(u \oplus u') = v'\}| $$

While I do understand the meaning of this notation (a binary input of length $n$), I also know that we can use finite fields to model such numbers. Hence my question: Is there a difference between $\mathbb{Z}_2^b$, $\text{GF}(2^b)$ and $\text{GF}(2)^b$

$\endgroup$
1
  • $\begingroup$ yes it is related but I want to make sure of the notation from a formal point of view. $\endgroup$
    – Biv
    May 30, 2016 at 16:11

1 Answer 1

4
$\begingroup$

$\mathbf{Z}_2^b$ is the direct product of $b$ copies of $\mathbf{Z}_2$ ($\mathbf{Z}_2 \times\cdots \times \mathbf{Z}_2$, $b$ times). That is, its elements are $b$-tuples of elements of $\mathbf{Z}_2$, with both addition and multiplication defined componentwise. If $b > 1$, it is not a field. In fact it is not even an integral domain, because $(0,1)\times (1,0) = (0,0)$.

$\mathrm{GF}(2^b)$ is the field with $2^b$ elements. Because it is a field, it is not the same thing as $\mathbf{Z}_2^b$ if $b > 1$.

You should know that for any prime $p$, $\mathbf{Z}_p$ is a field with $p$ elements, so it is the same thing as $\mathrm{GF}(p)$.

$\endgroup$
3
  • $\begingroup$ So OP's first and third designations mean the same, right? $\endgroup$ May 30, 2016 at 20:12
  • $\begingroup$ @Mok-KongShen I would think so. $\endgroup$ May 30, 2016 at 21:53
  • 1
    $\begingroup$ Of course, $\mathbf{Z}_2 = \mathrm{GF}(2)$ implies $\mathbf{Z}_2^b = \mathbf{GF}(2)^b$. $\endgroup$
    – fkraiem
    May 31, 2016 at 4:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.