Node.js 中的 crypto.createECDH() 方法
node.jsjavascriptweb developmentfront end technology
crypto.createECDH() 用于创建椭圆曲线(也称为椭圆曲线 Diffie-Hellman),即使用输入参数 curveName 预定义曲线的 ECDH。您可以使用 crypto.getCurves 获取所有可用曲线名称的列表。此方法是 'crypto' 模块的一部分。
语法
crypto.createECDH(curveName)
参数
上述参数描述如下
curveName ——它接受曲线名称的输入。此 curveName 将定义用于创建 ECDH 的预定义曲线。
示例
创建一个名为 – createECDH.js 的文件并复制以下代码片段。创建文件后,使用以下命令运行此代码,如下例所示 −
node createECDH.js
createECDH.js
// 用于创建 ECDH 的节点演示程序 // 导入加密模块 const crypto = require('crypto'); // 调用 getCiphers() 方法 const curve = crypto.createECDH('secp521r1'); // 打印曲线密钥... console.log(curve.generateKeys());
输出
C:\home
ode>> node createECDH.js <Buffer 04 00 be c4 3b eb cc ea 33 84 31 b0 7d 8b 9f e6 5b e0 6e 3a 40 21 49 f0 20 9f 92 33 cf 32 d7 a7 f1 df 90 82 9b fe 8f 7b 98 5b 7d 1a ee c6 ae b1 bd 1a ... >
示例
我们再看一个例子。
// 用于创建 ECDH 的节点演示程序 // 导入加密模块 const crypto = require('crypto'); // 调用 getCiphers() 方法 const curve = crypto.createECDH('secp521r1'); curve.generateKeys(); // 打印公钥和私钥曲线... console.log("Public Key: ", curve.getPublicKey()); console.log("Private Kye: ", curve.getPrivateKey());
输出
C:\home
ode>> node cipherUpdate.js Public Key: <Buffer 04 01 10 f7 fb d9 d7 f9 70 ba 6e 59 42 77 b6 1b 28 21 f1 3f ac 43 28 72 c6 33 b5 89 d3 77 6e 5a ea 8a 8a a1 27 a7 ab f1 b1 ea 41 ac dc c5 09 83 01 48 ... > Private Kye: <Buffer 01 d8 c4 d9 df 5c c8 54 e2 1f 82 94 ba 9c cd bc 88 3a e5 88 aa bd c8 2b 5c e9 f4 59 81 0b ae 18 f4 bf 21 43 56 74 55 d8 1d e6 b8 5f d8 e7 e2 52 ad 03 ... >