@line/bot-sdk
Version:
Node.js SDK for LINE Messaging API
17 lines (16 loc) • 547 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const crypto_1 = require("crypto");
function s2b(str, encoding) {
return Buffer.from(str, encoding);
}
function safeCompare(a, b) {
if (a.length !== b.length) {
return false;
}
return (0, crypto_1.timingSafeEqual)(a, b);
}
function validateSignature(body, channelSecret, signature) {
return safeCompare((0, crypto_1.createHmac)("SHA256", channelSecret).update(body).digest(), s2b(signature, "base64"));
}
exports.default = validateSignature;
;