Based on the draft specification for HTTP Digest Headers, this library facilitates the creation and verification of a Content-Digest header.
This is useful when verifying the content of a message body as part of signature verification.
Specifications
The library currently only supports sha-256 and sha-512 algorithms
Examples
import { createContentDigestHeader } from 'httpbis-digest-headers';
request.setHeader('Content-Digest', createContentDigestHeader(messageBody, ['sha-256']))
import { verifyContentDigest } from 'httpbis-digest-headers';
const server = http.createServer(async (req, res) => {
const buffers = [];
for await (const chunk of req) {
buffers.push(chunk);
}
const verified = verifyContentDigest(Buffer.concat(buffers), req.getHeader('Content-Digest'))
});```