UNPKG

@li0ard/kupyna

Version:

Kupyna (DSTU 7564:2014) hash function in pure TypeScript

35 lines (34 loc) 1.58 kB
import type { TArg, TRet } from "./utils"; /** Kupyna abstract interface */ export interface Kupyna<T> { /** Output length */ outputLen: number; /** Block length */ blockLen: number; /** Clone hash instance */ clone(): T; /** Update hash buffer */ update(p: TArg<Uint8Array>): T; /** Finalize hash computation and return result as Uint8Array */ digest(): TRet<Uint8Array>; } export declare const dpad: Readonly<Uint8Array>; export declare const kpad32: Readonly<Uint8Array>; export declare const kpad48: Readonly<Uint8Array>; export declare const kpad64: Readonly<Uint8Array>; /** Replacement table No. 1 for nonlinear bi-objective reflection */ export declare const T0: Readonly<BigUint64Array>; /** Replacement table No. 2 for nonlinear bi-objective reflection */ export declare const T1: Readonly<BigUint64Array>; /** Replacement table No. 3 for nonlinear bi-objective reflection */ export declare const T2: Readonly<BigUint64Array>; /** Replacement table No. 4 for nonlinear bi-objective reflection */ export declare const T3: Readonly<BigUint64Array>; /** Replacement table No. 5 for nonlinear bi-objective reflection */ export declare const T4: Readonly<BigUint64Array>; /** Replacement table No. 6 for nonlinear bi-objective reflection */ export declare const T5: Readonly<BigUint64Array>; /** Replacement table No. 7 for nonlinear bi-objective reflection */ export declare const T6: Readonly<BigUint64Array>; /** Replacement table No. 8 for nonlinear bi-objective reflection */ export declare const T7: Readonly<BigUint64Array>;