UNPKG

@opendatalabs/vana-sdk

Version:

A TypeScript library for interacting with Vana Network smart contracts.

74 lines 2.71 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); var openpgp_port_exports = {}; __export(openpgp_port_exports, { OpenPgpPort: () => OpenPgpPort, openPgpPort: () => openPgpPort }); module.exports = __toCommonJS(openpgp_port_exports); var import_openpgp = require("openpgp"); class OpenPgpPort { async encrypt(input) { const publicKey = await (0, import_openpgp.readKey)({ armoredKey: input.publicKeyArmored }); const message = await (0, import_openpgp.createMessage)({ text: input.text }); const encrypted = await (0, import_openpgp.encrypt)({ message, encryptionKeys: publicKey, config: { preferredCompressionAlgorithm: import_openpgp.enums.compression.zlib } }); return { data: encrypted }; } async decrypt(input) { const privateKey = await (0, import_openpgp.readPrivateKey)({ armoredKey: input.privateKeyArmored }); const decryptedKey = input.passphrase ? await (0, import_openpgp.decryptKey)({ privateKey, passphrase: input.passphrase }) : privateKey; const message = await (0, import_openpgp.readMessage)({ armoredMessage: input.messageArmored }); const { data } = await (0, import_openpgp.decrypt)({ message, decryptionKeys: decryptedKey }); return { data }; } async generateKeyPair(options = {}) { const { name = "Vana User", email = "user@vana.org", passphrase } = options; const { publicKey, privateKey } = await (0, import_openpgp.generateKey)({ type: "rsa", rsaBits: 2048, userIDs: [{ name, email }], passphrase, config: { preferredCompressionAlgorithm: 2, // zlib preferredSymmetricAlgorithm: 7 // aes256 } }); return { publicKey, privateKey }; } } const openPgpPort = new OpenPgpPort(); // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { OpenPgpPort, openPgpPort }); //# sourceMappingURL=openpgp-port.cjs.map