menu

CryptoMacBinding

import { CryptoMacBinding } from "destack:crypto/binding";

Mac binding family.

language/library/src/crypto/binding/mac.ds:22:94
1export interface CryptoMacBinding {2    computeMac(key: CryptoKeyHandle, parameters: &'a readonly CryptoMacParameters, payload: &'b readonly [uint8]): Result<uint8[], HostError>;3    verifyMac(key: CryptoKeyHandle, parameters: &'a readonly CryptoMacParameters, payload: &'b readonly [uint8], tag: &'c readonly [uint8]): Result<boolean, HostError>;4    openMac(key: CryptoKeyHandle, parameters: &'a readonly CryptoMacParameters): Result<CryptoMacHandle, HostError>;5    updateMac(mac: CryptoMacHandle, payload: &'a readonly [uint8]): Result<void, HostError>;6    finishMac(mac: CryptoMacHandle): Result<uint8[], HostError>;7    closeMac(mac: CryptoMacHandle): Result<void, HostError>;8}

Members

computeMac(key: CryptoKeyHandle, parameters: &'a readonly CryptoMacParameters, payload: &'b readonly [uint8]): Result<uint8[], HostError>

Compute one message authentication code in one shot.

verifyMac(key: CryptoKeyHandle, parameters: &'a readonly CryptoMacParameters, payload: &'b readonly [uint8], tag: &'c readonly [uint8]): Result<boolean, HostError>

Verify one message authentication code in one shot.

openMac(key: CryptoKeyHandle, parameters: &'a readonly CryptoMacParameters): Result<CryptoMacHandle, HostError>

Open one streaming MAC context.

updateMac(mac: CryptoMacHandle, payload: &'a readonly [uint8]): Result<void, HostError>

Update one streaming MAC context.

finishMac(mac: CryptoMacHandle): Result<uint8[], HostError>

Finalize one streaming MAC context and return one tag.

closeMac(mac: CryptoMacHandle): Result<void, HostError>

Close one streaming MAC context.