如何使用电子密码通过比特币公钥加密消息

时间:2019-08-20 15:44:35

标签: javascript node.js public-key-encryption bitcoin

我尝试使用从该网站-https://iancoleman.io/bip39/的助记符生成的比特币公钥对字符串进行加密失败。

我试图建立一个nodejs项目。我在堆栈溢出时找到的二手代码。

我正在使用的代码:

var eccrypto = require("eccrypto");

/* not using this
var privateKeyA = crypto.randomBytes(32);
var publicKeyA = eccrypto.getPublic(privateKeyA);
 */

// my public key - 0202666ea1c33fc02e75a2748f1829f62ce0071d85570aef6cbd2b2b2e5fb4b999
// my private key - KyDCjoRRn5rPusszHF1DiPYfZCZE2CKjZwi6jDYuGPR9rcqMtqPc

// Encrypting the message
eccrypto.encrypt(Buffer.from('0202666ea1c33fc02e75a2748f1829f62ce0071d85570aef6cbd2b2b2e5fb4b999', 'hex'), Buffer("msg to b")).then(function(encrypted) {
  // decrypting the message.
  eccrypto.decrypt(Buffer.from('KyDCjoRRn5rPusszHF1DiPYfZCZE2CKjZwi6jDYuGPR9rcqMtqPc', 'base64'), encrypted).then(function(plaintext) {
    console.log("Message to part B:", plaintext.toString());
  });
});

控制台中的输出始终相同-UnhandledPromiseRejectionWarning: Error: Bad private key

我不知道私钥是怎么坏的,我应该以哪种格式向图书馆提供密钥。我得到的私钥似乎是base64-它是从BIP32扩展密钥派生的,它是派生路径m / 44'/ 0'/ 0'/ 0/0(尽管不确定这到底是什么意思)。 / p>

0 个答案:

没有答案