lotus-sdk
Version:
Central repository for several classes of tools for integrating with, and building for, the Lotusia ecosystem
46 lines • 1.35 kB
TypeScript
import { BN } from './bn.js';
import { Signature } from './signature.js';
import { PrivateKey } from '../privatekey.js';
import { PublicKey } from '../publickey.js';
export interface ECDSAData {
hashbuf?: Buffer;
endian?: 'little' | 'big';
privkey?: PrivateKey;
pubkey?: PublicKey;
sig?: Signature;
k?: BN;
verified?: boolean;
}
export declare class ECDSA {
hashbuf: Buffer;
endian?: 'little' | 'big';
privkey: PrivateKey;
pubkey: PublicKey;
sig: Signature;
k: BN;
verified: boolean;
constructor(obj?: ECDSAData);
static create(obj?: ECDSAData): ECDSA;
set(obj: ECDSAData): ECDSA;
privkey2pubkey(): ECDSA;
calci(): ECDSA;
static fromString(str: string): ECDSA;
randomK(): ECDSA;
deterministicK(badrs?: number): ECDSA;
toPublicKey(): PublicKey;
sigError(): string | false;
static toLowS(s: BN): BN;
_findSignature(d: BN, e: BN): {
s: BN;
r: BN;
compressed?: boolean;
};
sign(): ECDSA;
signRandomK(): ECDSA;
toString(): string;
verify(): ECDSA;
static sign(hashbuf: Buffer, privkey: PrivateKey, endian?: 'little' | 'big'): Signature;
static verify(hashbuf: Buffer, sig: Signature, pubkey: PublicKey, endian?: 'little' | 'big'): boolean;
private reverseBuffer;
}
//# sourceMappingURL=ecdsa.d.ts.map