PHP WebShell
Текущая директория: /opt/BitGoJS/modules/sdk-coin-sui/dist/src/lib/mystenlab/cryptography
Просмотр файла: hash.js
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.hashTypedData = hashTypedData;
const blake2b_1 = __importDefault(require("@bitgo/blake2b"));
/**
* Generates a Blake2b hash of typed data as a base64 string.
*
* @param typeTag type tag (e.g. TransactionData, SenderSignedData)
* @param data data to hash
*/
function hashTypedData(typeTag, data) {
const typeTagBytes = Array.from(`${typeTag}::`).map((e) => e.charCodeAt(0));
const dataWithTag = new Uint8Array(typeTagBytes.length + data.length);
dataWithTag.set(typeTagBytes);
dataWithTag.set(data, typeTagBytes.length);
return (0, blake2b_1.default)(32).update(dataWithTag).digest('binary');
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2NyeXB0b2dyYXBoeS9oYXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBUUEsc0NBUUM7QUFoQkQsNkRBQXFDO0FBRXJDOzs7OztHQUtHO0FBQ0gsU0FBZ0IsYUFBYSxDQUFDLE9BQWUsRUFBRSxJQUFnQjtJQUM3RCxNQUFNLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUU1RSxNQUFNLFdBQVcsR0FBRyxJQUFJLFVBQVUsQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0RSxXQUFXLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzlCLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUUzQyxPQUFPLElBQUEsaUJBQU8sRUFBQyxFQUFFLENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYmxha2UyYiBmcm9tICdAYml0Z28vYmxha2UyYic7XG5cbi8qKlxuICogR2VuZXJhdGVzIGEgQmxha2UyYiBoYXNoIG9mIHR5cGVkIGRhdGEgYXMgYSBiYXNlNjQgc3RyaW5nLlxuICpcbiAqIEBwYXJhbSB0eXBlVGFnIHR5cGUgdGFnIChlLmcuIFRyYW5zYWN0aW9uRGF0YSwgU2VuZGVyU2lnbmVkRGF0YSlcbiAqIEBwYXJhbSBkYXRhIGRhdGEgdG8gaGFzaFxuICovXG5leHBvcnQgZnVuY3Rpb24gaGFzaFR5cGVkRGF0YSh0eXBlVGFnOiBzdHJpbmcsIGRhdGE6IFVpbnQ4QXJyYXkpOiBVaW50OEFycmF5IHtcbiAgY29uc3QgdHlwZVRhZ0J5dGVzID0gQXJyYXkuZnJvbShgJHt0eXBlVGFnfTo6YCkubWFwKChlKSA9PiBlLmNoYXJDb2RlQXQoMCkpO1xuXG4gIGNvbnN0IGRhdGFXaXRoVGFnID0gbmV3IFVpbnQ4QXJyYXkodHlwZVRhZ0J5dGVzLmxlbmd0aCArIGRhdGEubGVuZ3RoKTtcbiAgZGF0YVdpdGhUYWcuc2V0KHR5cGVUYWdCeXRlcyk7XG4gIGRhdGFXaXRoVGFnLnNldChkYXRhLCB0eXBlVGFnQnl0ZXMubGVuZ3RoKTtcblxuICByZXR1cm4gYmxha2UyYigzMikudXBkYXRlKGRhdGFXaXRoVGFnKS5kaWdlc3QoJ2JpbmFyeScpO1xufVxuIl19Выполнить команду
Для локальной разработки. Не используйте в интернете!