UNPKG

nerve-sdk-js

Version:
29 lines (22 loc) 885 B
Object.defineProperty(exports, "__esModule", { value: true }); exports.encoderTransferAsset = encoderTransferAsset; var _ethers = require("ethers"); var { BigNumber } = require("ethers/utils"); /** * 转出enuls的数据凭证 */ function encoderTransferAsset(chainId, contractVersion, txKey, toAddress, amount) { var result = _ethers.ethers.utils.hexlify(_ethers.ethers.utils.toUtf8Bytes(txKey)); result += toAddress.substring(2); result += _ethers.ethers.utils.hexZeroPad(new BigNumber(amount).toHexString(), 32).substring(2); result += Buffer.from("transferAsset", "utf8").toString("hex"); result += _ethers.ethers.utils.hexZeroPad(new BigNumber(chainId * 2 + contractVersion).toHexString(), 32).substring(2); console.log(result, 'encode data'); var hash = _ethers.ethers.utils.keccak256(result).substring(2); console.log(hash, 'hash'); return hash; }