对区块链进行24个月研究之后所学到的9件事情(上)

在读了这篇文章之后,你会对区块链有个大概了解。以下是我在过去两年里在区块链和分类账上学到的9件事。对于那些着手区块链的人来说,这是一个入门读物。

区块链是散列

组成区块链的块碰巧大部分都是散列(所以你可以说我们都是在处理哈希链而不是块链)。散列只是一个固定大小的值,看起来就像字母表里的东西,但是可以被可靠地复制到相同的数据集里,它们很容易做像混淆数据、速度索引和其他许多用途的任务。区块链的散列由不同的种类组成,但通常都是足够强大的算法,不能轻易地破坏(比如SHA256)。它们通常有各种各样的神秘属性,如碰撞阻力和二次预图像电阻。这些都不是很重要的。你需要知道的是,你把一些数据输入到这些算法中,然后弹出一个像这样的散列:

FQi2l4lavwPVXDhB9ZI2q5LJumuol5XIM3/POS/e6LQ

不管输入多少数据或数据类型,都可以得到固定大小的散列输出,这对于给定的输入数据来说是相同的。

关键要点:核心组成部分是散列,这个名词已经存在很长时间了。

行业存在炒作

是否有炒作呢?是的。区块链可以治愈世界的饥饿,他们可以把水变成酒,他们可以让任何人都不可能再撒谎,他们可以在政府和普通民众之间建立起公平的竞争环境,开启了一个透明和利他主义的新时代,而迄今为止人类还没有能力去应对这种局等等等等。是的,这存在太多的炒作了。

“我认为这是一个引人注目的领域,但我认为它现在被过度炒作了,”Peter Sondergaard,Gartner,via Fin24

但是,请不要让它阻止你去调查和学习。虽然我们还处于了解技术的力量,实现可靠的产品/市场匹配的早期阶段,但我相信会有一些区块链所支撑的基本的价值主张。

关键要点:炒作周期正在全速运转。

梅克尔树

许多区块链或散列链的基础实际上是一个叫做“梅克尔树”的结构。与相对较新的区块链相反,默克尔树实际上在1979年被拉尔夫·默克尔(Ralph Merkle)授予专利。

梅克尔树,虽然听起来尽是数学,它其实是个很简单的结构,你可以把一群散列有效地结合在一起,可以用单个根散列来代表整组散列,但证明原始组的所有散列有助于单根散列。除了击溃大量的散列,它们还有助于对更大的数据集进行有效的查找(区块链往往是这样的)。用一个简单的例子来说明:

梅克尔树的例子

在上面的插图中,我们看到一棵带有多片叶子的梅克尔树。 在底部是红色的叶子,这是单独的散列,他们简单地连接在一起,再次组成散列。例子中输入的数据是蓝色的。它的散列(虚构地表示为A1756FB32C)与左侧的红色散列连接,从而在上面创建灰色散列。顶部的黄点是由它下面的每个散列组成的散列。

关键要点:散列连接在一成形成梅克尔树

火车车厢

区块链确实是一个哈希链,但是它们变得更加强大一些,因为它们通常是一系列梅克尔树根哈希,它们代表着一系列广泛的信息或事务。如果你眯起眼睛,你可以把区块链想象成一列火车,每列火车是一个梅克尔根,实际上代表了大量的数字资产(又名乘客)。

这个火车隐喻唯一的问题是,在区块链中,每个新区块是基于前一个区块。 所以我们现在所谈论的是从起点开始,对于每一代乘客(或者说小孩),你都会在车厢前创建一辆新的火车。你不可能在没有人的情况下产生一个小孩,而简单的DNA测试将很容易证明血统。这个火车的DNA测试就像你可以在散列上执行的数学测试,以确保它是正确的梅克尔树根的一部分,从而在区块链中的权利块。人力资源管理模式。 这看起来似乎有点深奥,但我希望这个比喻能帮助解释一个基本的区块链是什么,至少在精神上是这样的。

关键要点:梅克尔树被链接在一起,形成了更大的区块链结构。

输入总账

好吧,现在我们已经有一堆由一堆散列组成的梅克尔树,而什么是分类账,与这有什么不同吗?简单回答:当然,它的一部分是散列和梅克尔树(有点像“寂静的绿色”就是人!)。与分类帐的关键区别在于,共享代码段通常分布在许多匿名方之间,这些匿名方管理添加到不可变数据库的内容。

如果我们退后一步,涉及的重要方面是分布式(共享),匿名(有时)和不可变(几乎总是)。没有一个中央当局可以控制结果。匿名,以便任何人都可以与任何人进行交易,就像现金一样。而且不可改变,使得重写历史是完全不可能的。虽然这听起来相当简单,但影响却很复杂,往往意味着整个中间人(如中央银行)的消失,这会令很多人兴奋不已。

但不要让这个骗过你,这项技术还处于初级阶段,比现在的解决方案还要多,根据我迄今为止的经验,许多看起来像分类帐有待解决的有趣问题实际上可以通过安全的多主数据库或标准的客户服务器网络解决方案等传统解决方案来解决。

我想让你这样想象一下:你在一个典型的垃圾酒吧里做了一个乏味的会计,然后把他复制到人们想做交易的地方。你最好相信人们会进行合法的交易,而且他们的交易是正确的,这正是分类账的目的。如果你尝试改变一些东西,你会受到打击。

因此,事实证明,账本并不是真正的不可变的,如果“有能力”决定改写历史以获得更大的好处(或者不取决于你的观点),那么这是可能的。换句话说,他们对人类的状况仍然是不可靠的。

关键要点:分类帐是分布式数据库,建立在区块链之上,共享代码来管理逻辑。

智能合约与共识

好的,我们现在真的很喜欢这个好东西! 如果我们添加另一个构建块,我们来到智能合同和统治它们的共识算法。我们之前谈到了支持分类帐的共享代码,通常这个共享代码被称为智能合同。这不一定是一个合同,尽管它可以体现一个合同,而且确实是要确保同意和落实分类账交易的逻辑是安全的,并且在所有参与方中都是相同的代码。换句话说,大多数提交数据的节点必须就块的内容达成一致,而且这个协议基于跨节点执行的相同的代码。

智能合同有不同的范例,一些(Ethereum)声称他们必须以自己的编码语言在虚拟机中运行,另一些(Tendermint)支持更灵活和语言不可知的方法。无论如何,为了确保交易可以致力于分类账,高度确定性需要存在。根据平台的不同,这可能需要或多或少的努力。

最后要注意的是,由于所需的确定性水平,智能合约代码应尽可能小和集中。

关键要点:智能合约只是一个小的,确定性的代码,在分类账的成员之间共享并管理增加的内容。

文章来源:

https://startupsventurecapital.com/9-things-i-learned-working-in-blockchain-for-24-months-cb64b8605780

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20171228A0QYBB00?refer=cp_1026

扫码关注云+社区