@dedis/kyber
Version:
A typescript implementation of Kyber interfaces
32 lines (31 loc) • 927 B
TypeScript
/// <reference types="node" />
import { Point } from "../.";
/**
* Masks are used alongside with aggregated signatures to announce which peer
* has actually signed the message. It's essentially a bit mask.
*/
export default class Mask {
readonly publics: Point[];
readonly aggregate: Point;
private mask;
constructor(publics: Point[], mask: Buffer);
/**
* Return the number of participants, in other words the number of 1s in the mask
*
* @return the number of participants
*/
getCountEnabled(): number;
/**
* Return the total number of public keys assigned to the mask
*
* @return the total number of public keys
*/
getCountTotal(): number;
/**
* Return true if the bit at the given index is enabled
*
* @param i The index
* @return true if the bit is enabled, false otherwise
*/
isIndexEnabled(i: number): boolean;
}