Я использую эту библиотеку https://github.com/openpgpjs/openpgpjs для создания зашифрованного сообщения.ниже мой код
var options = {
userIds: [{ name:'Jon Smith', email:'jon@example.com' }], // multiple user IDs
curve: "ed25519", // ECC curve name
passphrase: 'super long and hard to guess secret' // protects the private key
};
openpgp.generateKey(options).then(function(key) {
var privkey = key.privateKeyArmored; // '-----BEGIN PGP PRIVATE KEY BLOCK ... '
var pubkey = key.publicKeyArmored; // '-----BEGIN PGP PUBLIC KEY BLOCK ... '
var revocationSignature = key.revocationSignature; // '-----BEGIN PGP PUBLIC KEY BLOCK ... '
// console.log(privkey)
const options = {
message: openpgp.message.fromText('Hello, World!'), // input as Message object
publicKeys: pubkey, // for encryption
privateKeys: privkey // for signing (optional)
}
openpgp.encrypt(options).then(ciphertext => {
encrypted = ciphertext.data // '-----BEGIN PGP MESSAGE ... END PGP MESSAGE-----'
return encrypted
})
.then(encrypted => {
console.log(encrypted)
// decryptmessage(encrypted,privKeyObj).then(_=>{
// })
}).catch(error=>{
console.log("encryption error",error)
})
Когда я запускаю этот код, я получаю следующую ошибку
Ошибка шифрования сообщения: privateKey.isPublic не является функцией в C: \ Users \ vinayak.b \ Desktop \ hello \ node_modules \ openpgp \ dist \ openpgp.js: 33104: 20 в Array.map () в Message.sign (C: \ Users \ vinayak.b \ Desktop \ hello \ node_modules \ openpgp \ dist \openpgp.js: 33103: 55) в C: \ Users \ vinayak.b \ Desktop \ hello \ node_modules \ openpgp \ dist \ openpgp.js: 33811: 33 в at process._tickCallback (внутренний / process / next_tick.js: 188: 7) в Function.Module.runMain (module.js: 678: 11) при запуске (bootstrap_node.js: 187: 16) в bootstrap_node.js: 608: 3
Что-нибудь, что я сделалнеправильно?Пожалуйста, помогите мне.