dcrypt_params/pqc/
ntru.rs1pub struct NtruHpsParams {
5 pub n: usize,
7
8 pub q: u16,
10
11 pub p: u16,
13
14 pub d: usize,
16
17 pub public_key_size: usize,
19
20 pub secret_key_size: usize,
22
23 pub ciphertext_size: usize,
25
26 pub shared_secret_size: usize,
28}
29
30pub const NTRU_HPS_2048_509: NtruHpsParams = NtruHpsParams {
32 n: 509,
33 q: 2048,
34 p: 3,
35 d: 254,
36 public_key_size: 699,
37 secret_key_size: 935,
38 ciphertext_size: 699,
39 shared_secret_size: 32,
40};
41
42pub const NTRU_HPS_2048_677: NtruHpsParams = NtruHpsParams {
44 n: 677,
45 q: 2048,
46 p: 3,
47 d: 254,
48 public_key_size: 930,
49 secret_key_size: 1234,
50 ciphertext_size: 930,
51 shared_secret_size: 32,
52};
53
54pub const NTRU_HPS_4096_821: NtruHpsParams = NtruHpsParams {
56 n: 821,
57 q: 4096,
58 p: 3,
59 d: 254,
60 public_key_size: 1230,
61 secret_key_size: 1590,
62 ciphertext_size: 1230,
63 shared_secret_size: 32,
64};
65
66pub struct NtruHrssParams {
68 pub n: usize,
70
71 pub q: u16,
73
74 pub p: u16,
76
77 pub public_key_size: usize,
79
80 pub secret_key_size: usize,
82
83 pub ciphertext_size: usize,
85
86 pub shared_secret_size: usize,
88}
89
90pub const NTRU_HRSS_701: NtruHrssParams = NtruHrssParams {
92 n: 701,
93 q: 8192,
94 p: 3,
95 public_key_size: 1138,
96 secret_key_size: 1450,
97 ciphertext_size: 1138,
98 shared_secret_size: 32,
99};