Bouncy Castle Cryptography Library 1.79

org.bouncycastle.pqc.legacy.math.linearalgebra
Class PolynomialRingGF2m

java.lang.Object
  |
  +--org.bouncycastle.pqc.legacy.math.linearalgebra.PolynomialRingGF2m

public class PolynomialRingGF2m
extends java.lang.Object

This class represents polynomial rings GF(2^m)[X]/p(X) for m<32. If p(X) is irreducible, the polynomial ring is in fact an extension field of GF(2^m).


Field Summary
protected  PolynomialGF2mSmallM[] sqMatrix
          the squaring matrix for this polynomial ring (given as the array of its row vectors)
protected  PolynomialGF2mSmallM[] sqRootMatrix
          the matrix for computing square roots in this polynomial ring (given as the array of its row vectors).
 
Constructor Summary
PolynomialRingGF2m(GF2mField field, PolynomialGF2mSmallM p)
          Constructor.
 
Method Summary
 PolynomialGF2mSmallM[] getSquareRootMatrix()
           
 PolynomialGF2mSmallM[] getSquaringMatrix()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sqMatrix

protected PolynomialGF2mSmallM[] sqMatrix
the squaring matrix for this polynomial ring (given as the array of its row vectors)

sqRootMatrix

protected PolynomialGF2mSmallM[] sqRootMatrix
the matrix for computing square roots in this polynomial ring (given as the array of its row vectors). This matrix is computed as the inverse of the squaring matrix.
Constructor Detail

PolynomialRingGF2m

public PolynomialRingGF2m(GF2mField field,
                          PolynomialGF2mSmallM p)
Constructor.
Parameters:
field - the finite field
p - the reduction polynomial
Method Detail

getSquaringMatrix

public PolynomialGF2mSmallM[] getSquaringMatrix()
Returns:
the squaring matrix for this polynomial ring

getSquareRootMatrix

public PolynomialGF2mSmallM[] getSquareRootMatrix()
Returns:
the matrix for computing square roots for this polynomial ring

Bouncy Castle Cryptography Library 1.79