dcrypt_params/pqc/
rainbow.rs1pub struct RainbowIParams {
5 pub v: usize,
7
8 pub o: [usize; 1],
10
11 pub l: [usize; 2],
13
14 pub q: usize,
16
17 pub public_key_size: usize,
19
20 pub secret_key_size: usize,
22
23 pub signature_size: usize,
25}
26
27pub const RAINBOW_I: RainbowIParams = RainbowIParams {
29 v: 100,
30 o: [36],
31 l: [32, 32],
32 q: 16,
33 public_key_size: 161600,
34 secret_key_size: 103648,
35 signature_size: 64,
36};
37
38pub struct RainbowIIIParams {
40 pub v: usize,
42
43 pub o: [usize; 1],
45
46 pub l: [usize; 2],
48
49 pub q: usize,
51
52 pub public_key_size: usize,
54
55 pub secret_key_size: usize,
57
58 pub signature_size: usize,
60}
61
62pub const RAINBOW_III: RainbowIIIParams = RainbowIIIParams {
64 v: 148,
65 o: [56],
66 l: [48, 44],
67 q: 256,
68 public_key_size: 861400,
69 secret_key_size: 611300,
70 signature_size: 96,
71};
72
73pub struct RainbowVParams {
75 pub v: usize,
77
78 pub o: [usize; 1],
80
81 pub l: [usize; 2],
83
84 pub q: usize,
86
87 pub public_key_size: usize,
89
90 pub secret_key_size: usize,
92
93 pub signature_size: usize,
95}
96
97pub const RAINBOW_V: RainbowVParams = RainbowVParams {
99 v: 196,
100 o: [84],
101 l: [64, 48],
102 q: 256,
103 public_key_size: 1885400,
104 secret_key_size: 1375700,
105 signature_size: 128,
106};