@li0ard/kupyna
Version:
Kupyna (DSTU 7564:2014) hash function in pure TypeScript
20 lines (19 loc) • 669 B
TypeScript
import type { KupynaBase, KupynaDerived } from "./kupyna";
/** Abstract class for Kupyna KMAC */
export declare abstract class KupynaKMAC<T, H extends (KupynaBase<H> | KupynaDerived<H>)> {
key: Uint8Array;
readonly outputLen: number;
readonly blockLen: number;
readonly threshold: number;
h: H;
ik: Uint8Array;
len: bigint;
constructor(hash: () => H, kpad: Uint8Array, key: Uint8Array);
/** Clone hash instance */
abstract clone(): KupynaKMAC<T, H>;
/** Update hash buffer */
update(data: Uint8Array): T;
/** Finalize hash computation and return result as Uint8Array */
digest(): Uint8Array;
private final;
}