in src/SigV4RequestSigner.ts [179:195]
private static async hmac(key: string | ArrayBuffer, message: string): Promise<ArrayBuffer> {
const keyBuffer = typeof key === 'string' ? this.toUint8Array(key).buffer : key;
const messageBuffer = this.toUint8Array(message).buffer;
const cryptoKey = await crypto.subtle.importKey(
'raw',
keyBuffer,
{
name: 'HMAC',
hash: {
name: 'SHA-256',
},
},
false,
['sign'],
);
return await crypto.subtle.sign({ name: 'HMAC', hash: { name: 'SHA-256' } }, cryptoKey, messageBuffer);
}