【发布时间】:2019-10-22 08:01:03
【问题描述】:
我正在尝试使用Elliptic JS 库来生成一个可以在两个人之间使用的共享密钥(来自他们的示例)。
问题是该示例每次都会生成一个新的密钥对 - 我想让一个人使用自己的私钥,而另一个人使用公钥。
这是我目前所拥有的:
var EC = require('elliptic').ec;
var ec = new EC('curve25519');
var key1 = ec.keyFromPrivate('BLAHBLAHBLAH1');
var publicKey1 = key1.getPublic();
///// HOW DO I START WITH KEY2 BEING THE PUBLIC KEY, NOT KEYFROMPRIVATE? /////
var key2 = ec.keyFromPrivate('BLAHBLAHBLAH2');
var publicKey2 = key2.getPublic();
var shared1 = key1.derive(publicKey2);
var shared2 = key2.derive(publicKey1);
console.log(shared1.toString(16));
console.log(shared2.toString(16));
任何想法都会非常有帮助!
【问题讨论】:
-
您不能只是在通话中切换按键。但是为什么需要这样做,您已经正确执行了操作,不是吗?
标签: javascript cryptography cryptojs elliptic-curve