SplatNet-Backend/judd/middleware/validate-boss-digest.js

14 lines
No EOL
422 B
JavaScript

const crypto = require('crypto');
function validateBOSSDigestMiddleware(request, response, next) {
const calculatedHash = crypto.createHash('sha1').update(request.rawBody).digest('hex');
const expectedHash = request.headers['x-boss-digest'];
if (calculatedHash !== expectedHash) {
return next('Provided BOSS digest does not match the calculated hash');
}
next();
}
module.exports = validateBOSSDigestMiddleware;