UNPKG

@ikas/admin-api-client

Version:

ikas public node api client for store apps and private apps

19 lines 900 B
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.validateAuthSignature = validateAuthSignature; const crypto_1 = __importDefault(require("crypto")); // validate auth method function validateAuthSignature({ storeName, signature, merchantId, timestamp, authorizedAppId: _authorizedAppId }, appSecret) { const hashData = `${storeName}${merchantId}${timestamp}`; const date = new Date(parseInt(timestamp)); const dateDiff = (new Date().getTime() - date.getTime()) / 1000; const calculatedSignature = crypto_1.default .createHmac('sha256', appSecret) .update(hashData) .digest('hex'); return signature == calculatedSignature && dateDiff < 120; } //# sourceMappingURL=auth-helpers.js.map