astro-ghostcms/.pnpm-store/v3/files/a7/5340ee61812ec6a9c1a5e59041c...

9 lines
388 B
Plaintext
Raw Permalink Normal View History

2024-02-14 14:10:47 +00:00
import { createHmac } from 'node:crypto';
import { concat, uint64be } from '../lib/buffer_utils.js';
export default function cbcTag(aad, iv, ciphertext, macSize, macKey, keySize) {
const macData = concat(aad, iv, ciphertext, uint64be(aad.length << 3));
const hmac = createHmac(`sha${macSize}`, macKey);
hmac.update(macData);
return hmac.digest().slice(0, keySize >> 3);
}