北京SEO

36Kr对区块链的解释

2018/07/12/09:48:32  阅读:2592  来源:谷歌算法  标签: 发外链
  什么是区块链?
区块链,区块链技术


  要认真审视某些问题,有几个要点先要理解:什么是区块链?它到底是什么?当中有许多混乱之处。许多企业使用“区块链”这一术语,意思就是说它是魔幻设备,所有数据永远不会出错。当然,这样的设备根本不存在,至少在真实世界不存在。

  什么是区块链?从技术上讲,区块链就是区块连成的链条,一个区块存放一些有序的交易信息。如果你还是不理解,可以将区块链看成数据库的子集,只是多了一些特色。

  区块链与普通数据库最大的不同就是它有一套特殊规则,规定如何将数据存储到数据库。存入的数据不能与数据库中其它的数据发生冲突(共存性),只能添加(不可变性),数据与数据主人是锁定的(所有性),它可以复制。数据库没有中央机构管理(去中心化),这点是大家都认同的。

  我们可以说,“去中心化”是区块链的圣杯。为什么去中心化如此有魅力?因为它不会出现单点故障。换言之,没有任何单一的权威机构可以拿走你的资产,改变”历史“。因为审计踪迹不可变,所以你不需要相信任何人,这点正是大家所期待的。不过,虽然区块链优点很多,但是要享受这些福利成本可不低。

  区块链的成本

  要让审计追踪不可变,不被任何一方控制,需要打造一套系统,成本很高。

  我从以下几个方面来解释一下:

  ——开发更严格更缓慢

  开发一套可验证的系统,保持一致,不是一件易事。只要有一个小小的漏洞,就会毁了整个数据库,或者导致某些数据库与其它数据库完全不同。损坏或者分裂的数据库无法保证一致性。

  另外,所有系统在设计时从一开始就应该是一致的。所以说在区块链技术中,不能追求“movefastandbreakthings“(快速行动,打破常规)。如果你破坏了,就会丧失一致性,区块就会被摧毁,变得一文不值。

  你可能会说,为什么不修复数据库,或者重启,然后继续前进?如果用的是中心化系统,要做到还算容易,去中心化系统就难了。改变数据库必须得到系统内所有各方的同意才行。区块链是公共资源,不被任何实体控制,缓慢打造中心化数据库也是成本非常高的。

  ——设计激励结构非常难

  添加正确的激励架构,确保系统参与各方不会滥用数据库、破坏数据库,这是一个重要的考虑因素。区块链必须保持一致,如果里面有许多无用、琐碎的数据,区块链就会变得不实用,因为将数据放入系统的成本是很低的。如果系统中没有任何数据,将数据放入系统的成本就会很高,这样的区块链也是不一致、不实用的。

  到底是什么赋予数据最终特性?如何确保激励与网络目标一致?为什么节点会保留数据或者更新数据?当数据与数据发生冲突时,是什么让系统选择一些数据,放弃另一些?这些问题都需要回答,从一开始就要协调好,未来,当技术或者企业变化时,必须确保区块链继续有效。

  你可能会问:如果激励机制出现问题,为什么不能修复呢?再次强调,在中心化系统中,要做到不难,但是如果系统去中心化,那就不容易了,如果没有取得一致同意,你不能修改任何东西。除非每一个人都同意,否则不能修改任何东西。

  ——维护成本很高

  如果是传统中心化数据库,只需要再写一次就行了。区块链不一样,它要编写成千上万次。传统中心化数据库只需要检查一次就行了,只需要传输一次并存储数据就行了。区块链不一样,它要传输成千上万次。

  维护区块链的成本高很多,而且还要通过实用性来证明。正因如此,大多应用会提前考虑某些特征,比如一致性、可靠性,这样检查、接收、备份时成本就会低一些。

  ——用户至高无上

  这是一件好事,因为企业不愿意为用户的数据承担责任。不过也可能是坏事,如果用户作恶就没有办法了。你没有办法剔除用户,它会用琐碎的数据损害你的区块链,也可能会利用某些不当手段获利,给其它用户带来不便。正因如此,我们才需要设立非常好的架构,即使某个用户发现漏洞,也不会有什么影响,因为无利可图。

  你可能会说,为什么不拒绝服务恶意用户呢?如果是中心化服务,要做到很容易。可惜区块链不是中心化服务,拒绝服务是一件很难的事,因为没有单一实体有权踢人。区块链必须公正公平,必须执行软件制定的规则。如果规则不足以剔除坏行为,那就糟糕了,因为里面没有法律。你只能与恶意者、行为不良的人打交道,可能需要花很长的时间。

  ——所有更新者是自愿的

  系统不会强制更新。网络的其它人没有义务改变软件。如果他们这样做,那么开发系统会更容易、更便宜、更快,就像中心化系统一样。区块链没有受到任何单一实体的控制,所以它与强制更新存在冲突。

  所有更新都是向后兼容的。如果你想添加新东西会很难,从测试角度看更是难上加难。软件每推出一个新版权,就会增加测试难度,发布时间也会延长。

  再次重申,如果是中心化系统,修改就会容易得多,不再使用旧系统就行了。区块链系统做不到,它不是中心化系统,你不能强迫任何人做任何事。

  ——扩展是一件很难的事

  与传统中心化系统相比,要让区块链系统具有弹性相当难,难上很多很多。为什么?原因其实很简单。同样的数据存储在无数地方,不是存在一个地方。传递、验证、存储任务超级繁重,数据库每出现一个复本,就要支付费用,如果是传统中心化数据库,支付一次就行了。

  当然,你可以减少节点的数量,减轻负担。既然如此,你为什么要用去中心化系统呢,可以不用啊?如果你担心的只是扩展成本,干脆用中心化数据库不就行了吗?

  ——集中更容易一些

  去中心化系统很难处理,维护成本很高,升级困难,扩展性差。如果是中心化数据库,费用更低,维护更容易,升级也更容易。为什么大家还要使用区块链,将它当成解决所有问题的灵丹妙药?

  首先,之所以向某些行业推销区块链,是因为它们行业的基础设施很久没升级了。医疗保健行业的软件相当糟糕。金融行业使用的软件停留在70年代。供应链管理软件既难安装,又难使用。来自这些行业的大多企业不愿意升级,为什么?因为有风险。有时投入巨资升级基础设施,结果发现不行,只能回退到过去。区块链可以推动IT基础设施升级,让升级变得更有吸引力。

  其次,区块链能让你觉得自己很领先。真正理解区块链的人很少,他们使用这个术语,只是因为听起来更聪明。我们使用“云计算”来谈论别人的计算机,“AI”的意思就是说调整算法,至于使用“区块链”这一术语,就是说要使用很慢很贵的数据库。

  第三,大家真的不喜欢政府控制某些产业,希望确立一种不同于法律的裁决机制,它很慢,很贵。区块链可以帮助行业摆脱政府监管。老实说,这种吹捧有点过头。区块链完全不与人冲突是不可能的。

  许多人没有真正理解区块链的能力和成本,就大吹特吹。更糟糕的是,许多VC和高管将区块链技术的细节和成本变得很抽象,因为我们刻意含糊其辞,区块链能做什么,不能做什么,我们没有讲清楚。皇帝没有穿衣服,大家都知道,但是不愿意说出来。

  区块链带来的益处

  我们都知道,相对于中心化数据库,区块链是很贵的。之所以使用区块链技术,唯一的原因就是去中心化。也就是说清除单一故障点,不让任何人控制。

  这样一来,软件和数据库不能经常改变,甚至完全不改变。

  许多行业不愿意这样。它们希望在必要时刻可以添加新功能,升级,可以自由改变或者拓展。因为区块链很难升级,很难改变,很难扩展,所以区块链对于大多行业没有太多用。

  只有一样东西例外,那就是金钱。和大多行业不同,如果不变化,金钱系统会更好。规则不可变或者很难改变,对于金钱来说是一件好事,没有任何损害。正因如此,谈到比特币时,区块链才会成为最适合的工具。

  有许多企业想使用区块链技术,但它们实际上并不是真的想要区块链,只是想给行业IT基础设施升升级。很好,但是如果非要扯上“区块链”这个术语,就有点不诚实了,而且过度夸大区块链的能力。

  结论

  在今天的世界,区块链已经成为流行术语。如果是中心化服务,中心化系统不能做的事区块链也做不到,而且开发中心数据库成本要低很多很多。如果是去中心化服务,你可能会欺骗自己,不去思考系统中存在的单点故障。在真正的去中心化服务中,根本不存在真正的“你“。

  回看2000年代初期,科技行业的许多高管都说要使用Java和XML。它们都是工具,不是真正的产品,但是许多高管还是向两种技术的使用投入巨资,虽然技术本身与工程师想达到的目标完全不匹配。区块链有点相似。专注你所要解决的问题,工具会自然而然冒出来。如果你盯着自己想使用的工具,最终造出的只是古怪的东西,没有任何实际用处。

  我有一种感觉:从概念上看,目前的区块链技术似乎想做不可能的事情。它们想变成安全的去中心化系统,由集中权力控制。这样的构想似乎想将两个世界的优点结合在一起,但是最终两边都不会好看。去中心化系统的成本劣势与开发难度会体现出来,中心化系统的出错模式也无法避免。

  区块链术语有点使用过度,许多人打着区块链的牌子招摇撞骗。越早远离炒作可能越好。

广告内容

36Kr对区块链的解释 36Kr对区块链的解释 36Kr对区块链的解释

相关阅读

热门评论

英伦投资客
英伦投资客

  区块链的原理:去中心化的分布式记账系统   从技术上来讲,区块是一种记录交易的数据结构,反映了一笔交易的资金流向。系统中已经达成的交易的区块连接在一起形成了一条主链,所有参与计算的节点都记录了主链或主链的一部分。一个区块包含以下三部分:交易信息、前一个区块形成的哈希散列、随机数。交易信息是区块所承载的任务数据,具体包括交易双方的私钥、交易的数量、电子货币的数字签名等;前一个区块形成的哈希散列用来将区块连接起来,实现过往交易的顺序排列;随机数是交易达成的核心,所有矿工节点竞争计算随机数的答案,最快得到答案的节点生成一个新的区块,并广播到所有节点进行更新,如此完成一笔交易。   通俗一点说,区块链技术就指一种全民参与记账的方式。所有的系统背后都有一个数据库,也就是一个大账本。那么谁来记这个账本就变得很重要。目前就是谁的系统谁来记账,各个银行的账本就是各个银行在记,的账本就是阿里在记。但现在区块链系统中,系统中的每个人都可以有机会参与记账。在一定时间段内如果有新的交易数据变化,系统中每个人都可以来进行记账,系统会评判这段时间内记账最快最好的人,将其记录的内容写到账本,并将这段时间内账本内容发给系统内所有的其他人进行备份。这样系统中的每个人都了一本完整的账本。因此,这些数据就会变得非常安全。篡改者需要同时修改超过半数的系统节点数据才能真正的篡改数据。这种篡改的代价极高,导致几乎不可能。例如,比特币运行已经超过7年,全球无数的黑客尝试攻击比特币,但是至今为止没有出现过交易错误,可以认为比特币区块链被证明是一个安全可靠的系统。   一方面区块链技术的特点让它能够实现一些在中心化模式下难以实现的商业模式,另一方面区块链通过源代码的开放和协作极大地鼓励了全社会的创新和协作。当然,区块链在金融应用中会存在很多问题和挑战,文中在具体应用中也进行了思考。区块链技术的工作原理并不难去理解,我们着力于具体的区块链技术的应用研究就可以发现这种区块链技术的工作原理无所不在。

互联网十八般武艺 互联网十八般武艺

互联网十八般武艺

总篇数179

精选文章

RMAN中catalog和nocatalog区别介绍 小技巧:为Linux下的文件分配多个权限 zimbra8.5.1安装第三方签名ssl证书的步骤 解决mysql不能远程连接数据库方法 windows服务器mysql增量备份批处理数据库 mysql中slow query log慢日志查询分析 JavaScript跨域问题总结 Linux下负载均衡软件LVS配置(VS/DR)教程 mysql中权限参数说明 MYSQL(错误1053)无法正常启动

SEO最新算法