const ethUtil = require('ethereumjs-util') module.exports = { concatSig: function (v, r, s) { const rSig = ethUtil.fromSigned(r) const sSig = ethUtil.fromSigned(s) const vSig = ethUtil.bufferToInt(v) const rStr = padWithZeroes(ethUtil.toUnsigned(rSig).toString('hex'), 64) const sStr = padWithZeroes(ethUtil.toUnsigned(sSig).toString('hex'), 64) const vStr = ethUtil.stripHexPrefix(ethUtil.intToHex(vSig)) return ethUtil.addHexPrefix(rStr.concat(sStr, vStr)).toString('hex') }, normalize: function (address) { if (!address) return return ethUtil.addHexPrefix(address.toLowerCase()) }, } function padWithZeroes (number, length) { var myString = '' + number while (myString.length < length) { myString = '0' + myString } return myString }