UNPKG

@dedis/kyber

Version:

A typescript implementation of Kyber interfaces

49 lines (48 loc) 1.45 kB
/// <reference types="node" /> import BN from "bn.js"; import { Scalar } from "../index"; export declare type BNType = number | string | number[] | Buffer | BN; /** * Scalar used in combination with G1 and G2 points */ export default class BN256Scalar implements Scalar { private v; constructor(value?: BNType); /** * Get the BigNumber value of the scalar * @returns the value */ getValue(): BN; /** @inheritdoc */ set(a: BN256Scalar): BN256Scalar; /** @inheritdoc */ one(): BN256Scalar; /** @inheritdoc */ zero(): BN256Scalar; /** @inheritdoc */ add(a: BN256Scalar, b: BN256Scalar): BN256Scalar; /** @inheritdoc */ sub(a: BN256Scalar, b: BN256Scalar): BN256Scalar; /** @inheritdoc */ neg(a: BN256Scalar): BN256Scalar; /** @inheritdoc */ div(a: BN256Scalar, b: BN256Scalar): BN256Scalar; /** @inheritdoc */ mul(s1: BN256Scalar, b: BN256Scalar): BN256Scalar; /** @inheritdoc */ inv(a: BN256Scalar): BN256Scalar; /** @inheritdoc */ pick(callback?: (length: number) => Buffer): BN256Scalar; /** @inheritdoc */ setBytes(bytes: Buffer): BN256Scalar; /** @inheritdoc */ marshalBinary(): Buffer; /** @inheritdoc */ unmarshalBinary(buf: Buffer | string): void; /** @inheritdoc */ marshalSize(): number; /** @inheritdoc */ clone(): BN256Scalar; /** @inheritdoc */ equals(s2: BN256Scalar): boolean; }