|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Object | +--de.flexiprovider.common.math.pmiplus.MQSystemGF2
This class describes some operations with set of polynomials over finite field GF(2) and is used in PMIPlus (also has some specific methods and implementation)
For the matrix representation the array of type int[][] is used, thus one element of the array keeps 32 elements of the matrix (from one row and 32 columns)
| Constructor Summary | |
MQSystemGF2()
create 1 polynomial in GF(2)[] |
|
MQSystemGF2(int n,
int m)
create m polynomials in GF(2)[x_1,...,x_n] |
|
MQSystemGF2(int n,
int m,
int[][] p)
create the set of polynomials with coefficients from array p |
|
| Method Summary | |
MQSystemGF2 |
addPolynomials(MQSystemGF2 mqs)
compute {f1+g1,..., fm+gm}, where {fi} is this system and {gi} is given |
MQSystemGF2 |
compositionWithLinMapL(int[] vector,
GF2Matrix mtr)
compute F(MX+V), where M is an nxk-matrix over GF(2) V is an n-vector of constants, and F is this systems, i.e., replace old variables by affine-linear combinations of new ones. |
MQSystemGF2 |
compositionWithLinMapR(int[] vector,
GF2Matrix mtr)
compute MF+V, where M is an kxm-matrix over GF(2) V is an k-vector of constants, and F is this systems. |
void |
createRndMQS(int n,
int m)
The method creates random set of m quadratic polynomial in n variable |
void |
createRndMQS(int n,
int m,
SecureRandom sr)
The method creates random set of m quadratic polynomial in n variable |
void |
createSystemFromXd(GF2nPolynomialField field,
int d)
Compute the quadratic polynomial system over GF(2) describing the map of GF(2^n) to GF(2^n) f: X ---> X^(1+2^d), where d is given. |
int[] |
findValueOnPointX(byte[] point)
compute [f1(a1,...,an),...,fm(a1,...,an)], where {f_i} is this system, and A = (a1,...,an) is a point in GF(2)^n |
int |
getM()
|
int |
getN()
|
int[][] |
getPoly()
|
void |
show()
print the set of polynomials |
MQSystemGF2 |
twoSystemsToOne(MQSystemGF2 mqs)
return new system {f1,...,fm,g1,...,gk}, where {fi} is this system and {gi} is given |
| Methods inherited from class java.lang.Object |
|
| Constructor Detail |
public MQSystemGF2()
public MQSystemGF2(int n,
int m)
public MQSystemGF2(int n,
int m,
int[][] p)
| Method Detail |
public final int getN()
public final int getM()
public final int[][] getPoly()
public final void createRndMQS(int n,
int m)
n - -
the number of variablem - -
the number of polynomials
public final void createRndMQS(int n,
int m,
SecureRandom sr)
n - -
the number of variablem - -
the number of polynomialssr - -
PRNGpublic final int[] findValueOnPointX(byte[] point)
point - bytes representation of A
public final MQSystemGF2 compositionWithLinMapL(int[] vector,
GF2Matrix mtr)
vector - mtr - matrix over GF2
public final MQSystemGF2 compositionWithLinMapR(int[] vector,
GF2Matrix mtr)
vector - mtr - matrix over GF2
public final void createSystemFromXd(GF2nPolynomialField field,
int d)
field - finite field GF(2^n)d - non-negative integerpublic final MQSystemGF2 addPolynomials(MQSystemGF2 mqs)
mqs - is system of polynomials {gi}public final MQSystemGF2 twoSystemsToOne(MQSystemGF2 mqs)
mqs - system of polynomials {gi}public final void show()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||