2016-09-27 38 views
0

我是比特币新手。Bitcoinj - 创建临时墙壁

我需要为货币兑换应用创建类似临时比特币钱包的东西。钱包应该只存活一次交易或两天(如果交易未确认),然后应该被移除。 但据我了解比特币文档 - 我不能删除钱包,因为它是一种“公钥”。

有什么建议吗?

+0

你能描述一下你的用例吗?也许有其他方法可以实现你的目标。 –

+0

也可以尝试在bitcoin.stackexchange.com上发布。 –

回答

0

'钱包'实际上并不存在。所有这一切,都是私人密钥的集合(或者只是一个私人密钥,可用于从HD钱包中获取其他密钥)。这些私钥允许您花费未使用的输出(UTXO),从而进行交易。

这些私钥用于生成公钥,并从那些地址生成。你不能删除这些地址,因为它们只存在。实际上,每个地址都已经存在,您只需要私钥就可以访问它们。

无论如何,将东西从区块链中移除并不合理,区块链实际上是一系列区块,每个区块都是充满交易的容器。如果您要从块中移除事务,则以下所有块都将无效,因为块的merkle树的散列不再加起来。


这就是说,你可能想看看HD钱包。你可以做这样的事情(见BIP44):

m/purpose'/coin_type'/account'/change/address_index 

在这里你可以使用一个递增的ID帐户,使每次使用都有自己的账户。然后,您可以为每笔收入创建一个新地址(对于入境外部交易,更改= 0,将1更改为来自您自己钱包的更改)。

这意味着每个支付/无论有自己的地址。因为它是一个高清钱包,所以你仍然可以用主密钥访问所有的地址。

+0

感谢您的建议。真正有用的评论。我为我的应用程序使用了多钱包系统。 – Aventes