OpenSSL从v1.1.0开始,就支持椭圆曲线密钥交换(ECDH)使用X25519曲线。
而OpenSSL里生成EC密钥对的示例程序大致是这样的:
EVP_PKEY_CTX *pctx, *kctx;
EVP_PKEY *pkey = NULL, *params = NULL;
/* Create the context for parameter generation */
if(NULL == (pctx = EVP_PKEY_CTX_new_id(EVP_PKEY_EC, NULL))) handleErrors();
/* Initialise the parameter generation */
if