UNPKG

@taquito/signer

Version:

Software signer implementations and signing utilities for Taquito.

50 lines (49 loc) 1.67 kB
import { ExtendedPrivateKey } from './types'; import BN from 'bn.js'; export type CurveName = 'p256' | 'secp256k1'; export declare class PrivateKey implements ExtendedPrivateKey { readonly priv: { curve: CurveName; secretKey: BN; }; readonly chainCode: Uint8Array; readonly keyPair: { curve: CurveName; secretKey: BN; publicKey: Uint8Array; }; /** * * @param priv { secretKey: BN, curve: 'p256' | 'secp256k1' } * @param chainCode slice 32->n HMAC hash key and seedkey (first instance curve default seedKey. after hmac value slice 32->n) */ constructor(priv: { curve: CurveName; secretKey: BN; }, chainCode: Uint8Array); /** * @param seedSrc result of Bip39.mnemonicToSeed * @param curve known supported curve p256 or secp256k1 * @returns instance of PrivateKey non-HD keys derived * @throws InvalidBitSize | InvalidCurveError | InvalidSeedLengthError */ static fromSeed(seedSrc: Uint8Array | string, curve: CurveName): PrivateKey; /** * * @param index derivation path item pre-hardened if applicable ie: 44' -> 2^31 + 44 * @returns child PrivateKey of the current PrivateKey */ derive(index: number): PrivateKey; /** * * @param path pre-hardened (if applicable) derivation path items ie 44'/1729'/0/0 -> 2^31 + 44/2^31 + 1729/0/0 * @returns final child of the full HD keys derivation */ derivePath(path: Iterable<number>): PrivateKey; /** * * @returns Uint8Array (if contains a private key) * @throws InvalidKeyError */ bytes(): Uint8Array; }