Opengpg.js加密/解密示例

时间:2015-11-25 18:32:05

标签: javascript openpgp.js

我正在尝试对opengpg.js进行简单的测试。

我得到以下输出:

Encrypted Message[object Object]

此代码中的内容会导致此错误?

var openpgp = require('openpgp');

var options = {
    numBits: 1024,
    userId: 'user@localhost',
    passphrase: 'password'
};

openpgp.generateKeyPair(options).then(function(keypair) {

    var privkey = keypair.privateKeyArmored;
    var pubkey = keypair.publicKeyArmored;

    console.log("Pub key" + pubkey + "\n\n");

    var publicKey = openpgp.key.readArmored(pubkey);
    var pgpMessage = openpgp.encryptMessage(publicKey.keys,"Hello");

    console.log("Encrypted Message" + pgpMessage + "\n\n");

    }).catch(function(error) {
    // failure
    console.log("Error: " + error);
});

1 个答案:

答案 0 :(得分:0)

基于"错误"我假设这个答案的基础你的意思是 "意外输出"。

openpgp.encryptMessage会返回promise,而非加密文字。请参阅opengpg.js documentation

要从承诺中获取价值,它与任何其他承诺相同:

openpgp.encryptMessage(publicKey.keys,"Hello").then(function(pgpMessage) {
    // success
    console.log("Encrypted Message" + pgpMessage + "\n\n");
}).catch(function(error) {
    // failure
});