区块链的原理是什么?

阅读: 评论:0

区块链的原理是什么?

区块链的原理是什么?

这个结构中最重要的便是网络的覆盖重叠,共享的数据层和协议层。这将颠覆目前互联网的层叠结构。原文中是这么说的“在这个新结构里,更加难以获得细分化、防御性和网络效应。大多数事物将像电子邮件那样运转,把你的密码从一个app带入另外一个app,你所有的数据和关系都在其中了”。

区块链的层叠结构(blockchainstack)

这幅图的基本思想就是:每个长方形条的内容都是去中心化和开源的。我称之为“共享式的数据层和协议层”。没有哪个人能够控制这个系统的任何一部分,而这些部分对所有个人和企业都是开放的。以比特币为例,区块链就是共享的数据层,而比特币协议就是一个去中心化的协议,它是共享的协议层的一部分。

在这副图里,越往上每一层就越薄,而共享的数据层和协议层在整个层叠结构里占了80%的比例。现在的互联网应用建基于如TCP/IP和HTTP这样的开放式的去中心化技术之上,但如果你把现在的互联网应用按照这幅图描绘出来,去中心化技术只占15%,因为那些应用基本都不是开放的,而是中心化的。


1.矿工和区块链

每个矿工都是计算机组成的网络里的节点,这些计算机构成了一个整体去验证所有的比特币交易。在每一笔交易中,算法会以比特币奖励他们,因为比特币在真实世界具有价值,这些机器的操作者就有激励让机器保持运作。

区块链就是一个公开账簿,它存有所有交易的记录,区块链由矿工去维持,它不是由某一个实体独家控制的,是对所有人开放的。


2.各种网络的覆盖重叠

开发者开始创建与比特币区块链平行的各种网络,借由它们去完成比特币网络无法完成的任务,但是可以利用区块链,比如去给他们的工作加上时间戳或去确认工作。

比如Counterparty(它是一个在比特币网络里的免费开放的金融工具平台),比如“侧链”。无论这些网络使用何种形式来覆盖重叠,它们的一个共同点就是它们都与比特币区块链联系在一起,而且它们能从中获得的网络效应就是流动性,而不用它们的加密货币做辅助程序,或者不用如Ethereum要求的区块链做备选方案。


3.去中心化的协议

感谢区块链,让我们可以去开发一套开源的、去中心化的协议,还有内置的数据、验证方式和交易体系,而没有一个实体可以单独控制。这正是传统的软件业开始瓦解的地方。最佳例子也正是比特币,我们已经意识到它对货币和金融的冲击。

Ebay、Facebook和Uber之所以很有价值,是因为它们能从网络效应里大量获益,这种网络效应来自于它们把用户数据集中在自己手里,并从交易中获益。建立在区块链之上的去中心化协议有可能取消每一个单独的部分,比如说,他们可以创建一个共有的去中心化的数据集合,任何人都能用,并且支持以比特币为基础的p2p交易。

事实上,已经有一些很有潜力的团队正在这么做,他们正在创造新的协议,有可能让以上那些公司被颠覆掉。一个例子就是Lazooz,它是一个实时拼车的协议,还有OpenBazaar协议,它支持免费的去中心化p2p市场。


4.开源和商业化的API

一般的开发者难以建立协议,但有机会能让他们轻松搞定。从长期来看这个行业是否会发展良好,这个问题还存在争议,但是我认为这个行业是整个层级结构里的重要组成部分。在这些去中心化协议上,让任何开发者能迅速创建新的应用或实验至关重要。

这可以是商业化的服务,或是开源项目。这个趋势的好例子就是 ,还有Coinbase的开源节点工具Toshi。这两个的目标是一样的,不过Chain 是一个商业服务,而Toshi是开源的。


5.应用

这是这个结构图里面向用户的部分。大多数时候,建立在这个基础上的应用和我们现在的方式是一样的,就像Coinbase和PayPal的运作方式相似。但对于用户而言,一个很大的区别就是这些应用是建立在去中心化的协议之上的,每一个应用都可以和其他应用对接,就像不同的email应用和比特币钱包可以交互操作。

我喜欢这个层级结构的一个地方就是,它从底部逐渐向上成长,最初,我们有矿工、区块链和比特币,而现在我们在这个基础上创建了其他事物。我认为,技术中最重要的变革就是以这种方式建立的。


这给开发者、创业者和投资人带来了一系列有意思的挑战,因为目前互联网的层叠结构的价值会被上面这个区块链层级结构商业化。但这个结构最好的地方在于,由于网站转换率、转置成本、个体对数据的所有权和市场支配力会降低或者不再存在,用户会受益更多。



看到一些争论区块链定义的回答, 突然意识到自己这篇解释原理的回答其实是一直是对着比特币撸的, 介于区块链的定义业界并没有一个特别明确和唯一的回答, 这里先给出个人根据所读论文而总结出的“区块链”应有特质:

  • 使用了具有 "哈希链" (下文有解释) 形式的数据结构保存基础数据
  • 有多个结点参与系统运行(分布式)
  • 通过一定的协议或算法对于基础数据的一致性达成共识(共识协议/算法)。

介于比特币目前是区块链最典型且最有影响力的应用之一理解比特币如何使用区块链后, 再去理解其他形式各样的区块链应用就会容易很多。

----------------

以下引自我在知乎中另外一个区块链问题的答案

在谈应用之前,最重要的是先理解它的技术本质是什么, 所有介绍区块链的答案里, 都最先提到了区块链不可篡改的特性, 所以第一个要理解的是它到底是怎么实现不可篡改性的。

  • 先修知识;
    • 密码学Hash()函数的单向性: Hash(x) =y , 通过y很难找到x
    • 哈希链: 假如现在有顺序产生的数据块 A, B , C 。 那么我们可以这样计算一个hash 。 注意 “||” 表示拼接
h0=  Hash(A) 
h1 = Hash(B || h0)
h2 = Hash(C || h1)


  • h2是我们计算的hash头部,现在来看, 为什么我们管这个东西叫Hash链, 因为h2 的值依赖于之前一系列数据的内容和计算顺序。 假如说现在你知道了h2 , 别人拿着A,B, C, 他不管是修改A,B, C的任一点内容还是A,B, C的出现顺序,你都无法再次计算出正确的h2


  • 好的, 其实到这里区块链的概念就有点感觉了不是吗。"区块链"这个词是英文 Block Chain 的翻译, 如果从字面上理解, "数据块组成的链条" 就足以阐释它的基本内涵了。比特币区块链其实就是哈希链的一个变种(注意, 下文描述的这种添加随机数以及对随机数有特殊要求的规则是比特币为了实现工作量证明 Proof of Work 的共识机制而添加的, 并不是区块链的一个必要特征)。 怎么变? 添加一个随机数(Nonce)
    • 假如现在有顺序产生的数据块 A, B , C 。 我们来这样计算hash头。 注意 “||” 表示拼接
h0=  Hash(A|| Nonce0) 
h1 = Hash(B || h0 || Nonce1)
h2 = Hash(C || h1 || Nonce2)



  • 这里我们还添加一个额外的要求, 就是 h0, h1, h2 必须都得是以指定数目的0 bit开头的,例如要求每个哈希值都必须以5个0开头,则h0,h1,h2都应该是这样的形式(00000*****************)
  • 添加了这个要求以后, h0, h1, h2就都不是那么容易计算的了, 因为你不能根据输出的形式来反推输入是什么, 而A, B, C又是给定的, 那只能不断更改Nonce来穷举计算, 然后找到一个可以满足要求的Nonce值 ,使得h0, h1, h2符合要求
  • 到这里大家就知道所谓的矿工是在干什么了, 就是接受广播出来的数据块,然后计算当前最新的哈希链的头部, 当成功计算出了一个符合要求的Hash后, 就告诉所有人,自己找到了, 让别人再去计算下一个哈希头部。


  • 其实到这里, 区块链的本质就已经差不多了, 假如网络中大家都默认遵守协议, 只在最长的哈希链后计算新的头部,那么一切都很好, 但是如果有人想搞不一样,那他就得拥有更强的计算能力, 在诚实者都遵守规则的情况下, 自己能够计算出一个链条分叉甚至说直接计算出一个新的链条,让大家都承认。
  • 至于这个难度的证明,中本聪就是建立了一个泊松分布的概率模型, 假设了诚实结点计算出新的哈希头的概率p和不诚实结点计算出新的Hash头的概率q后,算出了一个N值。
    • 这个N值的含义是给出了当一个新的哈希头部 h1 计算出来后,其后追加N个头部(h2,)后,网络才应该承认这个新的头部 h1. 因为此时, 攻击者要想成功发动攻击, 至少需要计算出一个长度大于N的分支, 这个概率在攻击者没有掌握全网算力50%的时候是很难达到的


所以到这里, 区块链就已经清楚了,就是一个密码学工具的一种巧妙应用而已。


那这里思考一下, 不可篡改性其实并不是一个什么神奇的特性,密码学的签名技术就能提供不可篡改性呀, 区块链到底解决了一个什么问题。答案是


  • 信任问题


    • 区块链提供了一种方案, 让一个网络中,所有的结点都有能力去用计算能力投票, 从而保证了得到承认的结果是大多数人公认的结果, 不会因为少数结点作恶,而修改结果
    • 传统的交易建立在什么基础上, 我们对于金融机构的信任, 对于中央银行的信任, 或者对于交易对手的信任, 对于第三方中间人的信任。
  • 这里其实就引出了很多安全技术应用,或者说很多制度建立的本质, 如果你信任的越多, 需要做的工作就越少。
  • 区块链就是因为不想信任网络中的任意一个单一结点, 所以让大多数人具有公平的投票权利, 而这个投票权利,不是按人头算的, 是按CPU算的, 每个CPU有一票。


  • 区块链的最难以克服的缺点1: 效率问题
    • 前面说过, 当你信任的越多, 需要做的工作越少, 就好比你和一个人做生意, 如果你完全信任对方, 那么合同都不用签, 口头约定就行。 如果不太信任, 签一个简单的合同, 规定最重要的事项。 如果特别不信任, 让律师对交易中所有存在风险的地方列出条款,规定责任, 签一个大大的合同。
    • 所以看出来了吧, 信任越多, 效率越高。 信任越少, 效率越低。
    • 区块链也是一样,因为没有单一结点可以信任,通过计算来换取信任。 所以简单的一个承认交易的操作, 需要大量的计算参与进来, 结果是什么, Bitcoin平均交易速度只有7笔每秒。
  • 比特币的最难以克服的缺点2: 宏观金融的适应性
    • 金融学和经济学作为人类多年来发展出来的科学具有不可替代的地位, 比特币的流通货币量是存在上限且增加速度基本固定的, 这符合经济规律吗? 显然不符合。 因为学过经济的人都知道, 货币只是对实物财富的衡量, 货币增长速度快于商品增长数量, 则发生通胀, 货币增长速度慢于增长速度则发生通缩。


  • 比特币的最难以克服的缺点3: 匿名引发的安全性
    • 想一想匿名对于罪犯的好处,就不难理解比特币的洗钱风险
    • 比特币作为信息安全学者的发明产物, 现在常被应用于黑客入侵之后勒索的交易手段, 想起来也真是讽刺
  • 比特币的最难以克服的缺点4: 用户的易用性
    • 比特币的技术是基于密码学签名技术的, 你的账户安全由你的私钥保护, 如果不添加别的手段,比如在别人那里备份, 或者在别的地方备份, 你丢失了密钥, 账户里的 钱是没有人能给你找回来的。 想想人们丢银行卡, 忘记密码的频率, 这个问题有多大, 不用我说大家也懂


说了这么多缺点, 区块链技术和比特币技术就不行了吗? 显然不是,不然那些国际金融机构也不会下大功夫研究它, 但其实, 和其他所有的技术一样, 大家都只是在寻找一种能够更高效解决信任问题的手段而已, 金融机构的核心是什么, 交易投资与风险控制呗。 其实也都是围绕信任问题展开的。信任问题的解决在金融机构本来其实就是耗费了大量的成本的, 只不过很多成本在后台, 或者在人工的耗费上, 很多人看不到而已。

总结 :

区块链的技术有望以一个更低的成本解决更广泛的信任问题所以被受人关注

本文发布于:2024-01-29 17:36:15,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170652097917126.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:区块   原理
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23