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  ]