npm.io
1.1.6 • Published 2 years ago

@types/eccrypto

Licence
MIT
Version
1.1.6
Deps
2
Size
5 kB
Vulns
0
Weekly
0
Stars
51.4K

Installation

npm install --save @types/eccrypto

Summary

This package contains type definitions for eccrypto (https://github.com/bitchan/eccrypto).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/eccrypto.

index.d.ts

/// <reference types="node" />
export as namespace eccrypto;

// Generate a new valid private key. Will use crypto.randomBytes as source.
export function generatePrivate(): Buffer;

// Compute the public key for a given private key.
export function getPublic(privateKey: Buffer): Buffer;

// Compute the compressed public key for a given private key.
export function getPublicCompressed(privateKey: Buffer): Buffer;

// Create an ECDSA signature.
export function sign(key: Buffer, msg: Buffer): Promise<Buffer>;

// Verify an ECDSA signature.
export function verify(publicKey: Buffer, msg: Buffer, sig: Buffer): Promise<null>;

// Derive shared secret for given private and public keys.
export function derive(privateKeyA: Buffer, publicKeyB: Buffer): Promise<Buffer>;

// Input/output structure for ECIES operations.
export interface Ecies {
    iv: Buffer;
    ephemPublicKey: Buffer;
    ciphertext: Buffer;
    mac: Buffer;
}

// Encrypt message for given recepient's public key.
export function encrypt(
    publicKeyTo: Buffer,
    msg: Buffer,
    opts?: { iv?: Buffer | undefined; ephemPrivateKey?: Buffer | undefined },
): Promise<Ecies>;

// Decrypt message using given private key.
export function decrypt(privateKey: Buffer, opts: Ecies): Promise<Buffer>;

Additional Details

Credits

These definitions were written by Random Nerd.