@coast-team/mute-crypto
Version:
Algorithm generating a cryptographic key for MUTE collaborative session
32 lines (31 loc) • 1.08 kB
TypeScript
import { BN } from '@coast-team/mute-crypto-helper';
import { Key } from './Key';
import { IContent } from './proto/index';
export declare class Cycle {
id: number;
counter: number;
members: number[];
r: BN;
z: Uint8Array;
zArray: Uint8Array[];
xArray: Uint8Array[];
isZBroadcasted: boolean;
isXBroadcasted: boolean;
isFinished: boolean;
private send;
private _onKey;
private firstXadded;
private myId;
private myMembers;
constructor(id: number, counter: number, members: number[], myId: number, send: (msg: IContent) => void, myMembers: number[]);
addX(index: number, x: Uint8Array): void;
set onKey(handler: (key: Key) => void);
isReadyToBroadcastZ(members: number[]): boolean;
checkZArray(myId: number, members: number[]): void;
checkXArray(myId: number, members: number[]): Promise<void>;
debug(msg: string): void;
assert(condition: boolean, msg: string): void;
broadcastZ(): void;
broadcastX(x: Uint8Array): void;
private formatCycle;
}