@znode/sign
Version:
signature algorithm
25 lines (24 loc) • 826 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.signWs = exports.sign = void 0;
const hmac_1 = require("@zodash/hmac");
function sign(data, secret) {
const _method = data.method.toUpperCase();
const _url = data.path;
const _query = !data.query ? '' : data.query;
const _payload = !data.body ? '' : data.body;
const _timestamp = data.timestamp;
const _data = [_timestamp, _method, _url, _query, _payload];
const text = _data.join('');
// console.log('sign text:', text);
return hmac_1.hmacSHA256(text, secret);
}
exports.sign = sign;
function signWs(data, secret) {
const text = `${data.timestamp}websocket_login`;
return hmac_1.hmacSHA256(text, secret);
}
exports.signWs = signWs;
const _sign = sign;
_sign.ws = signWs;
exports.default = _sign;