美文网首页
iOS web3swift交易签名

iOS web3swift交易签名

作者: 9d8c8692519b | 来源:发表于2018-10-19 15:52 被阅读66次

// transactionSign  交易签名  fix ETH 和代币
    func transactionSign(nonce :String,gasPrice :String,gasLimit :String,toAddress :String,value :String,privateKeyData :Data,chainID :String,templateData :Data) -> Data  {
        
        var transaction = EthereumTransaction(nonce: BigUInt(nonce)!,
                                              gasPrice: BigUInt(gasPrice)!,
                                              gasLimit: BigUInt(gasLimit)!,
                                              to: EthereumAddress(toAddress)!,
                                              value: BigUInt(value)!,
                                              data: templateData,
                                              v: BigUInt(0),
                                              r: BigUInt(0),
                                              s: BigUInt(0))
        transaction.UNSAFE_setChainID(BigUInt(chainID)!)
        print(transaction)
        try! Web3Signer.EIP155Signer.sign(transaction: &transaction, privateKey: privateKeyData, useExtraEntropy: false)
        print(transaction)
        let encoded:Data? = transaction.encode()
        return encoded!
    }

上述中 templateData 代币才有,ETH为 templateData = nil。

相关文章

网友评论

      本文标题:iOS web3swift交易签名

      本文链接:https://www.haomeiwen.com/subject/dhtuzftx.html