libnexa-ts
Version:
A pure and powerful Nexa SDK library.
26 lines • 1.07 kB
TypeScript
import { IPrivateKey, IPublicKey, ISignature } from '../common/interfaces';
import { EndianType } from '../common/types';
import { default as BN } from './bn.extension';
import { default as DigitalSignature } from './digital-signature';
import { default as PublicKey } from '../keys/publickey';
/**
* IMPORTANT: ECDSA only used for compact message signing.
* for transactions signing, use Schnorr.
*/
export default class ECDSA extends DigitalSignature {
k?: BN;
set(obj: Partial<ECDSA>): this;
sigError(): boolean | string;
protected _findSignature(d: BN, e: BN): Partial<ISignature>;
private static toLowS;
calcI(): this;
randomK(): this;
deterministicK(badrs?: number): this;
signRandomK(): this;
toString(): string;
toPublicKey(): PublicKey;
static fromString(str: string): ECDSA;
static sign(hashbuf: Uint8Array, privkey: IPrivateKey, endian?: EndianType): ISignature;
static verify(hashbuf: Uint8Array, sig: ISignature, pubkey: IPublicKey, endian?: EndianType): boolean;
}
//# sourceMappingURL=ecdsa.d.ts.map