我需要使用openssl在PHP中创建一个密钥对。 生成密钥对的工作原理如下:
$res = openssl_pkey_new([
"curve_name" => 'prime256v1',
"private_key_type" => OPENSSL_KEYTYPE_EC
]);
// Get private key
openssl_pkey_export($res, $privkey);
// Get public key
$pubkey = openssl_pkey_get_details($res);
但是当使用$ pubkey ['key']接收公共密钥时,它给了我一个未压缩的公共密钥。 但是在这种情况下,我需要压缩版本(仅包括x关键点)。 有没有办法在PHP中做到这一点? openssl cmd的等效项是:
openssl ec -in nfcKey.pem -pubout -out nfcPubkey.pem -conv_form compressed