@li0ard/kalyna
Version:
Kalyna (DSTU 7624:2014) cipher implementation in pure TypeScript
23 lines (22 loc) • 1.19 kB
TypeScript
import { type TArg, type TRet } from "@li0ard/gost3413/dist/utils.js";
import type { KalynaBase } from "../core.js";
/**
* Encrypts data using Counter with Cipher Block Chaining-Message Authentication Code (CCM) mode
* @param cipherClass Initialized cipher class
* @param plainData Data to be encrypted and authenticated
* @param iv Initialization vector
* @param authData Additional data to be authenticated
* @param q MAC size
* @param Nb Param `Nb`
*/
export declare const encryptCCM: (cipherClass: KalynaBase, plainData: TArg<Uint8Array>, iv: TArg<Uint8Array>, authData?: TArg<Uint8Array>, q?: number, Nb?: number) => TRet<Uint8Array>;
/**
* Decrypts data using Counter with Cipher Block Chaining-Message Authentication Code (CCM) mode
* @param cipherClass Initialized cipher class
* @param encryptedData Data to be decrypted and authenticated
* @param iv Initialization vector
* @param authData Additional data to be authenticated
* @param q MAC size
* @param Nb Param `Nb`
*/
export declare const decryptCCM: (cipherClass: KalynaBase, encryptedData: TArg<Uint8Array>, iv: TArg<Uint8Array>, authData?: TArg<Uint8Array>, q?: number, Nb?: number) => TRet<Uint8Array>;