UNPKG

@opendatalabs/vana-sdk

Version:

A TypeScript library for interacting with Vana Network smart contracts.

29 lines (28 loc) 1.13 kB
/** * Password-based file encryption using OpenPGP, the locked DPv1 envelope. * * @remarks * Ported from `personal-server-ts` * (`packages/core/src/storage/encryption/{encrypt,decrypt}.ts`). * The binary format must remain byte-compatible with PS — a vana-sdk encrypt + * a personal-server-ts decrypt (and vice versa) must round-trip cleanly. * * @category Cryptography */ /** * Encrypt plaintext using OpenPGP password-based encryption. * * @param plaintext - Bytes to encrypt (e.g. `JSON.stringify` of an envelope). * @param password - Hex-encoded scope key (typically from `deriveScopeKey`). * @returns OpenPGP-encrypted binary data. */ export declare function encryptWithPassword(plaintext: Uint8Array, password: string): Promise<Uint8Array>; /** * Decrypt an OpenPGP password-encrypted binary. * * @param encrypted - OpenPGP-encrypted binary data. * @param password - Hex-encoded scope key. * @returns Decrypted plaintext bytes. * @throws If the password is wrong or the data is corrupted. */ export declare function decryptWithPassword(encrypted: Uint8Array, password: string): Promise<Uint8Array>;