UNPKG

@li0ard/strumok

Version:

Strumok (DSTU 8845:2019) cipher implementation in pure TypeScript

28 lines (27 loc) 771 B
/** Strumok class */ export declare class Strumok { /** Block size */ readonly BLOCKSIZE = 128; private S; private r; private key; private iv; private key_size; /** * Strumok algorithm * @param key Encryption key (32/64 bytes) * @param iv Initialization vector (32 bytes) */ constructor(key: Uint8Array, iv: Uint8Array); /** Generate next keystream */ next_stream(): BigUint64Array; /** Generate next keystream and perform encryption */ next_stream_full_crypt(in_: BigUint64Array): BigUint64Array; /** Set new initialization vector */ setIV(iv: Uint8Array): Strumok; /** * Perform encryption/decryption * @param in_ Input data */ crypt(in_: Uint8Array): Uint8Array; }