...

Text file src/github.com/cloudflare/circl/dh/x25519/testdata/wycheproof_kat.json

Documentation: github.com/cloudflare/circl/dh/x25519/testdata

     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]

View as plain text