Class QRUOVParameters


  • public class QRUOVParameters
    extends java.lang.Object
    Parameter sets for the QR-UOV multivariate signature scheme (NIST PQC additional signatures Round 2 submission).

    QR-UOV is a quotient-ring UOV variant operating over a small prime field F_q with q in {7, 31, 127}, a quotient ring extension F_q^L = F_q[X]/f(X) for a small irreducible f(X) = x^L - fc * x^fe - fc0, and dimensions (v, m).

    The {@link #qruov_*_shake} constants use SHAKE as the pseudo-random generator (matching the kat_shake test vectors); the {@link #qruov_*_aes} constants use AES-CTR (matching the kat_aes test vectors). Algorithm output is otherwise identical apart from the PRG-driven expansions.

    • Field Detail

      • qruov_1_q127_L3_v156_m54_shake

        public static final QRUOVParameters qruov_1_q127_L3_v156_m54_shake
      • qruov_1_q31_L3_v165_m60_shake

        public static final QRUOVParameters qruov_1_q31_L3_v165_m60_shake
      • qruov_1_q31_L10_v600_m70_shake

        public static final QRUOVParameters qruov_1_q31_L10_v600_m70_shake
      • qruov_1_q7_L10_v740_m100_shake

        public static final QRUOVParameters qruov_1_q7_L10_v740_m100_shake
      • qruov_3_q127_L3_v228_m78_shake

        public static final QRUOVParameters qruov_3_q127_L3_v228_m78_shake
      • qruov_3_q31_L3_v246_m87_shake

        public static final QRUOVParameters qruov_3_q31_L3_v246_m87_shake
      • qruov_3_q31_L10_v890_m100_shake

        public static final QRUOVParameters qruov_3_q31_L10_v890_m100_shake
      • qruov_3_q7_L10_v1100_m140_shake

        public static final QRUOVParameters qruov_3_q7_L10_v1100_m140_shake
      • qruov_5_q127_L3_v306_m105_shake

        public static final QRUOVParameters qruov_5_q127_L3_v306_m105_shake
      • qruov_5_q31_L3_v324_m114_shake

        public static final QRUOVParameters qruov_5_q31_L3_v324_m114_shake
      • qruov_5_q31_L10_v1120_m120_shake

        public static final QRUOVParameters qruov_5_q31_L10_v1120_m120_shake
      • qruov_5_q7_L10_v1490_m190_shake

        public static final QRUOVParameters qruov_5_q7_L10_v1490_m190_shake
      • qruov_1_q127_L3_v156_m54_aes

        public static final QRUOVParameters qruov_1_q127_L3_v156_m54_aes
      • qruov_1_q31_L3_v165_m60_aes

        public static final QRUOVParameters qruov_1_q31_L3_v165_m60_aes
      • qruov_1_q31_L10_v600_m70_aes

        public static final QRUOVParameters qruov_1_q31_L10_v600_m70_aes
      • qruov_1_q7_L10_v740_m100_aes

        public static final QRUOVParameters qruov_1_q7_L10_v740_m100_aes
      • qruov_3_q127_L3_v228_m78_aes

        public static final QRUOVParameters qruov_3_q127_L3_v228_m78_aes
      • qruov_3_q31_L3_v246_m87_aes

        public static final QRUOVParameters qruov_3_q31_L3_v246_m87_aes
      • qruov_3_q31_L10_v890_m100_aes

        public static final QRUOVParameters qruov_3_q31_L10_v890_m100_aes
      • qruov_3_q7_L10_v1100_m140_aes

        public static final QRUOVParameters qruov_3_q7_L10_v1100_m140_aes
      • qruov_5_q127_L3_v306_m105_aes

        public static final QRUOVParameters qruov_5_q127_L3_v306_m105_aes
      • qruov_5_q31_L3_v324_m114_aes

        public static final QRUOVParameters qruov_5_q31_L3_v324_m114_aes
      • qruov_5_q31_L10_v1120_m120_aes

        public static final QRUOVParameters qruov_5_q31_L10_v1120_m120_aes
      • qruov_5_q7_L10_v1490_m190_aes

        public static final QRUOVParameters qruov_5_q7_L10_v1490_m190_aes
    • Method Detail

      • getName

        public java.lang.String getName()
      • getCategory

        public int getCategory()
      • getQ

        public int getQ()
      • getL

        public int getL()
      • getV

        public int getV()
      • getM

        public int getM()
      • getFc

        public int getFc()
      • getFe

        public int getFe()
      • getFc0

        public int getFc0()
      • getTau1

        public int getTau1()
      • getTau2

        public int getTau2()
      • getTau3

        public int getTau3()
      • getTau4

        public int getTau4()
      • getPrgType

        public int getPrgType()
      • getCeilLog2Q

        public int getCeilLog2Q()
      • getSeedLen

        public int getSeedLen()
      • getSaltLen

        public int getSaltLen()
      • getMuLen

        public int getMuLen()
      • getBigV

        public int getBigV()
      • getBigM

        public int getBigM()
      • getBigN

        public int getBigN()
      • getPublicKeyBytes

        public int getPublicKeyBytes()
      • getPrivateKeyBytes

        public int getPrivateKeyBytes()
      • getSignatureBytes

        public int getSignatureBytes()