github.com/cloudflare/circl@v1.5.0/sign/internal/dilithium/params/params.go (about) 1 package params 2 3 // We put these parameters in a separate package so that the Go code, 4 // such as ntt_amd64_src.go, that generates assembler can import it. 5 6 const ( 7 SeedSize = 32 8 N = 256 9 Q = 8380417 // 2²³ - 2¹³ + 1 10 QBits = 23 11 Qinv = 4236238847 // = -(q^-1) mod 2³² 12 ROver256 = 41978 // = (256)⁻¹ R² mod q, where R=2³² 13 D = 13 14 15 // Size of T1 packed. (Note that the formula is not valid in general, 16 // but it is for the parameters used in the modes of Dilithium.) 17 PolyT1Size = (N * (QBits - D)) / 8 18 19 // Size of T0 packed. (Note that the formula is not valid in general, 20 // but it is for the parameters used in the modes of Dilithium.) 21 PolyT0Size = (N * D) / 8 22 23 // Size of a packed polynomial whose coefficients are in [0,16). 24 PolyLe16Size = N / 2 25 )