已解决

Hyperledger是否删除资产实际上删除了任何东西?10

我正在尝试Hyperledger Composer,我想知道当我们删除资产时会发生什么是否可以从区块链中删除/ 删除任何内容?

或者我们只是简单地资产标记为已删除,但是实际上该资产的所有交易记录仍存在于区块链中?

当我移除资产时,我仍然看到区块数量增加。因此,我有一种感觉,也许资产没有被删除(就像从存在删除一样),而只是标记了当前状态已被删除。

我尝试创建具有相同ID的资产,尽管它可以工作。我可以删除和重新创建任意多次,但块数始终会增加。

遵循以上所述,重新启动整个Hyperledger Network(例如,从网络中的所有计算机重新加载Docker映像)是否是删除区块链的唯一真正方法


VeelDiana

2020.09.21
319
收藏

2个答案:

Moon

2020.09.21

听起来您做对了。不,区块链上的数据永远不会被删除。删除只是另一个事务,它表示某些数据已删除,因此世界状态数据库(具有未删除信息的DB)可以删除该数据。

由于区块链在后台默克尔树(或可能是哈希图),因此它遵循这些规则并且是不可变的。除非将账本和交易从计算机中删除,例如重新启动网络并从对等方删除所有信息,否则数据将始终存在。基本上,这是每台用于保存分类帐的网络结构的机器的信息。对于所有人来说,比特币来说,对于许可的区块链来说,可能只有几台机器并且可能合理地发生。

但是,从理论上讲,随着区块链的不同实现,它变得有些复杂。听起来您正在使用Hyperledger Fabric,所以我们以它为例。如果您要动态升级网络的“业务网络定义”,并且资产定义已更改且不支持注册表中的现有资产,那么实际上将它们删除了吗?我不确定,但是我知道它们不会出现在查询中,实际上可能是相同的。同样,如果您设置ACL规则或使用加密,则标记的资产也可能会被删除,因为随机参与者查看该数据会遇到很多障碍(请参阅有关安全性和访问控制文档)。因此,根据您的数据的敏感程度,


评论(0) 赞赏(0)

ii098

2020.09.27

11_副本_副本.jpg

评论(0) 赞赏(0)

撰写答案:

1.描述你的问题

2.贴上相关代码

3.贴上报错信息

4.贴上相关截图

5.你已经尝试了哪些方法仍然没解决(附上相关链接)

提交答案

感谢您的善举,每一次解答会成为新人的灯塔。回答被采纳后获得20算力和相应LK币奖励。

关闭