1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 | export class GF2Polynomial {
|
8 | |
9 |
|
10 |
|
11 | degrees: Set<number>;
|
12 | }
|
13 | export function createFromBytes(bytes: Uint8Array): GF2Polynomial;
|
14 | export function toUint8Array(p: GF2Polynomial, byteLength?: number): Uint8Array;
|
15 | export function createFromUint(uint: number): GF2Polynomial;
|
16 | export function createRandom(degree: number): GF2Polynomial;
|
17 | export function getHighestDegree(p: GF2Polynomial): number;
|
18 | export function addInto(p1: GF2Polynomial, p2: GF2Polynomial): void;
|
19 | export function orInto(p1: GF2Polynomial, p2: GF2Polynomial): void;
|
20 | export function add(p1: GF2Polynomial, p2: GF2Polynomial): GF2Polynomial;
|
21 | export function clone(p: GF2Polynomial): GF2Polynomial;
|
22 | export function addDegreeInto(p: GF2Polynomial, degree: number): void;
|
23 | export function multiply(p1: GF2Polynomial, p2: GF2Polynomial): GF2Polynomial;
|
24 | export function shiftLeft(p: GF2Polynomial, shift: number): GF2Polynomial;
|
25 | export function mod(p1: GF2Polynomial, p2: GF2Polynomial): GF2Polynomial;
|
26 | export function modPow(p: GF2Polynomial, e: number, m: GF2Polynomial): GF2Polynomial;
|
27 | export function gcd(p1: GF2Polynomial, p2: GF2Polynomial): GF2Polynomial;
|
28 | export function equals(p1: GF2Polynomial, p2: GF2Polynomial): boolean;
|
29 | export function isIrreducibleBenOr(p: GF2Polynomial): boolean;
|
30 | export function createIrreducible(degree: number): GF2Polynomial;
|
31 | export function fingerprint(buf: Uint8Array, m: GF2Polynomial): Uint8Array;
|
32 | export class RabinPolynomialEncoder {
|
33 | |
34 |
|
35 |
|
36 | constructor(m: GF2Polynomial);
|
37 | fingerprint: GF2Polynomial;
|
38 | m: GF2Polynomial;
|
39 | /**
|
40 | * @param {number} b
|
41 | */
|
42 | write(b: number): void;
|
43 | getFingerprint(): Uint8Array;
|
44 | }
|
45 |
|
\ | No newline at end of file |