@hackbg/miscreant-esm
Version:
(ESM port) Misuse resistant symmetric encryption library providing AES-SIV (RFC 5297), AES-PMAC-SIV, and STREAM constructions
21 lines (20 loc) • 692 B
TypeScript
import { IBlockCipher, ICryptoProvider, IMACLike } from "../interfaces.dist";
import Block from "../internals/block.dist";
/**
* The AES-CMAC message authentication code
*/
export declare class CMAC implements IMACLike {
private _cipher;
private _subkey1;
private _subkey2;
/** Create a new CMAC instance from the given key */
static importKey(provider: ICryptoProvider, keyData: Uint8Array): Promise<CMAC>;
private _buffer;
private _bufferPos;
private _finished;
constructor(_cipher: IBlockCipher, _subkey1: Block, _subkey2: Block);
reset(): this;
clear(): void;
update(data: Uint8Array): Promise<this>;
finish(): Promise<Uint8Array>;
}