github.com/cloudflare/circl@v1.5.0/dh/x25519/testdata/wycheproof_kat.json (about) 1 [ 2 { 3 "tcId":1, 4 "comment":"normal case", 5 "curve":"curve25519", 6 "public":"9c647d9ae589b9f58fdc3ca4947efbc915c4b2e08e744a0edf469dac59c8f85a", 7 "private":"4852834d9d6b77dadeabaaf2e11dca66d19fe74993a7bec36c6e16a0983feaba", 8 "shared":"87b7f212b627f7a54ca5e0bcdaddd5389d9de6156cdbcf8ebe14ffbcfb436551", 9 "result":"valid", 10 "flags":[ 11 12 ] 13 }, 14 { 15 "tcId":2, 16 "comment":"normal case", 17 "curve":"curve25519", 18 "public":"9c647d9ae589b9f58fdc3ca4947efbc915c4b2e08e744a0edf469dac59c8f85a", 19 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 20 "shared":"4b82bd8650ea9b81a42181840926a4ffa16434d1bf298de1db87efb5b0a9e34e", 21 "result":"valid", 22 "flags":[ 23 "LowOrderPublic" 24 ] 25 }, 26 { 27 "tcId":3, 28 "comment":"public key on twist", 29 "curve":"curve25519", 30 "public":"63aa40c6e38346c5caf23a6df0a5e6c80889a08647e551b3563449befcfc9733", 31 "private":"588c061a50804ac488ad774ac716c3f5ba714b2712e048491379a500211998a8", 32 "shared":"b1a707519495ffffb298ff941716b06dfab87cf8d91123fe2be9a233dda22212", 33 "result":"acceptable", 34 "flags":[ 35 "Twist" 36 ] 37 }, 38 { 39 "tcId":4, 40 "comment":"public key on twist", 41 "curve":"curve25519", 42 "public":"0f83c36fded9d32fadf4efa3ae93a90bb5cfa66893bc412c43fa7287dbb99779", 43 "private":"b05bfd32e55325d9fd648cb302848039000b390e44d521e58aab3b29a6960ba8", 44 "shared":"67dd4a6e165533534c0e3f172e4ab8576bca923a5f07b2c069b4c310ff2e935b", 45 "result":"acceptable", 46 "flags":[ 47 "Twist" 48 ] 49 }, 50 { 51 "tcId":5, 52 "comment":"public key on twist", 53 "curve":"curve25519", 54 "public":"0b8211a2b6049097f6871c6c052d3c5fc1ba17da9e32ae458403b05bb283092a", 55 "private":"70e34bcbe1f47fbc0fddfd7c1e1aa53d57bfe0f66d243067b424bb6210bed19c", 56 "shared":"4a0638cfaa9ef1933b47f8939296a6b25be541ef7f70e844c0bcc00b134de64a", 57 "result":"acceptable", 58 "flags":[ 59 "Twist" 60 ] 61 }, 62 { 63 "tcId":6, 64 "comment":"public key on twist", 65 "curve":"curve25519", 66 "public":"343ac20a3b9c6a27b1008176509ad30735856ec1c8d8fcae13912d08d152f46c", 67 "private":"68c1f3a653a4cdb1d37bba94738f8b957a57beb24d646e994dc29a276aad458d", 68 "shared":"399491fce8dfab73b4f9f611de8ea0b27b28f85994250b0f475d585d042ac207", 69 "result":"acceptable", 70 "flags":[ 71 "Twist" 72 ] 73 }, 74 { 75 "tcId":7, 76 "comment":"public key on twist", 77 "curve":"curve25519", 78 "public":"fa695fc7be8d1be5bf704898f388c452bafdd3b8eae805f8681a8d15c2d4e142", 79 "private":"d877b26d06dff9d9f7fd4c5b3769f8cdd5b30516a5ab806be324ff3eb69ea0b2", 80 "shared":"2c4fe11d490a53861776b13b4354abd4cf5a97699db6e6c68c1626d07662f758", 81 "result":"acceptable", 82 "flags":[ 83 "Twist" 84 ] 85 }, 86 { 87 "tcId":8, 88 "comment":"public key = 0", 89 "curve":"curve25519", 90 "public":"0000000000000000000000000000000000000000000000000000000000000000", 91 "private":"207494038f2bb811d47805bcdf04a2ac585ada7f2f23389bfd4658f9ddd4debc", 92 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 93 "result":"acceptable", 94 "flags":[ 95 "Small public key" 96 ] 97 }, 98 { 99 "tcId":9, 100 "comment":"public key = 1", 101 "curve":"curve25519", 102 "public":"0100000000000000000000000000000000000000000000000000000000000000", 103 "private":"202e8972b61c7e61930eb9450b5070eae1c670475685541f0476217e4818cfab", 104 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 105 "result":"acceptable", 106 "flags":[ 107 "Small public key" 108 ] 109 }, 110 { 111 "tcId":10, 112 "comment":"edge case on twist", 113 "curve":"curve25519", 114 "public":"0200000000000000000000000000000000000000000000000000000000000000", 115 "private":"38dde9f3e7b799045f9ac3793d4a9277dadeadc41bec0290f81f744f73775f84", 116 "shared":"9a2cfe84ff9c4a9739625cae4a3b82a906877a441946f8d7b3d795fe8f5d1639", 117 "result":"acceptable", 118 "flags":[ 119 "Twist" 120 ] 121 }, 122 { 123 "tcId":11, 124 "comment":"edge case on twist", 125 "curve":"curve25519", 126 "public":"0300000000000000000000000000000000000000000000000000000000000000", 127 "private":"9857a914e3c29036fd9a442ba526b5cdcdf28216153e636c10677acab6bd6aa5", 128 "shared":"4da4e0aa072c232ee2f0fa4e519ae50b52c1edd08a534d4ef346c2e106d21d60", 129 "result":"acceptable", 130 "flags":[ 131 "Twist" 132 ] 133 }, 134 { 135 "tcId":12, 136 "comment":"edge case on twist", 137 "curve":"curve25519", 138 "public":"ffffff030000f8ffff1f0000c0ffffff000000feffff070000f0ffff3f000000", 139 "private":"48e2130d723305ed05e6e5894d398a5e33367a8c6aac8fcdf0a88e4b42820db7", 140 "shared":"9ed10c53747f647f82f45125d3de15a1e6b824496ab40410ffcc3cfe95760f3b", 141 "result":"acceptable", 142 "flags":[ 143 "Twist" 144 ] 145 }, 146 { 147 "tcId":13, 148 "comment":"edge case on twist", 149 "curve":"curve25519", 150 "public":"000000fcffff070000e0ffff3f000000ffffff010000f8ffff0f0000c0ffff7f", 151 "private":"28f41011691851b3a62b641553b30d0dfddcb8fffcf53700a7be2f6a872e9fb0", 152 "shared":"cf72b4aa6aa1c9f894f4165b86109aa468517648e1f0cc70e1ab08460176506b", 153 "result":"acceptable", 154 "flags":[ 155 "Twist" 156 ] 157 }, 158 { 159 "tcId":14, 160 "comment":"edge case on twist", 161 "curve":"curve25519", 162 "public":"00000000ffffffff00000000ffffffff00000000ffffffff00000000ffffff7f", 163 "private":"18a93b6499b9f6b3225ca02fef410e0adec23532321d2d8ef1a6d602a8c65b83", 164 "shared":"5d50b62836bb69579410386cf7bb811c14bf85b1c7b17e5924c7ffea91ef9e12", 165 "result":"acceptable", 166 "flags":[ 167 "Twist" 168 ] 169 }, 170 { 171 "tcId":15, 172 "comment":"edge case on twist", 173 "curve":"curve25519", 174 "public":"eaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 175 "private":"c01d1305a1338a1fcac2ba7e2e032b427e0b04903165aca957d8d0553d8717b0", 176 "shared":"19230eb148d5d67c3c22ab1daeff80a57eae4265ce2872657b2c8099fc698e50", 177 "result":"acceptable", 178 "flags":[ 179 "Twist" 180 ] 181 }, 182 { 183 "tcId":16, 184 "comment":"edge case for public key", 185 "curve":"curve25519", 186 "public":"0400000000000000000000000000000000000000000000000000000000000000", 187 "private":"386f7f16c50731d64f82e6a170b142a4e34f31fd7768fcb8902925e7d1e21abe", 188 "shared":"0fcab5d842a078d7a71fc59b57bfb4ca0be6873b49dcdb9f44e14ae8fbdfa542", 189 "result":"valid", 190 "flags":[ 191 192 ] 193 }, 194 { 195 "tcId":17, 196 "comment":"edge case for public key", 197 "curve":"curve25519", 198 "public":"ffffffff00000000ffffffff00000000ffffffff00000000ffffffff00000000", 199 "private":"e023a289bd5e90fa2804ddc019a05ef3e79d434bb6ea2f522ecb643a75296e95", 200 "shared":"54ce8f2275c077e3b1306a3939c5e03eef6bbb88060544758d9fef59b0bc3e4f", 201 "result":"valid", 202 "flags":[ 203 204 ] 205 }, 206 { 207 "tcId":18, 208 "comment":"edge case for public key", 209 "curve":"curve25519", 210 "public":"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03", 211 "private":"68f010d62ee8d926053a361c3a75c6ea4ebdc8606ab285003a6f8f4076b01e83", 212 "shared":"f136775c5beb0af8110af10b20372332043cab752419678775a223df57c9d30d", 213 "result":"valid", 214 "flags":[ 215 216 ] 217 }, 218 { 219 "tcId":19, 220 "comment":"edge case for public key", 221 "curve":"curve25519", 222 "public":"fffffffbfffffbffffdfffffdffffffffefffffefffff7fffff7ffffbfffff3f", 223 "private":"58ebcb35b0f8845caf1ec630f96576b62c4b7b6c36b29deb2cb0084651755c96", 224 "shared":"bf9affd06b844085586460962ef2146ff3d4533d9444aab006eb88cc3054407d", 225 "result":"valid", 226 "flags":[ 227 228 ] 229 }, 230 { 231 "tcId":20, 232 "comment":"edge case for public key", 233 "curve":"curve25519", 234 "public":"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3f", 235 "private":"188c4bc5b9c44b38bb658b9b2ae82d5b01015e093184b17cb7863503a783e1bb", 236 "shared":"d480de04f699cb3be0684a9cc2e31281ea0bc5a9dcc157d3d20158d46ca5246d", 237 "result":"valid", 238 "flags":[ 239 240 ] 241 }, 242 { 243 "tcId":21, 244 "comment":"edge case for public key", 245 "curve":"curve25519", 246 "public":"fffffffffeffff7ffffffffffeffff7ffffffffffeffff7ffffffffffeffff7f", 247 "private":"e06c11bb2e13ce3dc7673f67f5482242909423a9ae95ee986a988d98faee23a2", 248 "shared":"4c4401cce6b51e4cb18f2790246c9bf914db667750a1cb89069092af07292276", 249 "result":"valid", 250 "flags":[ 251 252 ] 253 }, 254 { 255 "tcId":22, 256 "comment":"edge case for public key", 257 "curve":"curve25519", 258 "public":"ebffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 259 "private":"c0658c46dde18129293877535b1162b6f9f5414a23cf4d2cbc140a4d99da2b8f", 260 "shared":"578ba8cc2dbdc575afcf9df2b3ee6189f5337d6854c79b4ce165ea12293b3a0f", 261 "result":"valid", 262 "flags":[ 263 264 ] 265 }, 266 { 267 "tcId":23, 268 "comment":"public key with low order", 269 "curve":"curve25519", 270 "public":"e0eb7a7c3b41b8ae1656e3faf19fc46ada098deb9c32b1fd866205165f49b800", 271 "private":"10255c9230a97a30a458ca284a629669293a31890cda9d147febc7d1e22d6bb1", 272 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 273 "result":"acceptable", 274 "flags":[ 275 "LowOrderPublic" 276 ] 277 }, 278 { 279 "tcId":24, 280 "comment":"public key with low order", 281 "curve":"curve25519", 282 "public":"5f9c95bca3508c24b1d0b1559c83ef5b04445cc4581c8e86d8224eddd09f1157", 283 "private":"78f1e8edf14481b389448dac8f59c70b038e7cf92ef2c7eff57a72466e115296", 284 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 285 "result":"acceptable", 286 "flags":[ 287 "LowOrderPublic" 288 ] 289 }, 290 { 291 "tcId":25, 292 "comment":"public key with low order", 293 "curve":"curve25519", 294 "public":"ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 295 "private":"a0a05a3e8f9f44204d5f8059a94ac7dfc39a49ac016dd743dbfa43c5d671fd88", 296 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 297 "result":"acceptable", 298 "flags":[ 299 "LowOrderPublic" 300 ] 301 }, 302 { 303 "tcId":26, 304 "comment":"public key with low order", 305 "curve":"curve25519", 306 "public":"edffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 307 "private":"d0dbb3ed1906663f15420af31f4eaf6509d9a9949723500605ad7c1c6e7450a9", 308 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 309 "result":"acceptable", 310 "flags":[ 311 "LowOrderPublic" 312 ] 313 }, 314 { 315 "tcId":27, 316 "comment":"public key with low order", 317 "curve":"curve25519", 318 "public":"eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 319 "private":"c0b1d0eb22b244fe3291140072cdd9d989b5f0ecd96c100feb5bca241c1d9f8f", 320 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 321 "result":"acceptable", 322 "flags":[ 323 "LowOrderPublic" 324 ] 325 }, 326 { 327 "tcId":28, 328 "comment":"public key with low order", 329 "curve":"curve25519", 330 "public":"0000000000000000000000000000000000000000000000000000000000000080", 331 "private":"480bf45f594942a8bc0f3353c6e8b8853d77f351f1c2ca6c2d1abf8a00b4229c", 332 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 333 "result":"acceptable", 334 "flags":[ 335 "LowOrderPublic" 336 ] 337 }, 338 { 339 "tcId":29, 340 "comment":"public key with low order", 341 "curve":"curve25519", 342 "public":"0100000000000000000000000000000000000000000000000000000000000080", 343 "private":"30f993fcf8514fc89bd8db14cd43ba0d4b2530e73c4276a05e1b145d420cedb4", 344 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 345 "result":"acceptable", 346 "flags":[ 347 "LowOrderPublic" 348 ] 349 }, 350 { 351 "tcId":30, 352 "comment":"public key with low order", 353 "curve":"curve25519", 354 "public":"e0eb7a7c3b41b8ae1656e3faf19fc46ada098deb9c32b1fd866205165f49b880", 355 "private":"c04974b758380e2a5b5df6eb09bb2f6b3434f982722a8e676d3da251d1b3de83", 356 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 357 "result":"acceptable", 358 "flags":[ 359 "LowOrderPublic" 360 ] 361 }, 362 { 363 "tcId":31, 364 "comment":"public key with low order", 365 "curve":"curve25519", 366 "public":"5f9c95bca3508c24b1d0b1559c83ef5b04445cc4581c8e86d8224eddd09f11d7", 367 "private":"502a31373db32446842fe5add3e024022ea54f274182afc3d9f1bb3d39534eb5", 368 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 369 "result":"acceptable", 370 "flags":[ 371 "LowOrderPublic" 372 ] 373 }, 374 { 375 "tcId":32, 376 "comment":"public key with low order", 377 "curve":"curve25519", 378 "public":"ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 379 "private":"90fa6417b0e37030fd6e43eff2abaef14c6793117a039cf621318ba90f4e98be", 380 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 381 "result":"acceptable", 382 "flags":[ 383 "LowOrderPublic" 384 ] 385 }, 386 { 387 "tcId":33, 388 "comment":"public key with low order", 389 "curve":"curve25519", 390 "public":"edffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 391 "private":"78ad3f26027f1c9fdd975a1613b947779bad2cf2b741ade01840885a30bb979c", 392 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 393 "result":"acceptable", 394 "flags":[ 395 "LowOrderPublic" 396 ] 397 }, 398 { 399 "tcId":34, 400 "comment":"public key with low order", 401 "curve":"curve25519", 402 "public":"eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 403 "private":"98e23de7b1e0926ed9c87e7b14baf55f497a1d7096f93977680e44dc1c7b7b8b", 404 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 405 "result":"acceptable", 406 "flags":[ 407 "LowOrderPublic" 408 ] 409 }, 410 { 411 "tcId":35, 412 "comment":"public key with low order", 413 "curve":"curve25519", 414 "public":"0000000000000000000000000000000000000000000000000000000000000000", 415 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 416 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 417 "result":"acceptable", 418 "flags":[ 419 420 ] 421 }, 422 { 423 "tcId":36, 424 "comment":"public key with low order", 425 "curve":"curve25519", 426 "public":"0100000000000000000000000000000000000000000000000000000000000000", 427 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 428 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 429 "result":"acceptable", 430 "flags":[ 431 432 ] 433 }, 434 { 435 "tcId":37, 436 "comment":"public key with low order", 437 "curve":"curve25519", 438 "public":"ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 439 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 440 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 441 "result":"acceptable", 442 "flags":[ 443 444 ] 445 }, 446 { 447 "tcId":38, 448 "comment":"public key with low order", 449 "curve":"curve25519", 450 "public":"5f9c95bca3508c24b1d0b1559c83ef5b04445cc4581c8e86d8224eddd09f1157", 451 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 452 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 453 "result":"acceptable", 454 "flags":[ 455 456 ] 457 }, 458 { 459 "tcId":39, 460 "comment":"public key with low order", 461 "curve":"curve25519", 462 "public":"e0eb7a7c3b41b8ae1656e3faf19fc46ada098deb9c32b1fd866205165f49b800", 463 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 464 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 465 "result":"acceptable", 466 "flags":[ 467 468 ] 469 }, 470 { 471 "tcId":40, 472 "comment":"public key with low order", 473 "curve":"curve25519", 474 "public":"edffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 475 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 476 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 477 "result":"acceptable", 478 "flags":[ 479 480 ] 481 }, 482 { 483 "tcId":41, 484 "comment":"public key with low order", 485 "curve":"curve25519", 486 "public":"eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 487 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 488 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 489 "result":"acceptable", 490 "flags":[ 491 492 ] 493 }, 494 { 495 "tcId":42, 496 "comment":"public key with low order", 497 "curve":"curve25519", 498 "public":"0000000000000000000000000000000000000000000000000000000000000080", 499 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 500 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 501 "result":"acceptable", 502 "flags":[ 503 504 ] 505 }, 506 { 507 "tcId":43, 508 "comment":"public key with low order", 509 "curve":"curve25519", 510 "public":"0100000000000000000000000000000000000000000000000000000000000080", 511 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 512 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 513 "result":"acceptable", 514 "flags":[ 515 516 ] 517 }, 518 { 519 "tcId":44, 520 "comment":"public key with low order", 521 "curve":"curve25519", 522 "public":"ecffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 523 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 524 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 525 "result":"acceptable", 526 "flags":[ 527 528 ] 529 }, 530 { 531 "tcId":45, 532 "comment":"public key with low order", 533 "curve":"curve25519", 534 "public":"5f9c95bca3508c24b1d0b1559c83ef5b04445cc4581c8e86d8224eddd09f11d7", 535 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 536 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 537 "result":"acceptable", 538 "flags":[ 539 540 ] 541 }, 542 { 543 "tcId":46, 544 "comment":"public key with low order", 545 "curve":"curve25519", 546 "public":"e0eb7a7c3b41b8ae1656e3faf19fc46ada098deb9c32b1fd866205165f49b880", 547 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 548 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 549 "result":"acceptable", 550 "flags":[ 551 552 ] 553 }, 554 { 555 "tcId":47, 556 "comment":"public key with low order", 557 "curve":"curve25519", 558 "public":"edffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 559 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 560 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 561 "result":"acceptable", 562 "flags":[ 563 564 ] 565 }, 566 { 567 "tcId":48, 568 "comment":"public key with low order", 569 "curve":"curve25519", 570 "public":"eeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 571 "private":"1064a67da639a8f6df4fbea2d63358b65bca80a770712e14ea8a72df5a3313ae", 572 "shared":"0000000000000000000000000000000000000000000000000000000000000000", 573 "result":"acceptable", 574 "flags":[ 575 576 ] 577 }, 578 { 579 "tcId":49, 580 "comment":"public key >= p", 581 "curve":"curve25519", 582 "public":"efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 583 "private":"f01e48dafac9d7bcf589cbc382c878d18bda3550589ffb5d50b523bebe329dae", 584 "shared":"bd36a0790eb883098c988b21786773de0b3a4df162282cf110de18dd484ce74b", 585 "result":"acceptable", 586 "flags":[ 587 588 ] 589 }, 590 { 591 "tcId":50, 592 "comment":"public key >= p", 593 "curve":"curve25519", 594 "public":"f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 595 "private":"288796bc5aff4b81a37501757bc0753a3c21964790d38699308debc17a6eaf8d", 596 "shared":"b4e0dd76da7b071728b61f856771aa356e57eda78a5b1655cc3820fb5f854c5c", 597 "result":"acceptable", 598 "flags":[ 599 600 ] 601 }, 602 { 603 "tcId":51, 604 "comment":"public key >= p", 605 "curve":"curve25519", 606 "public":"f1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 607 "private":"98df845f6651bf1138221f119041f72b6dbc3c4ace7143d99fd55ad867480da8", 608 "shared":"6fdf6c37611dbd5304dc0f2eb7c9517eb3c50e12fd050ac6dec27071d4bfc034", 609 "result":"acceptable", 610 "flags":[ 611 612 ] 613 }, 614 { 615 "tcId":52, 616 "comment":"public key >= p", 617 "curve":"curve25519", 618 "public":"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 619 "private":"f09498e46f02f878829e78b803d316a2ed695d0498a08abdf8276930e24edcb0", 620 "shared":"4c8fc4b1c6ab88fb21f18f6d4c810240d4e94651ba44f7a2c863cec7dc56602d", 621 "result":"acceptable", 622 "flags":[ 623 624 ] 625 }, 626 { 627 "tcId":53, 628 "comment":"public key >= p", 629 "curve":"curve25519", 630 "public":"0200000000000000000000000000000000000000000000000000000000000080", 631 "private":"1813c10a5c7f21f96e17f288c0cc37607c04c5f5aea2db134f9e2ffc66bd9db8", 632 "shared":"1cd0b28267dc541c642d6d7dca44a8b38a63736eef5c4e6501ffbbb1780c033c", 633 "result":"acceptable", 634 "flags":[ 635 636 ] 637 }, 638 { 639 "tcId":54, 640 "comment":"public key >= p", 641 "curve":"curve25519", 642 "public":"0300000000000000000000000000000000000000000000000000000000000080", 643 "private":"7857fb808653645a0beb138a64f5f4d733a45ea84c3cda11a9c06f7e7139149e", 644 "shared":"8755be01c60a7e825cff3e0e78cb3aa4333861516aa59b1c51a8b2a543dfa822", 645 "result":"acceptable", 646 "flags":[ 647 648 ] 649 }, 650 { 651 "tcId":55, 652 "comment":"public key >= p", 653 "curve":"curve25519", 654 "public":"0400000000000000000000000000000000000000000000000000000000000080", 655 "private":"e03aa842e2abc56e81e87b8b9f417b2a1e5913c723eed28d752f8d47a59f498f", 656 "shared":"54c9a1ed95e546d27822a360931dda60a1df049da6f904253c0612bbdc087476", 657 "result":"acceptable", 658 "flags":[ 659 660 ] 661 }, 662 { 663 "tcId":56, 664 "comment":"public key >= p", 665 "curve":"curve25519", 666 "public":"daffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 667 "private":"f8f707b7999b18cb0d6b96124f2045972ca274bfc154ad0c87038c24c6d0d4b2", 668 "shared":"cc1f40d743cdc2230e1043daba8b75e810f1fbab7f255269bd9ebb29e6bf494f", 669 "result":"acceptable", 670 "flags":[ 671 672 ] 673 }, 674 { 675 "tcId":57, 676 "comment":"public key >= p", 677 "curve":"curve25519", 678 "public":"dbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 679 "private":"a034f684fa631e1a348118c1ce4c98231f2d9eec9ba5365b4a05d69a785b0796", 680 "shared":"54998ee43a5b007bf499f078e736524400a8b5c7e9b9b43771748c7cdf880412", 681 "result":"acceptable", 682 "flags":[ 683 684 ] 685 }, 686 { 687 "tcId":58, 688 "comment":"public key >= p", 689 "curve":"curve25519", 690 "public":"dcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 691 "private":"30b6c6a0f2ffa680768f992ba89e152d5bc9893d38c9119be4f767bfab6e0ca5", 692 "shared":"ead9b38efdd723637934e55ab717a7ae09eb86a21dc36a3feeb88b759e391e09", 693 "result":"acceptable", 694 "flags":[ 695 696 ] 697 }, 698 { 699 "tcId":59, 700 "comment":"public key >= p", 701 "curve":"curve25519", 702 "public":"eaffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 703 "private":"901b9dcf881e01e027575035d40b43bdc1c5242e030847495b0c7286469b6591", 704 "shared":"602ff40789b54b41805915fe2a6221f07a50ffc2c3fc94cf61f13d7904e88e0e", 705 "result":"acceptable", 706 "flags":[ 707 708 ] 709 }, 710 { 711 "tcId":60, 712 "comment":"public key >= p", 713 "curve":"curve25519", 714 "public":"ebffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 715 "private":"8046677c28fd82c9a1bdb71a1a1a34faba1225e2507fe3f54d10bd5b0d865f8e", 716 "shared":"e00ae8b143471247ba24f12c885536c3cb981b58e1e56b2baf35c12ae1f79c26", 717 "result":"acceptable", 718 "flags":[ 719 720 ] 721 }, 722 { 723 "tcId":61, 724 "comment":"public key >= p", 725 "curve":"curve25519", 726 "public":"efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 727 "private":"602f7e2f68a846b82cc269b1d48e939886ae54fd636c1fe074d710127d472491", 728 "shared":"98cb9b50dd3fc2b0d4f2d2bf7c5cfdd10c8fcd31fc40af1ad44f47c131376362", 729 "result":"acceptable", 730 "flags":[ 731 732 ] 733 }, 734 { 735 "tcId":62, 736 "comment":"public key >= p", 737 "curve":"curve25519", 738 "public":"f0ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 739 "private":"60887b3dc72443026ebedbbbb70665f42b87add1440e7768fbd7e8e2ce5f639d", 740 "shared":"38d6304c4a7e6d9f7959334fb5245bd2c754525d4c91db950206926234c1f633", 741 "result":"acceptable", 742 "flags":[ 743 744 ] 745 }, 746 { 747 "tcId":63, 748 "comment":"public key >= p", 749 "curve":"curve25519", 750 "public":"f1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 751 "private":"78d31dfa854497d72d8def8a1b7fb006cec2d8c4924647c93814ae56faeda495", 752 "shared":"786cd54996f014a5a031ec14db812ed08355061fdb5de680a800ac521f318e23", 753 "result":"acceptable", 754 "flags":[ 755 756 ] 757 }, 758 { 759 "tcId":64, 760 "comment":"public key >= p", 761 "curve":"curve25519", 762 "public":"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff", 763 "private":"c04c5baefa8302ddded6a4bb957761b4eb97aefa4fc3b8043085f96a5659b3a5", 764 "shared":"29ae8bc73e9b10a08b4f681c43c3e0ac1a171d31b38f1a48efba29ae639ea134", 765 "result":"acceptable", 766 "flags":[ 767 768 ] 769 }, 770 { 771 "tcId":65, 772 "comment":"RFC 7748", 773 "curve":"curve25519", 774 "public":"e6db6867583030db3594c1a424b15f7c726624ec26b3353b10a903a6d0ab1c4c", 775 "private":"a046e36bf0527c9d3b16154b82465edd62144c0ac1fc5a18506a2244ba449a44", 776 "shared":"c3da55379de9c6908e94ea4df28d084f32eccf03491c71f754b4075577a28552", 777 "result":"valid", 778 "flags":[ 779 780 ] 781 }, 782 { 783 "tcId":66, 784 "comment":"RFC 7748", 785 "curve":"curve25519", 786 "public":"e5210f12786811d3f4b7959d0538ae2c31dbe7106fc03c3efc4cd549c715a413", 787 "private":"4866e9d4d1b4673c5ad22691957d6af5c11b6421e0ea01d42ca4169e7918ba4d", 788 "shared":"95cbde9476e8907d7aade45cb4b873f88b595a68799fa152e6f8f7647aac7957", 789 "result":"valid", 790 "flags":[ 791 792 ] 793 }, 794 { 795 "tcId":67, 796 "comment":"edge case for shared secret", 797 "curve":"curve25519", 798 "public":"0ab4e76380d84dde4f6833c58f2a9fb8f83bb0169b172be4b6e0592887741a36", 799 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 800 "shared":"0200000000000000000000000000000000000000000000000000000000000000", 801 "result":"acceptable", 802 "flags":[ 803 "Twist" 804 ] 805 }, 806 { 807 "tcId":68, 808 "comment":"edge case for shared secret", 809 "curve":"curve25519", 810 "public":"89e10d5701b4337d2d032181538b1064bd4084401ceca1fd12663a1959388000", 811 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 812 "shared":"0900000000000000000000000000000000000000000000000000000000000000", 813 "result":"valid", 814 "flags":[ 815 816 ] 817 }, 818 { 819 "tcId":69, 820 "comment":"edge case for shared secret", 821 "curve":"curve25519", 822 "public":"2b55d3aa4a8f80c8c0b2ae5f933e85af49beac36c2fa7394bab76c8933f8f81d", 823 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 824 "shared":"1000000000000000000000000000000000000000000000000000000000000000", 825 "result":"valid", 826 "flags":[ 827 828 ] 829 }, 830 { 831 "tcId":70, 832 "comment":"edge case for shared secret", 833 "curve":"curve25519", 834 "public":"63e5b1fe9601fe84385d8866b0421262f78fbfa5aff9585e626679b18547d959", 835 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 836 "shared":"feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3f", 837 "result":"acceptable", 838 "flags":[ 839 "Twist" 840 ] 841 }, 842 { 843 "tcId":71, 844 "comment":"edge case for shared secret", 845 "curve":"curve25519", 846 "public":"e428f3dac17809f827a522ce32355058d07369364aa78902ee10139b9f9dd653", 847 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 848 "shared":"fcffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3f", 849 "result":"valid", 850 "flags":[ 851 852 ] 853 }, 854 { 855 "tcId":72, 856 "comment":"edge case for shared secret", 857 "curve":"curve25519", 858 "public":"b3b50e3ed3a407b95de942ef74575b5ab8a10c09ee103544d60bdfed8138ab2b", 859 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 860 "shared":"f9ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3f", 861 "result":"acceptable", 862 "flags":[ 863 "Twist" 864 ] 865 }, 866 { 867 "tcId":73, 868 "comment":"edge case for shared secret", 869 "curve":"curve25519", 870 "public":"213fffe93d5ea8cd242e462844029922c43c77c9e3e42f562f485d24c501a20b", 871 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 872 "shared":"f3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3f", 873 "result":"valid", 874 "flags":[ 875 876 ] 877 }, 878 { 879 "tcId":74, 880 "comment":"edge case for shared secret", 881 "curve":"curve25519", 882 "public":"91b232a178b3cd530932441e6139418f72172292f1da4c1834fc5ebfefb51e3f", 883 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 884 "shared":"ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03", 885 "result":"valid", 886 "flags":[ 887 888 ] 889 }, 890 { 891 "tcId":75, 892 "comment":"edge case for shared secret", 893 "curve":"curve25519", 894 "public":"045c6e11c5d332556c7822fe94ebf89b56a3878dc27ca079103058849fabcb4f", 895 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 896 "shared":"e5ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 897 "result":"acceptable", 898 "flags":[ 899 "Twist" 900 ] 901 }, 902 { 903 "tcId":76, 904 "comment":"edge case for shared secret", 905 "curve":"curve25519", 906 "public":"1ca2190b71163539063c35773bda0c9c928e9136f0620aeb093f099197b7f74e", 907 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 908 "shared":"e3ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 909 "result":"acceptable", 910 "flags":[ 911 "Twist" 912 ] 913 }, 914 { 915 "tcId":77, 916 "comment":"edge case for shared secret", 917 "curve":"curve25519", 918 "public":"f76e9010ac33c5043b2d3b76a842171000c4916222e9e85897a0aec7f6350b3c", 919 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 920 "shared":"ddffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 921 "result":"valid", 922 "flags":[ 923 924 ] 925 }, 926 { 927 "tcId":78, 928 "comment":"edge case for shared secret", 929 "curve":"curve25519", 930 "public":"bb72688d8f8aa7a39cd6060cd5c8093cdec6fe341937c3886a99346cd07faa55", 931 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 932 "shared":"dbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff7f", 933 "result":"acceptable", 934 "flags":[ 935 "Twist" 936 ] 937 }, 938 { 939 "tcId":79, 940 "comment":"edge case for shared secret", 941 "curve":"curve25519", 942 "public":"88fddea193391c6a5933ef9b71901549447205aae9da928a6b91a352ba10f41f", 943 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 944 "shared":"0000000000000000000000000000000000000000000000000000000000000002", 945 "result":"acceptable", 946 "flags":[ 947 "Twist" 948 ] 949 }, 950 { 951 "tcId":80, 952 "comment":"edge case for shared secret", 953 "curve":"curve25519", 954 "public":"303b392f153116cad9cc682a00ccc44c95ff0d3bbe568beb6c4e739bafdc2c68", 955 "private":"a0a4f130b98a5be4b1cedb7cb85584a3520e142d474dc9ccb909a073a976bf63", 956 "shared":"0000000000000000000000000000000000000000000000000000000000008000", 957 "result":"acceptable", 958 "flags":[ 959 "Twist" 960 ] 961 }, 962 { 963 "tcId":81, 964 "comment":"checking for overflow", 965 "curve":"curve25519", 966 "public":"fd300aeb40e1fa582518412b49b208a7842b1e1f056a040178ea4141534f652d", 967 "private":"c81724704000b26d31703cc97e3a378d56fad8219361c88cca8bd7c5719b12b2", 968 "shared":"b734105dc257585d73b566ccb76f062795ccbec89128e52b02f3e59639f13c46", 969 "result":"valid", 970 "flags":[ 971 972 ] 973 }, 974 { 975 "tcId":82, 976 "comment":"checking for overflow", 977 "curve":"curve25519", 978 "public":"c8ef79b514d7682677bc7931e06ee5c27c9b392b4ae9484473f554e6678ecc2e", 979 "private":"c81724704000b26d31703cc97e3a378d56fad8219361c88cca8bd7c5719b12b2", 980 "shared":"647a46b6fc3f40d62141ee3cee706b4d7a9271593a7b143e8e2e2279883e4550", 981 "result":"valid", 982 "flags":[ 983 984 ] 985 }, 986 { 987 "tcId":83, 988 "comment":"checking for overflow", 989 "curve":"curve25519", 990 "public":"64aeac2504144861532b7bbcb6c87d67dd4c1f07ebc2e06effb95aecc6170b2c", 991 "private":"c81724704000b26d31703cc97e3a378d56fad8219361c88cca8bd7c5719b12b2", 992 "shared":"4ff03d5fb43cd8657a3cf37c138cadcecce509e4eba089d0ef40b4e4fb946155", 993 "result":"valid", 994 "flags":[ 995 996 ] 997 }, 998 { 999 "tcId":84, 1000 "comment":"checking for overflow", 1001 "curve":"curve25519", 1002 "public":"bf68e35e9bdb7eee1b50570221860f5dcdad8acbab031b14974cc49013c49831", 1003 "private":"c81724704000b26d31703cc97e3a378d56fad8219361c88cca8bd7c5719b12b2", 1004 "shared":"21cee52efdbc812e1d021a4af1e1d8bc4db3c400e4d2a2c56a3926db4d99c65b", 1005 "result":"valid", 1006 "flags":[ 1007 1008 ] 1009 }, 1010 { 1011 "tcId":85, 1012 "comment":"checking for overflow", 1013 "curve":"curve25519", 1014 "public":"5347c491331a64b43ddc683034e677f53dc32b52a52a577c15a83bf298e99f19", 1015 "private":"c81724704000b26d31703cc97e3a378d56fad8219361c88cca8bd7c5719b12b2", 1016 "shared":"18cb89e4e20c0c2bd324305245266c9327690bbe79acb88f5b8fb3f74eca3e52", 1017 "result":"valid", 1018 "flags":[ 1019 1020 ] 1021 }, 1022 { 1023 "tcId":86, 1024 "comment":"private key == -1 (mod order)", 1025 "curve":"curve25519", 1026 "public":"258e04523b8d253ee65719fc6906c657192d80717edc828fa0af21686e2faa75", 1027 "private":"a023cdd083ef5bb82f10d62e59e15a6800000000000000000000000000000050", 1028 "shared":"258e04523b8d253ee65719fc6906c657192d80717edc828fa0af21686e2faa75", 1029 "result":"valid", 1030 "flags":[ 1031 1032 ] 1033 }, 1034 { 1035 "tcId":87, 1036 "comment":"private key == 1 (mod order) on twist", 1037 "curve":"curve25519", 1038 "public":"2eae5ec3dd494e9f2d37d258f873a8e6e9d0dbd1e383ef64d98bb91b3e0be035", 1039 "private":"58083dd261ad91eff952322ec824c682ffffffffffffffffffffffffffffff5f", 1040 "shared":"2eae5ec3dd494e9f2d37d258f873a8e6e9d0dbd1e383ef64d98bb91b3e0be035", 1041 "result":"acceptable", 1042 "flags":[ 1043 1044 ] 1045 } 1046 ]