1 Title = Argon2 tests (from rfc 9106 and others)
6 Ctrl.memcost = memcost:32
7 Ctrl.secret = hexsecret:0303030303030303
8 Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101
9 Ctrl.salt = hexsalt:02020202020202020202020202020202
10 Ctrl.ad = hexad:040404040404040404040404
11 Output = 512B391B6F1162975371D30919734294F868E3BE3984F3C1A13A4DB9FABE4ACB
16 Ctrl.memcost = memcost:32
17 Ctrl.secret = hexsecret:0303030303030303
18 Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101
19 Ctrl.salt = hexsalt:02020202020202020202020202020202
20 Ctrl.ad = hexad:040404040404040404040404
21 Ctrl.early_clean = early_clean:1
22 Output = 512B391B6F1162975371D30919734294F868E3BE3984F3C1A13A4DB9FABE4ACB
27 Ctrl.memcost = memcost:32
28 Ctrl.secret = hexsecret:0303030303030303
29 Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101
30 Ctrl.salt = hexsalt:02020202020202020202020202020202
31 Ctrl.ad = hexad:040404040404040404040404
32 Output = C814D9D1DC7F37AA13F0D77F2494BDA1C8DE6B016DD388D29952A4C4672B6CE8
37 Ctrl.memcost = memcost:32
38 Ctrl.secret = hexsecret:0303030303030303
39 Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101
40 Ctrl.salt = hexsalt:02020202020202020202020202020202
41 Ctrl.ad = hexad:040404040404040404040404
42 Output = 0D640DF58D78766C08C037A34A8B53C9D01EF0452D75B65EB52520E96B01E659
45 Ctrl.pass = hexpass:31323334353637383930
46 Ctrl.salt = hexsalt:73616C7473616C74
47 Output = D16AD773B1C6400D3193BC3E66271603E9DE72BACE20AF3F89C236F5434CDEC99072DDFC6B9C77EA9F386C0E8D7CB0C37CEC6EC3277A22C92D5BE58EF67C7EAA
52 Ctrl.memcost = memcost:32
53 Ctrl.salt = hexsalt:02020202020202020202020202020202
54 Output = 0A34F1ABDE67086C82E785EAF17C68382259A264F4E61B91CD2763CB75AC189A
57 Ctrl.pass = hexpass:31323334353637383930
58 Ctrl.salt = hexsalt:73616C7473616C74
59 Output = D16AD773B1C6400D3193BC3E66271603E9DE72BACE20AF3F89C236F5434CDEC99072DDFC6B9C77EA9F386C0E8D7CB0C37CEC6EC3277A22C92D5BE58EF67C7EAA
63 Ctrl.memcost = memcost:65536
64 Ctrl.pass = hexpass:31323334353637383930
65 Ctrl.salt = hexsalt:73616C7473616C74
66 Output = 5CA0AB135DE1241454840172696C301C7B8FD99A788CD11CF9699044CADF7FCA0A6E3762CB3043A71ADF6553DB3FD7925101B0CCF8868B098492A4ADDB2486BC
71 Ctrl.memcost = memcost:32
72 Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101
73 Ctrl.salt = hexsalt:02020202020202020202020202020202
74 Output = A9A7510E6DB4D588BA3414CD0E094D480D683F97B9CCB612A544FE8EF65BA8E0
79 Ctrl.memcost = memcost:32
80 Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101
81 Ctrl.salt = hexsalt:02020202020202020202020202020202
82 Output = 03AAB965C12001C9D7D0D2DE33192C0494B684BB148196D73C1DF1ACAF6D0C2E
86 Ctrl.threads = threads:2
88 Ctrl.memcost = memcost:65536
89 Ctrl.pass = pass:1234567890
90 Ctrl.salt = hexsalt:73616C7473616C74
91 Output = A86C83A19F0B234ECBA8C275D16D059153F961E4C39EC9B1BE98B3E73D791789363682443AD594334048634E91C493AFFED0BC29FD329A0E553C00149D6DB19AF4E4A354AEC14DBD575D78BA87D4A4BC4746666E7A4E6EE1572BBFFC2EBA308A2D825CB7B41FDE3A95D5CFF0DFA2D0FDD636B32AEA8B4A3C532742D330BD1B90
95 Ctrl.threads = threads:2
98 Ctrl.memcost = memcost:32
99 Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101
100 Ctrl.salt = hexsalt:02020202020202020202020202020202
101 Output = 03AAB965C12001C9D7D0D2DE33192C0494B684BB148196D73C1DF1ACAF6D0C2E
103 # Expected fail on condition violation: m_cost < 8 * lanes
106 Ctrl.lanes = lanes:100
107 Ctrl.memcost = memcost:799
108 Ctrl.salt = hexsalt:02020202020202020202020202020202
109 Output = 03AAB965C12001C9D7D0D2DE33192C0494B684BB148196D73C1DF1ACAF6D0C2E
110 Result = KDF_DERIVE_ERROR
112 # Expected fail on condition violation: m_cost < 2 * syncpoints = 8
115 Ctrl.memcost = memcost:7
116 Ctrl.pass = hexpass:31323334353637383930
117 Ctrl.salt = hexsalt:73616C7473616C74
118 Result = KDF_CTRL_ERROR
120 # Expected fail on condition violation: threads > avail threads
123 Ctrl.threads = threads:2
125 Ctrl.memcost = memcost:65536
126 Ctrl.pass = hexpass:31323334353637383930
127 Ctrl.salt = hexsalt:73616C7473616C74
128 Result = KDF_DERIVE_ERROR
130 # Expected fail on condition violation: lanes >= 1
133 Result = KDF_CTRL_ERROR
135 # Expected fail on condition violation: lanes <= 0xFFFFFF
137 Ctrl.lanes = lanes:0x1000000
138 Result = KDF_CTRL_ERROR
140 # Expected fail on condition violation: threads >= 1
142 Ctrl.lanes = threads:0
143 Result = KDF_CTRL_ERROR
145 # Expected fail on condition violation: threads <= 0xFFFFFF
147 Ctrl.lanes = threads:0x1000000
148 Result = KDF_CTRL_ERROR
150 # Expected fail on condition violation: outlen >= 4
153 Result = KDF_CTRL_ERROR
155 # Expected fail on condition violation: iter >= 1
158 Result = KDF_CTRL_ERROR
160 # Expected fail on condition violation: saltlen > 8
162 Ctrl.salt = hexsalt:0202
163 Result = KDF_CTRL_ERROR
165 # Expected fail on condition violation: invalid version
167 Ctrl.version = version:1
168 Result = KDF_CTRL_ERROR