xxxxxxxxxx
// generate-keys.js
const openpgp = require("openpgp");
generate();
async function generate() {
const { privateKeyArmored, publicKeyArmored } = await openpgp.generateKey({
userIds: [{ name: "person", email: "person@somebody.com" }],
curve: "ed25519",
passphrase: "qwerty",
});
console.log(privateKeyArmored);
console.log(publicKeyArmored);
}
xxxxxxxxxx
// encrypt-file.js
const openpgp = require("openpgp");
const fs = require("fs");
const publicKeyArmored = <PUBLIC KEY GIVEN BY RECIPIENT>
encrypt();
async function encrypt() {
const plainData = fs.readFileSync("secrets.txt");
const encrypted = await openpgp.encrypt({
message: openpgp.message.fromText(plainData),
publicKeys: (await openpgp.key.readArmored(publicKeyArmored)).keys,
});
fs.writeFileSync("encrypted-secrets.txt", encrypted.data);
}