📜  Node.js ecdh.setPublicKey() 方法(1)

📅  最后修改于: 2023-12-03 15:17:54.299000             🧑  作者: Mango

Node.js ecdh.setPublicKey() 方法

简介

在 Node.js 中使用 ecdh.setPublicKey() 方法可以设置 EC 对象中的公钥。EC Diffie-Hellman 算法用于在双方公用一些参数的情况下,安全地创建对称密钥。

语法
ecdh.setPublicKey(public_key[, encoding])
  • public_key:一个字符串或者 Buffer,表示公钥。
  • encoding:一个可选的字符串,表示公钥的编码方式,可以是"hex"、"binary"或者"base64",默认值为"hex"。
返回值

设置成功的话,该方法没有返回值。

示例
const crypto = require('crypto');

// 创建一个 ECDH 对象
const ecdh = crypto.createECDH('secp256k1')

// 设置公钥
const publicKey = '0430983284c5bf18c25f4461259f674e5b932d8c6ca875112a48dbd1b1fb846e8536960db26753003b18d4c6932435e159bef05f002a1b5ece81f361c5c3308b39';
ecdh.setPublicKey(publicKey, 'hex');
注意事项
  • EC Diffie-Hellman 算法需要使用双方使用的参数需要保持一致,例如在使用 ECDH 算法进行加密时,双方需要使用相同的算法、曲线参数以及公共点才能保证加密的正确性。
  • 如果输入的公钥无效,该方法会抛出一个错误。