简单直观地理解什么是区块链(一)



  • 如何简单直观生动形象地向对区块链技术不了解但是想知道区块链是什么的人介绍区块链技术或者比特币。

    因为面向的读者是不想知道具体技术实现只想了解区块链的人群,因此本文避开了一些底层和算法细节,采用比较主观的方式来展示笔者对区块链技术的感性认识。如果你只是对区块链感兴趣,并没有深入学习的打算,或者只是想像我一样在别人问起来的时候装逼,本文应该是一篇很好的“导论”。

    总览区块链本质上是一个去中心化的分布式账本数据库。其本身是一串使用密码学相关联所产生的数据块,每一个数据块中包含了多次比特币网络交易有效确认的信息。 这是区块链的定义,因此要逐步了解区块链,我们需要一步步了解如下东西。

    去中心化
    去中心化先来考虑一个中心化集中式处理的过程。你要在某宝上买一部手机,交易流程是:你将钱打给支付宝-支付宝收款后通知卖家发货-卖家发货-你确认收货-支付宝把钱打给卖家。0_1509280502607_fd044856b872644c8629402a034afcf1_r.jpg
    图1: 中心化集中式交易模式

    在这个过程中,虽然你是在和卖家交易,但是这笔交易还牵扯到了除了你和卖家的第三方,即支付宝,你和卖家的交易都是围绕支付宝展开。因此,如果支付宝系统出了问题便会造成这笔交易的失败。并且虽然你只是简单的买了一个手机,但是你和卖家都要向第三方提供多余的信息。因此考虑极端情况,如果支付宝跑路了或者是拿了钱不却不承认你的交易或者是支付宝所在的城市因为开G20把所有人都赶走了(?),那么你就悲剧了。

    而去中心化的处理方式就要显得简单很多,你只需要和卖家交换钱和手机,然后双方都声称完成了这笔交易,就OK了。

    可以看出在某些特定情况下,去中心化的处理方式会更便捷,同时也无须担心自己的与交易无关的信息泄漏。

    其实如果只考虑两个人的交易并不能把去中心化的好处完全展示出来,设想如果有成千上万笔交易在进行,去中心化的处理方式会节约很多资源,使得整个交易自主化、简单化,并且排除了被中心化代理控制的风险。

    去中心化是区块链技术的颠覆性特点,它无需中心化代理,实现了一种点对点的直接交互,使得高效率、大规模、无中心化代理的信息交互方式成为了现实。

    当然,上述的例子有一个很大的潜在问题:没有了权威的中心化代理,怎样保证每笔交易的准确性和有效性呢?比如:如果没有了权威的中心化代理,张三某一天借了我100块钱,但是不还钱还不承认怎么办?这里就引出了区块链的其它特性

    两个基础难题
    在去中心化以后,整个系统中没有了权威的中心化代理,信息的可信度和准确性便会面临问题。
    问题1:类两军问题
    第一次听说这个问题居然是在TCP的课上,大致说的是有两个相距很远的军队要传递信息,红军派遣一个信使去跟蓝军说:“你他娘的把意大利炮拿出来!”。蓝军收到信息后又派了一个信使去红军说:“收到指令!”。然后红军又派一个信使去蓝军说:“知道你收到指令了!”。然后蓝军又派一个信使去红军说:“知道你知道我收到指令了!”。然后红军又派一个信使去蓝军说:“知道你知道我知道你收到指令了!”……然后就没完没了了。0_1509280976659_3b659f83a2ffa35e9bc4f3e71042bf07_hd.png
    图2:在分布式计算中在异步系统和不可靠的通道上达到一致性是不可能的

    在这种情况下,因为是点对点的通信,双方不可能在这种情况下达到信息的一致性。严谨一点,就是“在分布式计算上,试图在异步系统和不可靠的通道上达到一致性是不可能的”。

    问题2:拜占庭将军问题
    拜占庭罗马帝国在军事行动中,采取将军投票的策略来决定是进攻还是撤退,也就是说如果多数人决定进攻,就上去干。但是军队中如果有奸细(比如将军已经反水故意乱投票,或者传令官叛变擅自修改军令),那怎么保证最后投票的结果真正反映了忠诚的将军的意愿呢?

    拜占庭将军问题反映到信息交换领域中来,可以理解为在一个去中心的系统中,有一些节点是坏掉的,它们可能向外界广播错误的信息或者不广播信息,在这种情况下如何验证数据传输的准确性。

    区块链技术的诞生
    现在让我们来一步一步在去中心化的系统中解决这些问题,见证区块链技术雏形的诞生
    我们先来建立一个去中心化的系统,为了方便理解,我们来看一个简单的去中心化借贷模型:如果A借了B 100块钱,这个时候,A在人群中大喊“我是A,我借给了B 100块钱!”,B也在人群中大喊“我是B,A借给了我100块钱!”,此时路人甲乙丙丁都听到了这些消息,因此所有人都在心中默默记下了“A借给了B100块钱”。你看,这个时候一个去中心化的系统就建立起来了,这个系统中不需要银行,也不需要借贷协议和收据,严格来说,甚至不需要人与人长久的信任关系(比如B突然又改口说“我不欠A钱!”,这个时候人民群众就会站出来说“不对,我的小本本上记录了你某天借了A100块钱!”)。
    0_1509281155859_17966428c5ce9ea9d60aab703b3a405e_hd.jpg 图3:去中心化借贷模型

    可能你已经发现了,在上述的模型中,所谓的“100块钱”已经不重要了。换句话说,任何东西都可以在这个模型中交换,甚至你可以凭空杜撰一个东西,只要大家承认,你就可以让你杜撰的东西流通。比如:我在人群中高喊一声“我创造了10个查克拉!”,我甚至不需要知道查克拉是什么,也不需要关心世界上是不是真的有查克拉,只要大家都听到,然后在自己的小本本上记下“LaiW3n有10个查克拉”,于是我就真的有100个查克拉了。从此以后,我便可以声称我给了某人1个查克拉,只要路人甲乙丙丁都收到并且承认了这一信息,那我就算完成了这次交易,哪怕世界上没有查克拉。

    你现在脑海中是不是浮现出了三个字——“比特币”?由于真正的区块链和比特币比我上述的模型复杂太多,细节也丰富太多.

    本文转自网上,我看了后受益颇多,分享出来给大家,大家觉得好给我点个“赞”。谢谢!



  • 很通俗,受教了!!



  • 顶起来,呵呵...


  • Banned

    66666666666



  • 这个不错,挺好的


Log in to reply
 

Looks like your connection to Asch was lost, please wait while we try to reconnect.