public class SDitHParameters
extends java.lang.Object
SDitH (Syndrome-Decoding-in-the-Head) has 24 NIST-submitted variants formed from the cross of:
public static final
constants here and adding the corresponding precomputed tables to
SDitHPrecomputed.
The numeric fields follow the reference param.h convention:
m: code length,k: code dimension,w: Hamming weight bound on the SD solution,d: splitting factor (number of twists),t: number of MPC evaluation points per iteration,tau: number of parallel MPC repetitions,dimD: hypercube dimension (2^D leaf parties),seedSize, rhoSize, saltSize,
commitSize, hashSize: in bytes,fpointSize: extension-field byte width (3 or 4),hashBits: SHA3 variant used for commitments and Fiat-Shamir,xofBits: SHAKE variant used as XOF.| Modifier and Type | Field and Description |
|---|---|
static int |
FIELD_GF256 |
static int |
FIELD_P251 |
static SDitHParameters |
sdith_hypercube_cat1_gf256 |
static SDitHParameters |
sdith_hypercube_cat1_p251 |
static SDitHParameters |
sdith_hypercube_cat3_gf256 |
static SDitHParameters |
sdith_hypercube_cat3_p251 |
static SDitHParameters |
sdith_hypercube_cat5_gf256 |
static SDitHParameters |
sdith_hypercube_cat5_p251 |
static SDitHParameters |
sdith_threshold_cat1_gf256 |
static SDitHParameters |
sdith_threshold_cat1_p251 |
static SDitHParameters |
sdith_threshold_cat3_gf256 |
static SDitHParameters |
sdith_threshold_cat3_p251 |
static SDitHParameters |
sdith_threshold_cat5_gf256 |
static SDitHParameters |
sdith_threshold_cat5_p251 |
static int |
VARIANT_HYPERCUBE |
static int |
VARIANT_THRESHOLD |
| Modifier and Type | Method and Description |
|---|---|
int |
getCategory() |
int |
getCommitSize() |
int |
getD() |
int |
getDimD() |
int |
getField() |
int |
getFpointMask() |
int |
getFpointSize() |
int |
getHaNSlice() |
int |
getHashBits() |
int |
getHashSize() |
int |
getK() |
int |
getM() |
int |
getMd() |
java.lang.String |
getName() |
int |
getNbParties()
Threshold variant: number of MPC parties.
|
int |
getNbRevealed()
Threshold variant: number of revealed parties per execution.
|
int |
getRhoSize() |
int |
getSaltSize() |
int |
getSeedSize() |
int |
getT() |
int |
getTau() |
int |
getTreeMaxOpenLeaves()
Threshold variant: upper bound on Merkle authentication-path nodes per
execution.
|
int |
getVariant() |
int |
getW() |
int |
getWd() |
int |
getXofBits() |
int |
getYSize() |
public static final int VARIANT_HYPERCUBE
public static final int VARIANT_THRESHOLD
public static final int FIELD_GF256
public static final int FIELD_P251
public static final SDitHParameters sdith_hypercube_cat1_gf256
public static final SDitHParameters sdith_hypercube_cat3_gf256
public static final SDitHParameters sdith_hypercube_cat5_gf256
public static final SDitHParameters sdith_hypercube_cat1_p251
public static final SDitHParameters sdith_hypercube_cat3_p251
public static final SDitHParameters sdith_hypercube_cat5_p251
public static final SDitHParameters sdith_threshold_cat1_gf256
public static final SDitHParameters sdith_threshold_cat3_gf256
public static final SDitHParameters sdith_threshold_cat5_gf256
public static final SDitHParameters sdith_threshold_cat1_p251
public static final SDitHParameters sdith_threshold_cat3_p251
public static final SDitHParameters sdith_threshold_cat5_p251
public int getNbRevealed()
public int getTreeMaxOpenLeaves()
public int getNbParties()
1 << dimD); for GF(p251) it is 251 (= the prime field size).
The Merkle tree always has 1 << dimD max capacity but only
getNbParties() leaves are populated for the p251 variants.public java.lang.String getName()
public int getVariant()
public int getField()
public int getCategory()
public int getM()
public int getK()
public int getW()
public int getD()
public int getT()
public int getTau()
public int getDimD()
public int getSeedSize()
public int getRhoSize()
public int getSaltSize()
public int getCommitSize()
public int getHashSize()
public int getFpointSize()
public int getHashBits()
public int getXofBits()
public int getWd()
public int getYSize()
public int getHaNSlice()
public int getMd()
public int getFpointMask()