Node js Openpgp decrypting csv file is returning [Object Object]

66 views Asked by At

I am using openpgp lib in node js to encrypt and decrypt .csv files. I am able to encrypt successfully, but when i am trying to decrypt it , its showing [object Object] . Need some help how to decrypt it back to a csv file with proper data.

`import gpg from "gpg";
import * as openpgp from 'openpgp';
import fs from 'fs';

import util from 'util';
import { resolve } from "path";
let encoder = new util.TextEncoder();
(async () => {
    const publicKeyArmored = fs.readFileSync('./_public.asc')
    const privateKeyArmored = fs.readFileSync('./_SECRET.asc')

    const publicKey = (await openpgp.key.readArmored([publicKeyArmored])).keys[0];
    const privateKey = (await openpgp.key.readArmored([privateKeyArmored])).keys[0];


    const readfile = fs.readFileSync('./outbound/test1.csv')
    console.log(readfile.toString())
    const encrypted = await openpgp.encrypt({
        message: openpgp.message.fromText({ text: readfile.toString() }), // input as Message object
        publicKeys: publicKey
    });
    console.log(encrypted);

    let options = {
        message: await openpgp.message.readArmored(encrypted.data),
        privateKeys: privateKey,
        publicKeys: publicKey
    };
    var decryptedtext;
    var filenae = './output/test.csv'
    openpgp.decrypt(options).then(async (plaintext) => {
        console.log("Encrypted message got decrypted: ", plaintext.data);
        decryptedtext = plaintext.data.toString()
        writedecryptedmsg()
    });

    const writedecryptedmsg = () => {
        return new Promise(resolve => {
            fs.writeFile(filenae, decryptedtext, err => {
                if (err) {
                    console.log(err)
                } else {
                    resolve(console.log('decrrypted successfully'))
                }
            })
        })
    }`
0

There are 0 answers