问题描述
我有以下代码来生成共享机密。
const crypto = require('crypto');
//Alice does it on her machine.
const alice = crypto.getDiffieHellman('modp15');
alice.generateKeys();
const aliceSecret = alice.computeSecret(bob.getPublicKey(),null,'hex');
//Bob does it on his machine.
const bob = crypto.getDiffieHellman('modp15');
bob.generateKeys();
const bobSecret = bob.computeSecret(alice.getPublicKey(),'hex');
//To verify both have generated the same secret
console.log(aliceSecret === bobSecret);
据我了解,鲍勃和爱丽丝会生成公钥并相互交换以建立自己的私钥。问题是,如果我没记错的话,双方都需要在线进行。我该如何使它独立于Bob和Alice在线交流彼此的公众?这是因为我正在开发一个聊天应用程序,而且即使鲍勃不在在线,爱丽丝也需要与鲍勃创建一个线程。
PS:我正在运行socket.IO进行实时通信,并使用MongoDB存储有助于使用的应用程序数据ID。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)