1Title = Argon2 tests (from rfc 9106 and others) 2 3KDF = ARGON2D 4Ctrl.lanes = lanes:4 5Ctrl.iter = iter:3 6Ctrl.memcost = memcost:32 7Ctrl.secret = hexsecret:0303030303030303 8Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101 9Ctrl.salt = hexsalt:02020202020202020202020202020202 10Ctrl.ad = hexad:040404040404040404040404 11Output = 512B391B6F1162975371D30919734294F868E3BE3984F3C1A13A4DB9FABE4ACB 12 13KDF = ARGON2D 14Ctrl.lanes = lanes:4 15Ctrl.iter = iter:3 16Ctrl.memcost = memcost:32 17Ctrl.secret = hexsecret:0303030303030303 18Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101 19Ctrl.salt = hexsalt:02020202020202020202020202020202 20Ctrl.ad = hexad:040404040404040404040404 21Ctrl.early_clean = early_clean:1 22Output = 512B391B6F1162975371D30919734294F868E3BE3984F3C1A13A4DB9FABE4ACB 23 24KDF = ARGON2I 25Ctrl.lanes = lanes:4 26Ctrl.iter = iter:3 27Ctrl.memcost = memcost:32 28Ctrl.secret = hexsecret:0303030303030303 29Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101 30Ctrl.salt = hexsalt:02020202020202020202020202020202 31Ctrl.ad = hexad:040404040404040404040404 32Output = C814D9D1DC7F37AA13F0D77F2494BDA1C8DE6B016DD388D29952A4C4672B6CE8 33 34KDF = ARGON2ID 35Ctrl.lanes = lanes:4 36Ctrl.iter = iter:3 37Ctrl.memcost = memcost:32 38Ctrl.secret = hexsecret:0303030303030303 39Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101 40Ctrl.salt = hexsalt:02020202020202020202020202020202 41Ctrl.ad = hexad:040404040404040404040404 42Output = 0D640DF58D78766C08C037A34A8B53C9D01EF0452D75B65EB52520E96B01E659 43 44KDF = ARGON2D 45Ctrl.pass = hexpass:31323334353637383930 46Ctrl.salt = hexsalt:73616C7473616C74 47Output = D16AD773B1C6400D3193BC3E66271603E9DE72BACE20AF3F89C236F5434CDEC99072DDFC6B9C77EA9F386C0E8D7CB0C37CEC6EC3277A22C92D5BE58EF67C7EAA 48 49KDF = ARGON2ID 50Ctrl.lanes = lanes:4 51Ctrl.iter = iter:3 52Ctrl.memcost = memcost:32 53Ctrl.salt = hexsalt:02020202020202020202020202020202 54Output = 0A34F1ABDE67086C82E785EAF17C68382259A264F4E61B91CD2763CB75AC189A 55 56KDF = ARGON2D 57Ctrl.pass = hexpass:31323334353637383930 58Ctrl.salt = hexsalt:73616C7473616C74 59Output = D16AD773B1C6400D3193BC3E66271603E9DE72BACE20AF3F89C236F5434CDEC99072DDFC6B9C77EA9F386C0E8D7CB0C37CEC6EC3277A22C92D5BE58EF67C7EAA 60 61KDF = ARGON2D 62Ctrl.lanes = lanes:2 63Ctrl.memcost = memcost:65536 64Ctrl.pass = hexpass:31323334353637383930 65Ctrl.salt = hexsalt:73616C7473616C74 66Output = 5CA0AB135DE1241454840172696C301C7B8FD99A788CD11CF9699044CADF7FCA0A6E3762CB3043A71ADF6553DB3FD7925101B0CCF8868B098492A4ADDB2486BC 67 68KDF = ARGON2I 69Ctrl.lanes = lanes:4 70Ctrl.iter = iter:3 71Ctrl.memcost = memcost:32 72Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101 73Ctrl.salt = hexsalt:02020202020202020202020202020202 74Output = A9A7510E6DB4D588BA3414CD0E094D480D683F97B9CCB612A544FE8EF65BA8E0 75 76KDF = ARGON2ID 77Ctrl.lanes = lanes:4 78Ctrl.iter = iter:3 79Ctrl.memcost = memcost:32 80Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101 81Ctrl.salt = hexsalt:02020202020202020202020202020202 82Output = 03AAB965C12001C9D7D0D2DE33192C0494B684BB148196D73C1DF1ACAF6D0C2E 83 84KDF = ARGON2D 85Threads = 2 86Ctrl.threads = threads:2 87Ctrl.lanes = lanes:2 88Ctrl.memcost = memcost:65536 89Ctrl.pass = pass:1234567890 90Ctrl.salt = hexsalt:73616C7473616C74 91Output = A86C83A19F0B234ECBA8C275D16D059153F961E4C39EC9B1BE98B3E73D791789363682443AD594334048634E91C493AFFED0BC29FD329A0E553C00149D6DB19AF4E4A354AEC14DBD575D78BA87D4A4BC4746666E7A4E6EE1572BBFFC2EBA308A2D825CB7B41FDE3A95D5CFF0DFA2D0FDD636B32AEA8B4A3C532742D330BD1B90 92 93KDF = ARGON2ID 94Threads = 2 95Ctrl.threads = threads:2 96Ctrl.lanes = lanes:4 97Ctrl.iter = iter:3 98Ctrl.memcost = memcost:32 99Ctrl.pass = hexpass:0101010101010101010101010101010101010101010101010101010101010101 100Ctrl.salt = hexsalt:02020202020202020202020202020202 101Output = 03AAB965C12001C9D7D0D2DE33192C0494B684BB148196D73C1DF1ACAF6D0C2E 102 103# Expected fail on condition violation: m_cost < 8 * lanes 104 105KDF = ARGON2D 106Ctrl.lanes = lanes:100 107Ctrl.memcost = memcost:799 108Ctrl.salt = hexsalt:02020202020202020202020202020202 109Output = 03AAB965C12001C9D7D0D2DE33192C0494B684BB148196D73C1DF1ACAF6D0C2E 110Result = KDF_DERIVE_ERROR 111 112# Expected fail on condition violation: m_cost < 2 * syncpoints = 8 113 114KDF = ARGON2D 115Ctrl.memcost = memcost:7 116Ctrl.pass = hexpass:31323334353637383930 117Ctrl.salt = hexsalt:73616C7473616C74 118Result = KDF_CTRL_ERROR 119 120# Expected fail on condition violation: threads > avail threads 121 122KDF = ARGON2D 123Ctrl.threads = threads:2 124Ctrl.lanes = lanes:2 125Ctrl.memcost = memcost:65536 126Ctrl.pass = hexpass:31323334353637383930 127Ctrl.salt = hexsalt:73616C7473616C74 128Result = KDF_DERIVE_ERROR 129 130# Expected fail on condition violation: lanes >= 1 131KDF = ARGON2D 132Ctrl.lanes = lanes:0 133Result = KDF_CTRL_ERROR 134 135# Expected fail on condition violation: lanes <= 0xFFFFFF 136KDF = ARGON2D 137Ctrl.lanes = lanes:0x1000000 138Result = KDF_CTRL_ERROR 139 140# Expected fail on condition violation: threads >= 1 141KDF = ARGON2D 142Ctrl.lanes = threads:0 143Result = KDF_CTRL_ERROR 144 145# Expected fail on condition violation: threads <= 0xFFFFFF 146KDF = ARGON2D 147Ctrl.lanes = threads:0x1000000 148Result = KDF_CTRL_ERROR 149 150# Expected fail on condition violation: outlen >= 4 151KDF = ARGON2D 152Ctrl.size = size:3 153Result = KDF_CTRL_ERROR 154 155# Expected fail on condition violation: iter >= 1 156KDF = ARGON2D 157Ctrl.iter = iter:0 158Result = KDF_CTRL_ERROR 159 160# Expected fail on condition violation: saltlen > 8 161KDF = ARGON2D 162Ctrl.salt = hexsalt:0202 163Result = KDF_CTRL_ERROR 164 165# Expected fail on condition violation: invalid version 166KDF = ARGON2D 167Ctrl.version = version:1 168Result = KDF_CTRL_ERROR 169