Blockchain和HyperLedger Fabric的区别

lea*_*man 16 blockchain hyperledger-fabric

当我试图理解区块链技术时,我遇到了HyperLedger Fabric.根据文档,它是区块链技术的实现.

那是什么意思?块链只是一个概念和HyperLedger Fabric,这个概念的实现?

更新: 超级分层结构在哪里存储交易?我知道它是一个p2p体系结构,每个对等体都有一个事务副本,但通常这些事务是一个不断增长的集合.每个同行都有成长交易的副本吗?我还不清楚这一点.社区是否推荐任何数据库?

Ser*_*ich 18

区块链是如何在分布式网络中保存数据的"想法".在Wiki中,它被定义为:

块链 - 是一个分布式数据库,它维护着一个不断增长的记录列表,称为块.每个块包含一个时间戳和前一个块的链接.块中的数据不能追溯地改变.

有许多项目在其核心中使用区块链:

  • 比特币
  • 复仇
  • Hyperledger
  • 等等

Hyperledger - 不是一个实现,它是可信网络应该如何工作的规范.

Hyperledger规范有几个来自不同供应商的实现:

  • Fabric - 来自IBM
  • Sawtooth Lake - 来自英特尔
  • Corda - 来自R3财团
  • Iroha - 来自Soramitsu

PS每家公司都试图实现它自己的Hyperledger愿景,目前这些实现彼此不兼容.

  • Corda 从未被贡献给 Hypedger。它是属于 R3CEV 联盟的一个独立的开源项目 (4认同)

Cly*_*ruz 11

是的,简单地说,Hyperledger Fabric是块链接MySql对数据库的作用.

1.2为什么面料?

早期的区块链技术有一系列用途,但往往不适合特定行业的需求.为了满足现代市场的需求,该结构基于以行业为中心的设计,满足特定行业用例的多种多样需求,扩展了该领域先驱者的学习,同时还解决了可扩展性等问题.该结构提供了一种新方法,可以在多个区块链网络上实现许可网络,隐私和机密.

- https://github.com/hyperledger/fabric/blob/master/docs/protocol-spec.md#12-why-the-fabric


小智 10

那是什么意思?块链只是一个概念和HyperLeder,这个概念的实现?

我会说这实际上取决于你对区块链的定义(原来拼写为"区块链",如上所述).

原始定义可以在比特币cpp代码库的注释中找到.

https://github.com/bitcoin/bitcoin/blob/4405b78d6059e536c36974088a8ed4d9f0f29898/main.h#L807-L812

和这里.

https://github.com/bitcoin/bitcoin/blob/4405b78d6059e536c36974088a8ed4d9f0f29898/main.h#L1014-L1019

我认为区块链的一个特征是不可变性.如果区块链的历史可以通过勾结来改变,那么它不是区块链imho.我的印象是任何私有/许可的区块链都不能做出这样的保证,因为如果某些东西需要或者想要被改变,你可以很容易地勾结来做出像普通数据库一样的改变(不要混淆只附加变化).由于PoW(工作证明)比特币使得这非常困难,如果你想改变过去,你需要矿工重写所有的块,这是非常昂贵的.

至少我至少会为它添加前缀... fabric可以实现"私有/许可"区块链.这完全取决于社区和像Fabric这样的团体来定义"私有/许可区块链"的含义.

超级分层结构在哪里存储交易?我知道它是一个p2p体系结构,每个对等体都有一个事务副本,但通常这些事务是一个不断增长的集合.每个同行都有成长交易的副本吗?我还不清楚这一点.社区是否推荐任何数据库?

他们在面料上进行了大量的开发,我相信甚至更换他们正在使用的技术堆栈,因此很难让我知道他们目前正在做什么.他们的最新指南:

http://hyperledger-fabric.readthedocs.io/en/latest/glossary.html

或者在这里查看他们的代码库:

https://github.com/hyperledger/fabric

看起来他们转向火箭聊天,他们的开发人员对技术问题很有帮助. https://chat.hyperledger.org/home

有一件有趣的事情是,我过去曾与他们的开发人员谈过这些相同的问题和我得出的答案,他们是使用couchdb来保持状态和apache kafka作为核心"区块链片".如果您查看他们的最新指南并将"频道"替换为"主题",我可以看到他们仍在使用apache kafka,但我没有看到它在任何地方引用.