UNPKG

@fly/edge

Version:
35 lines 3.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createHash = exports.createHmac = void 0; /** @module HTTP */ const sjcl = require("sjcl"); /** @hidden */ function createHmac(_algo, key) { const mac = new sjcl.misc.hmac(typeof key === 'string' ? sjcl.codec.utf8String.toBits(key) : key); return { update: (data) => { mac.update(data); return { digest: (encoding) => { let result = mac.digest(); return encoding === 'hex' ? sjcl.codec.hex.fromBits(result) : result; }, }; }, }; } exports.createHmac = createHmac; /** @hidden */ function createHash() { const hash = new sjcl.hash.sha256(); return { update: (data) => { hash.update(data); return { digest: () => sjcl.codec.hex.fromBits(hash.finalize()), }; }, }; } exports.createHash = createHash; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3J5cHRvLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NoaW1zL2NyeXB0by50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQkFBbUI7QUFDbkIsNkJBQTRCO0FBRTVCLGNBQWM7QUFDZCxTQUFnQixVQUFVLENBQUMsS0FBYSxFQUFFLEdBQTJCO0lBQ2pFLE1BQU0sR0FBRyxHQUFHLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2xHLE9BQU87UUFDSCxNQUFNLEVBQUUsQ0FBQyxJQUFZLEVBQUUsRUFBRTtZQUNyQixHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pCLE9BQU87Z0JBQ0gsTUFBTSxFQUFFLENBQUMsUUFBZ0IsRUFBRSxFQUFFO29CQUN6QixJQUFJLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUM7b0JBQzFCLE9BQU8sUUFBUSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7Z0JBQ3pFLENBQUM7YUFDSixDQUFDO1FBQ04sQ0FBQztLQUNKLENBQUM7QUFDTixDQUFDO0FBYkQsZ0NBYUM7QUFFRCxjQUFjO0FBQ2QsU0FBZ0IsVUFBVTtJQUN0QixNQUFNLElBQUksR0FBRyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDcEMsT0FBTztRQUNILE1BQU0sRUFBRSxDQUFDLElBQVksRUFBRSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbEIsT0FBTztnQkFDSCxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQzthQUN6RCxDQUFDO1FBQ04sQ0FBQztLQUNKLENBQUM7QUFDTixDQUFDO0FBVkQsZ0NBVUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiogQG1vZHVsZSBIVFRQICovXG5pbXBvcnQgKiBhcyBzamNsIGZyb20gJ3NqY2wnXG5cbi8qKiBAaGlkZGVuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlSG1hYyhfYWxnbzogc3RyaW5nLCBrZXk6IHN0cmluZyB8IHNqY2wuQml0QXJyYXkpIHtcbiAgICBjb25zdCBtYWMgPSBuZXcgc2pjbC5taXNjLmhtYWModHlwZW9mIGtleSA9PT0gJ3N0cmluZycgPyBzamNsLmNvZGVjLnV0ZjhTdHJpbmcudG9CaXRzKGtleSkgOiBrZXkpO1xuICAgIHJldHVybiB7XG4gICAgICAgIHVwZGF0ZTogKGRhdGE6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgbWFjLnVwZGF0ZShkYXRhKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZGlnZXN0OiAoZW5jb2Rpbmc6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBsZXQgcmVzdWx0ID0gbWFjLmRpZ2VzdCgpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZW5jb2RpbmcgPT09ICdoZXgnID8gc2pjbC5jb2RlYy5oZXguZnJvbUJpdHMocmVzdWx0KSA6IHJlc3VsdDtcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSxcbiAgICB9O1xufVxuXG4vKiogQGhpZGRlbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZUhhc2goKSB7XG4gICAgY29uc3QgaGFzaCA9IG5ldyBzamNsLmhhc2guc2hhMjU2KCk7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgdXBkYXRlOiAoZGF0YTogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICBoYXNoLnVwZGF0ZShkYXRhKTtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgZGlnZXN0OiAoKSA9PiBzamNsLmNvZGVjLmhleC5mcm9tQml0cyhoYXNoLmZpbmFsaXplKCkpLFxuICAgICAgICAgICAgfTtcbiAgICAgICAgfSxcbiAgICB9O1xufVxuIl19