我正试图使用PGP加密一条消息,但我得到了一个错误,该错误声明:
ReferenceError: TextDecoder is not defined
at Object.decodeUTF8 (node_modules/openpgp/src/util.js:225:21)
at Do.read (node_modules/openpgp/src/packet/userid.js:78:25)
at callback (node_modules/openpgp/src/packet/packetlist.js:82:28)
at Xs (node_modules/openpgp/src/packet/packet.js:282:13)
at node_modules/openpgp/src/packet/packetlist.js:96:11我的代码是这样的:
const plainData = random.uuid()
const publicKeyArmored = fs.readFileSync('/path/any.asc').toString();
const publicKey = await openpgp.readKey( { armoredKey: publicKeyArmored } )
console.log(publicKey)当我打印publicKeyArmored时,一切正常。一旦到达前面显示的console.log,就会出现错误
发布于 2022-04-20 14:48:39
我就是这么做的,我希望它能帮到别人:
import * as openpgp from 'openpgp'
const plainText = 'Any text you wanna encrypt'
const textEncoding = await import('text-encoding-utf-8')
global.TextEncoder = textEncoding.TextEncoder
global.TextDecoder = textEncoding.TextDecoder
const publicKeyArmored = fs.readFileSync('/path/any.asc').toString();
const publicKey = await openpgp.readKey({ armoredKey: publicKeyArmored })
const encrypted = await openpgp.encrypt({
message: openpgp.Message.fromText(plainText),
publicKeys: [publicKey]
})
console.log(encrypted)https://stackoverflow.com/questions/70801384
复制相似问题