cloudflare / cloudflare/workerd

Please add a non-standard `crypto.KeyedDigestStream` (or future-standard `crypto.subtle.sign` iterator input) for computing streaming HMACs

Open
#6,435 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
8.7k
Forks
739
Avg merge
2d 20h
Merged PRs (30d)
174

Description

Web crypto doesn't support streaming hashes, and the current non-standard `crypto.DigestStream` is hash only (no keys), so it is impossible to compute a streaming HMAC without pulling in a JS implementation (which is more costly and less efficient).

Would love to have a similar `crypto.KeyedDigestStream` or even `crypto.HmacStream` since this is a very common signature in practice.

Thanks!
\- John

Update: `crypto.subtle.sign('HMAC', cryptoKey, bytesIter)` would be even better (see below)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.