这里我们主要讨论一下 线下签名交易(Offline transaction signing)。线下签名交易允许您使用web3j提供的钱包账户发起交易,并且您完全掌控自己的私钥,可以将交易发送到其他节点并广播到网络上。
线下签名交易使用RawTransaction对象来完成,具体包括以下几步: 1、使用私钥或密码+钱包文件(keystore)加载转账凭证Credentials 2、获取发起转账账户的nonce值,即交易序号 3、创建 RawTransaction交易 对象 4、对 RawTransaction 对象进行签名 5、将交易(RawTransaction 对象)发送给节点进行处理 6、获取交易哈希值TxHash
此外,还有一种简单的转账方式,无需管理nonce。
这两种方式都属于离线交易,首先组装交易,然后将其发送到区块链上。
参考链接: https://docs.web3j.io/getting_started.html#transactions https://www.jianshu.com/p/6650d2a3aea9