我们正在使用bitcoinj来处理比特币钱包。Protobuf 序列化的钱包主体以字节数组的形式存储在数据库中。
就我而言,不需要连接到比特币网络来获取接收地址,因为它是从存储在钱包实体中的密钥以某种方式计算出来的。
所以我的问题 - 是否可以在没有任何网络活动的情况下将 protobuf 反序列化为 bitcoinj Wallet实体?
fun getBitcoinAddress() {
val seedCode = "yard impulse luxury drive today throw farm pepper survey wreck glass federal"
val wallet = Wallet.fromSeed(
NetworkParameters.fromID(NetworkParameters.ID_MAINNET),
DeterministicSeed(seedCode, null, "", 0L)
)
val changeAddress = wallet.currentChangeAddress()
val freshAddress = wallet.freshReceiveAddress()
val currentAddress = wallet.currentReceiveAddress()
System.out.println(
"currentReceiveAddress$currentAddress
freshAddress$freshAddress
changeAddress $changeAddress"
)**strong text**
}
从助记词或种子生成一个钱包,然后你就可以得到地址。而且,是的,它已离线