nerve-sdk-js
Version:
nerve nerve-js nerve-sdk nerve-js-sdk
29 lines (22 loc) • 885 B
JavaScript
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;
}