什么是区块链? 区块链的入门介绍,场景应用

  |   0 评论   |   2,080 浏览

原作者:阮一峰
www.ruanyifeng.com/blog/2017/12/blockchain-tutorial.html

区块链(blockchain)是眼下的大热门,新闻媒体大量报道,宣称它将创造未来。

可是,简单易懂的入门文章却很少。区块链到底是什么,有何特别之处,很少有解释。

微信图片20191030115333.jpg

一、区块链的本质

区块链是什么?一句话,它是一种特殊的分布式数据库
2.jpg
首先,区块链的主要作用是储存信息。任何需要保存的信息,都可以写入区块链,也可以从里面读取,所以它是数据库。

其次,任何人都可以架设服务器,加入区块链网络,成为一个节点。区块链的世界里面,没有中心节点,每个节点都是平等的,都保存着整个数据库。你可以向任何一个节点,写入/读取数据,因为所有节点最后都会同步,保证区块链一致。

二、区块链的最大特点

分布式数据库并非新发明,市场上早有此类产品。但是,区块链有一个革命性特点。

**区块链没有管理员,它是彻底无中心的。**其他的数据库都有管理员,但是区块链没有。如果有人想对区块链添加审核,也实现不了,因为它的设计目标就是防止出现居于中心地位的管理当局。

正是因为无法管理,区块链才能做到无法被控制。否则一旦大公司大集团控制了管理权,他们就会控制整个平台,其他使用者就都必须听命于他们了。

但是,没有了管理员,人人都可以往里面写入数据,怎么才能保证数据是可信的呢?被坏人改了怎么办?请接着往下读,这就是区块链奇妙的地方。

三、区块

区块链由一个个区块(block)组成。区块很像数据库的记录,每次写入数据,就是创建一个区块。

3.jpg
每个区块包含两个部分。

  • 区块头(Head):记录当前区块的元信息

  • 区块体(Body):实际数据

区块头包含了当前区块的多项元信息。

  • 生成时间

  • 实际数据(即区块体)的 Hash

  • 上一个区块的 Hash

这里,你需要理解什么叫 Hash,这是理解区块链必需的。
bg2017122704.png

所谓 Hash 就是计算机可以对任意内容,计算出一个长度相同的特征值。区块链的 Hash 长度是256位,这就是说,不管原始内容是什么,最后都会计算出一个256位的二进制数字。而且可以保证,只要原始内容不同,对应的 Hash 一定是不同的。

举例来说,字符串123的 Hash 是a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0(十六进制),转成二进制就是256位,而且只有123能得到这个 Hash。

因此,就有两个重要的推论。

  • 推论1:每个区块的 Hash 都是不一样的,可以通过 Hash 标识区块。

  • 推论2:如果区块的内容变了,它的 Hash 一定会改变。

四、 Hash 的不可修改性

区块与 Hash 是一一对应的,每个区块的 Hash 都是针对”区块头”(Head)计算的。

Hash = SHA256(区块头)

上面就是区块 Hash 的计算公式,Hash 由区块头唯一决定,SHA256是区块链的 Hash 算法。

前面说过,区块头包含很多内容,其中有当前区块体的 Hash(注意是”区块体”的 Hash,而不是整个区块),还有上一个区块的 Hash。这意味着,如果当前区块的内容变了,或者上一个区块的 Hash 变了,一定会引起当前区块的 Hash 改变。

这一点对区块链有重大意义。如果有人修改了一个区块,该区块的 Hash 就变了。为了让后面的区块还能连到它,该人必须同时修改后面所有的区块,否则被改掉的区块就脱离区块链了。由于后面要提到的原因,Hash 的计算很耗时,同时修改多个区块几乎不可能发生,除非有人掌握了全网51%以上的计算能力。

正是通过这种联动机制,区块链保证了自身的可靠性,数据一旦写入,就无法被篡改。这就像历史一样,发生了就是发生了,从此再无法改变。
5.jpg
每个区块都连着上一个区块,这也是”区块链”这个名字的由来。

五、采矿

由于必须保证节点之间的同步,所以新区块的添加速度不能太快。试想一下,你刚刚同步了一个区块,准备基于它生成下一个区块,但这时别的节点又有新区块生成,你不得不放弃做了一半的计算,再次去同步。因为每个区块的后面,只能跟着一个区块,你永远只能在最新区块的后面,生成下一个区块。所以,你别无选择,一听到信号,就必须立刻同步。

所以,区块链的发明者中本聪(这是假名,真实身份至今未知)故意让添加新区块,变得很困难。他的设计是,平均每10分钟,全网才能生成一个新区块,一小时也就六个。

这种产出速度不是通过命令达成的,而是故意设置了海量的计算。也就是说,只有通过极其大量的计算,才能得到当前区块的有效 Hash,从而把新区块添加到区块链。由于计算量太大,所以快不起来。

这个过程就叫做采矿(mining),因为计算有效 Hash 的难度,好比在全世界的沙子里面,找到一粒符合条件的沙子。计算 Hash 的机器就叫做矿机,操作矿机的人就叫做矿工。

六、难度系数

读到这里,你可能会有一个疑问,人们都说采矿很难,可是采矿不就是用计算机算出一个 Hash 吗,这正是计算机的强项啊,怎么会变得很难,迟迟算不出来呢?

原来不是任意一个 Hash 都可以,只有满足条件的 Hash 才会被区块链接受。这个条件特别苛刻,使得绝大部分 Hash 都不满足要求,必须重算。

原来,区块头包含一个难度系数(difficulty),这个值决定了计算 Hash 的难度。举例来说,第100000个区块的难度系数是 14484.16236122。
6.jpg
区块链协议规定,使用一个常量除以难度系数,可以得到目标值(target)。显然,难度系数越大,目标值就越小。
7.jpg

Hash 的有效性跟目标值密切相关,只有小于目标值的 Hash 才是有效的,否则 Hash 无效,必须重算。由于目标值非常小,Hash 小于该值的机会极其渺茫,可能计算10亿次,才算中一次。这就是采矿如此之慢的根本原因。

区块头里面还有一个 Nonce 值,记录了 Hash 重算的次数。第 100000 个区块的 Nonce 值是274148111,即计算了 2.74 亿次,才得到了一个有效的 Hash,该区块才能加入区块链。

七、难度系数的动态调节

就算采矿很难,但也没法保证,正好十分钟产出一个区块,有时一分钟就算出来了,有时几个小时可能也没结果。总体来看,随着硬件设备的提升,以及矿机的数量增长,计算速度一定会越来越快。

为了将产出速率恒定在十分钟,中本聪还设计了难度系数的动态调节机制。他规定,难度系数每两周(2016个区块)调整一次。如果这两周里面,区块的平均生成速度是9分钟,就意味着比法定速度快了10%,因此难度系数就要调高10%;如果平均生成速度是11分钟,就意味着比法定速度慢了10%,因此难度系数就要调低10%。

难度系数越调越高(目标值越来越小),导致了采矿越来越难。

八、区块链的分叉

即使区块链是可靠的,现在还有一个问题没有解决:如果两个人同时向区块链写入数据,也就是说,同时有两个区块加入,因为它们都连着前一个区块,就形成了分叉。这时应该采纳哪一个区块呢?
bg2017122709.png

现在的规则是,新节点总是采用最长的那条区块链。如果区块链有分叉,将看哪个分支在分叉点后面,先达到6个新区块(称为”六次确认”)。按照10分钟一个区块计算,一小时就可以确认。
bg2017122710.png

由于新区块的生成速度由计算能力决定,所以这条规则就是说,拥有大多数计算能力的那条分支,就是正宗的比特链。

九、应用场景

1.信息共享

这应该是区块链最简单的应用场景,就是信息互通有无。

1、传统的信息共享的痛点

要么是统一由一个中心进行信息发布和分发,要么是彼此之间定时批量对账(典型的每天一次),对于有时效性要求的信息共享,难以达到实时共享。

信息共享的双方缺少一种相互信任的通信方式,难以确定收到的信息是否是对方发送的。

2、区块链 + 信息共享

首先,区块链本身就是需要保持各个节点的数据一致性的,可以说是自带信息共享功能;其次,实时的问题通过区块链的P2P技术可以实现;最后,利用区块链的不可篡改和共识机制,可构建其一条安全可靠的信息共享通道。

也行你会有这样的疑问:解决上面的问题,不用区块链技术,我自己建个加密通道也可以搞定啊!但我想说,既然区块链技术能够解决这些问题,并且增加节点非常方便,在你没有已经建好一套安全可靠的信息共享系统之前,为什么不用区块链技术呢?

3、应用案例

举下我们腾讯自己的应用--公益寻人链,借用如下一张好图,可以看到,区块链在信息共享中发挥的价值

2.版权保护

1、传统鉴证证明的痛点

流程复杂:以版权保护为例,现有鉴证证明方式,登记时间长,且费用高。

公信力不足:以法务存证为例,个人或中心化的机构存在篡改数据的可能,公信力难以得到保证。

2、区块链 + 鉴证证明

流程简化:区块链应用到鉴证证明后,无论是登记还是查询都非常方便,无需再奔走于各个部门之间。

安全可靠:区块链的去中心化存储,保证没有一家机构可以任意篡改数据。

3、应用案例

区块链在鉴权证明领域的应用有版权保护、法务存证等,下面以版权保护为例,简单说下如何区块链如何实现版权登记和查询。

(1)电子身份证:将“申请人+发布时间+发布内容”等版权信息加密后上传,版权信息用于唯一区块链ID,相当拥有了一张电子身份证。

(2)时间戳保护:版权信息存储时,是加上时间戳信息的,如右雷同,可用于证明先后。

(3)可靠性保证:区块链的去中心化存储、私钥签名、不可篡改的特性提升了鉴权信息的可靠性。

2016年8月,由Onchain、微软(中国)、法大大等多个机构在北京成立了电子存证区块链联盟“法链”。

2017年12月,微众银行、仲裁委(广州仲裁委)、杭州亦笔科技有限公司共同推出的仲裁联盟链,用于司法场景下的存证;2018年3月,广州首个“仲裁链”判决书出炉。

3.物流链

商品从生产商到消费者手中,需要经历多个环节(流程可能如上图所示),跨境购物则更加复杂;中间环节经常出问题,消费者很容易购买的假货。而假货问题正是困扰着各大商家和平台,至今无解。

1、传统是防伪溯源手段

以一直受假冒伪劣产品困扰的茅台酒的防伪技术为例,2000年起,其酒盖里有一个唯一的RFID标签,可通过手机等设备以NFC方式读出,然后通过茅台的APP进行校验,以此防止伪造产品。 咋一看,这种防伪效果非常可靠。但2016年还是引爆了茅台酒防伪造假,虽然通过NFC方式验证OK,但经茅台专业人士鉴定为假酒。后来,在“国酒茅台防伪溯源系统”数据库审计中发现80万条假的防伪标签记录,系防伪技术公司人员参与伪造;随后,茅台改用安全芯片防伪标签。

但这里暴露出来的痛点并没有解决,即防伪信息掌握在某个中心机构中,有权限的人可以任意修改。(备注:茅台的这种防伪方式,也衍生了旧瓶回收,旧瓶装假酒的产业,防伪道路任重而道远)。

2017年05月贵阳数博会上,小马哥就建议茅台防伪使用区块链;那么区块链和物流链的结合有什么优势呢?

2、区块链+物流链

区块链没有中心化节点,各节点是平等的,掌握单个节点无法实现修改数据;需要掌控足够多的节点,才可能伪造数据,大大提高伪造数据的成本。

区块链天生的开放、透明,使得任何人都可以公开查询,伪造数据被发现的概率大增。

区块链的数据不可篡改性,也保证了已销售出去的产品信息已永久记录,无法通过简单复制防伪信息蒙混过关,实现二次销售。

物流链的所有节点上区块链后,商品从生产商到消费者手里都有迹可循,形成完整链条;商品缺失的环节越多,将暴露出其是伪劣产品概率更大。

3、应用案例

目前,入局物流链的玩家较多,包括腾讯、阿里、京东、沃尔玛等。 据说,阿里的菜鸟在海淘进口应用区块链上,走在了前面,已经初步实现海外商品溯源,国际物流及进口申报溯源、境内物流溯源;下一步就是生产企业溯源了。下图是网上流传的关于阿里的菜鸟在海淘场景运用区块链的示意图。

4.供应链金融

1、传统的供应链单点融资

在一般供应链贸易中,从原材料的采购、加工、组装到销售的各企业间都涉及到资金的支出和收入,而企业的资金支出和收入是有时间差的,这就形成了资金缺口,多数需要进行融资生产
我们再来看看图中各个角色的融资情况:

核心企业或大企业:规模大、信用好,议价能力强,通过先拿货后付款,延长账期将资金压力传导给后续供应商;此外,其融资能力也是最强的。

一级供应商:通过核心企业的债权转让,可以获得银行的融资。

其他供应商(多数是中小微企业):规模小、发展不稳定、信用低,风险高,难以获得银行的贷款;也无法想核心企业一样有很长的账期;一般越小的企业其账期越短,微小企业还需要现金拿货。这样一出一入对比就像是:中小微企业无息借钱给大企业做生意。

2、区块链+供应链金融

面对,上述供应链里的中小微企业融资难问题,主要原因是银行和中小企业之间缺乏一个有效的信任机制。

假如供应链所有节点上链后,通过区块链的私钥签名技术,保证了核心企业等的数据可靠性;而合同、票据等上链,是对资产的数字化,便于流通,实现了价值传递。
如上图所示,在区块链解决了数据可靠性和价值流通后,银行等金融机构面对中小企业的融资,不再是对这个企业进行单独评估;而是站在整个供应链的顶端,通过信任核心企业的付款意愿,对链条上的票据、合同等交易信息进行全方位分析和评估。即借助核心企业的信用实力以及可靠的交易链条,为中小微企业融资背书,实现从单环节融资到全链条融资的跨越,从而缓解中小微企业融资难问题。

3、应用案例

比较成熟的还没看到,目前腾讯也已入局

5.跨境支付

1、传统跨境支付
跨境支付涉及多种币种,存在汇率问题,传统跨境支付非常依赖于第三方机构,大致的简化模型如上图所示,存在着两个问题;

流程繁琐,结算周期长:传统跨境支付基本都是非实时的,银行日终进行交易的批量处理,通常一笔交易需要24小时以上才能完成;某些银行的跨境支付看起来是实时的,但实际上,是收款银行基于汇款银行的信用做了一定额度的垫付,在日终再进行资金清算和对账,业务处理速度慢。

手续费高:传统跨境支付模式存在大量人工对账操作,加之依赖第三方机构,导致手续费居高不下,麦肯锡《2016全球支付》报告数据显示,通过代理行模式完成一笔跨境支付的平均成本在25美元到35美元之间。

2、区块链+跨境支付

这些问题的存在,很大原因还是信息不对称,没有建立有效的信任机制。
区块链的引入,解决了跨境支付信息不对称的问题,并建立起一定程度的信任机制;带来了两个好处。

效率提高,费用降低:接入区块链技术后,通过公私钥技术,保证数据的可靠性,再通过加密技术和去中心,达到数据不可篡改的目的,最后,通过P2P技术,实现点对点的结算;去除了传统中心转发,提高了效率,降低了成本(也展望了普及跨境小额支付的可能性)。

可追溯,符合监管需求:传统的点对点结算不能不规模应用,除了信任问题,还有就是存在监管漏洞(点对点私下交易,存在洗黑钱的风险),而区块链的交易透明,信息公开,交易记录永久保存实现了可追溯,符合监管的需求。

3、应用案例

应用现状:Ripple、Circle、招商银行等已经入局

6.资产数字化

1、实体资产存在的问题

实体资产往往难以分割,不便于流通

实体资产的流通难以监控,存在洗黑钱等风险

2、区块链实现资产数字化

资产数字化后,易于分割、流通方便,交易成本低

用区块链技术实现资产数字化后,所有资产交易记录公开、透明、永久存储、可追溯,完全符合监管需求

3、应用案例

还是以腾讯的微黄金应用为例,继续借用腾讯区块链官网(trustsql.qq.com)上的图片,可以看到,在资产数字化之后,流通更为方便了,不再依赖于发行机构;且购买0.001g黄金成为了可能,降低了参与门槛。

7.代币

本来不像把代币加进来的,但说到区块链,始终绕不开代币;因区块链脱胎于比特币,天生具有代币的属性,目前区块链最成功的应用也正是比特币。

1、传统货币存在的问题

传统的货币发行权掌握在国家手中,存在着货币滥发的风险

元朝自1271年建立后,依然四处征战,消耗大量的钱财和粮食,为了财政问题,长期滥发货币,造成严重通货膨胀,多数百姓生活在水生火热中,导致流民四起,国家大乱,1368年,不可一世的元朝成了只有97年短命鬼,走向了灭亡。

1980年津巴布韦独立,后因土改失败,经济崩溃,政府入不敷出,开始印钞;2001年时100津巴布韦币可兑换约1美元;2009年1月,津央行发行100万亿面值新津元(如下图)加速货币崩溃,最终津元被废弃,改用“美元化”货币政策。2017年津巴布韦发生政变,总统穆加贝被赶下台。
传统的记账权掌握在一个中心化的中介机构手中,存在中介系统瘫痪、中介违约、中介欺瞒、甚至是中介耍赖等风险。

2013年3月,塞浦路斯为获得救助,对银行储户进行一次性征税约58亿欧元, 向不低于10万欧元的存款一次性征税9.9%,向低于10万欧元的一次性征税6.75%。

2017年4月,民生银行30亿假理财事件暴露,系一支行行长伪造保本保息理财产品所致,超过150名投资者被套。

2、区块链如何解决这些问题
比特币解决了货币在发行和记账环节的信任问题,我们来看下比特币是如何一一破解上面的两个问题。

滥发问题:比特币的获取只能通过挖矿获得,且比特币总量为2100万个,在发行环节解决了货币滥发的问题; 账本修改问题:比特币的交易记录通过链式存储和去中心化的全球节点构成网络来解决账本修改问题。

链式存储可以简单理解为:存储记录的块是一块连着一块的,形成一个链条;除第一个块的所有区块都的记录包含了前一区块的校验信息,改变任一区块的信息,都将导致后续区块校验出错。因为这种关联性,中间也无法插入其他块,所以修改已有记录是困难的。

而去中心化节点可以简单理解为:全球的中心节点都是平等的,都拥有一模一样的账本,所以,任一节点出问题都不影响账本记录。而要修改账本,必须修改超过全球一半的节点才能完成;而这在目前看来几乎不可能。 既然账本无法修改,那要是记账的时候作弊呢? 首先,比特币的每条交易记录是有私钥签名的,别人伪造不了这个记录。你能修改的仅仅自己发起的交易记录。

其次,是关于记账权问题:比特币的记账权,通过工作量证明获得,可以简单理解为:通过算法确定同一时刻,全球只有一个节点获得了记账权,基本规律是谁拥有的计算资源越多,谁获得记账权的概率越大,只有超过全网一半的算力,才可能实现双花。

备注:比特币的模式是不可复制的,比特币已经吸引了全球绝大多数的算力,从而降低51%攻击发生等问题;其他的复制品基本无法获得相应的算力保证。

目前,比特币还存在着51%和效率低等问题有待解决,另外,关于交易本身的信任问题是个社会问题,比特币是没有解决的,也解决不了的。

3、应用案例

最具代表性的当然是比特币,也不用多说了。

备注:代币这块真的不看好,比特币目前吸引了全球绝大部分的算力,有独一无二的算力资源作为支撑还稍好一点,其他的代币和传统的货币相比,其背后缺乏国家和武力为其做信用背书,且夺取了国家发币带来的各种好处(如宏观调控),仔细想想就知道有多不靠谱。


标题:什么是区块链? 区块链的入门介绍,场景应用
作者:jackssybin
地址:https://jackssybin.cn/articles/2019/10/30/1572418772115.html

评论

发表评论


取消