Node.js 中的 crypto.getCurves() 方法

该方法将返回一个包含所有支持的椭圆曲线名称的数组。加密包有一个巨大的椭圆曲线列表,可用于创建椭圆曲线 Diffie-Hellman (ECDH) 密钥交换对象crypto.getCurves()

语法

crypto.getCurves()

参数

因为它返回所有椭圆曲线的列表。它不需要任何参数。

示例

创建一个具有名称的文件 -curves.js并复制以下代码片段。创建文件后,使用以下命令运行此代码,如下例所示 -

node curves.js

曲线.js

// 一个获取所有椭圆曲线的节点演示程序

// 导入加密模块
const crypto = require('crypto');

// 调用 getCurves() 方法
const curves = crypto.getCurves();

// 打印所有算法的列表
console.log("所有椭圆曲线的列表如下: ", curves);
输出结果
C:\home\node>> node curves.js
所有椭圆曲线的列表如下: [ 'Oakley-EC2N-3',
'Oakley-EC2N-4', 'SM2',
'brainpoolP160r1', 'brainpoolP160t1',
'brainpoolP192r1', 'brainpoolP192t1',
'brainpoolP224r1', 'brainpoolP224t1',
'brainpoolP256r1', 'brainpoolP256t1',
'brainpoolP320r1', 'brainpoolP320t1',
'brainpoolP384r1', 'brainpoolP384t1',
'brainpoolP512r1', 'brainpoolP512t1',
'c2pnb163v1', 'c2pnb163v2',
'c2pnb163v3', 'c2pnb176v1',
'c2pnb208w1', 'c2pnb272w1',
'c2pnb304w1', 'c2pnb368w1',
'c2tnb191v1', 'c2tnb191v2',
'c2tnb191v3', 'c2tnb239v1',
'c2tnb239v2', 'c2tnb239v3',
'c2tnb359v1', 'c2tnb431r1',
'prime192v1', 'prime192v2',
'prime192v3', 'prime239v1',
'prime239v2', 'prime239v3',
'prime256v1', 'secp112r1',
'secp112r2', 'secp128r1',
'secp128r2', 'secp160k1',
'secp160r1', 'secp160r2',
'secp192k1', 'secp224k1',
'secp224r1', 'secp256k1',
'secp384r1', 'secp521r1',
'sect113r1', 'sect113r2',
'sect131r1', 'sect131r2',
'sect163k1', 'sect163r1',
'sect163r2', 'sect193r1',
'sect193r2', 'sect233k1',
'sect233r1', 'sect239k1',
'sect283k1', 'sect283r1',
'sect409k1', 'sect409r1',
'sect571k1', 'sect571r1',
'wap-wsg-idm-ecid-wtls1', 'wap-wsg-idm-ecid-wtls10',
'wap-wsg-idm-ecid-wtls11', 'wap-wsg-idm-ecid-wtls12',
'wap-wsg-idm-ecid-wtls3', 'wap-wsg-idm-ecid-wtls4',
'wap-wsg-idm-ecid-wtls5', 'wap-wsg-idm-ecid-wtls6',
'wap-wsg-idm-ecid-wtls7', 'wap-wsg-idm-ecid-wtls8',
'wap-wsg-idm-ecid-wtls9' ]