UNPKG

@stellot/crypto

Version:

Crypto libraries for front and backend

36 lines (35 loc) 1.34 kB
/// <reference types="node" /> import DecryptionElGamal from './decryption'; import EncryptionElGamal from './encryption'; import { BigInteger as BigInt } from 'jsbn'; import EncryptedValue from './encryptedValue'; import DecryptedValue from './decryptedValue'; import BN from 'bn.js'; export { ElGamal, EncryptionElGamal, DecryptionElGamal, DecryptedValue, EncryptedValue }; export declare function createEncryptionKeypair(primeBits?: number): { publicKey: Buffer; privateKey: Buffer; }; export declare function encodePublicKey(prime: BigInt, generator: BigInt, publicKey: BigInt): Buffer; export declare function decodePublicKey(der: Buffer): { p: BN; g: BN; y: BN; }; export declare function encodePrivateKey(prime: BigInt, generator: BigInt, y: BigInt, x: BigInt): Buffer; export declare function decodePrivateKey(der: Buffer): { p: BN; g: BN; y: BN; x: BN; }; export default class ElGamal { static generate(primeBits?: number): { p: any; g: any; y: any; x: any; }; static fromPrivateKey(p: BigInt | string | number, g: BigInt | string | number, y: BigInt | string | number, x: BigInt | string | number): DecryptionElGamal; static fromPublicKey(p: BigInt | string | number, g: BigInt | string | number, y: BigInt | string | number): EncryptionElGamal; }