关于区块链你想知道的都在这里
时间: 2024-08-06 作者: 产品新闻
2019年,随着比特币价格攀升到将近2W美金/枚,各国人民在整个世界范围内掀起了一股炒币热潮,区块链、比特币、挖矿、BSN,这些关于区块链技术的词汇一时间火遍全球。那么区块链到底是什么?比特币是像人民币一样的货币么?中国移动在区块链技术大潮中,又扮演了什么角色?带着这样一些问题,我们来聊聊区块链的今生前世。
人们总说“历史总是惊人的相似”,在聊区块链之前我们先回顾一下历史,其实区块链解决的问题在历史上已经演绎过了:
历史上的拜占庭帝国,位于如今土耳其的伊斯坦布尔,是东罗马帝国的首都。战争时期,拜占庭的军队分散开来围攻敌军的城市(如下图),各队伍的将军们必须达成一致的共识,决定什么时间攻城,只有一半以上的军队同时发起进攻,才可以获得胜利。问题是:(1)这些将军在地理上是分隔开来的,将军与将军之间只能靠信差传消息;(2)军中存在间谍,间谍可以欺骗某些将军采取跟共识不一致的行动。如果叛徒达到了这一目的,则任何攻击行动都是注定要失败的,所以,拜占庭将军问题本质是共识互信问题。
“拜占庭将军问题”延伸到互联网生活中来,其内涵可概括为:在互联网大背景下,当需要与不熟悉的对方进行价值交换活动时,人们如何防止被欺骗。进一步延伸到技术领域中来,其内涵可概括为:在缺少可信任的中央节点和可信任的通道的情况下,分布在网络中的各个节点应如何达成共识。
区块链,是指通过去中心化(或多中心)和去信任的方式集体维护一个分布式可信数据库的技术方案。参与该系统中的任意多个节点,把一段时间系统内信息交流的数据,通过密码学算法处理和记录到一个数据块,并且生成该数据块的指纹用于链接下个数据块和校验,系统所有参与节点来共同认定记录的真伪。
区块链是一种类似于非关系型数据库的技术解决方案统称,并不是某种特定技术,开发的人能通过多种程序语言和架构来实现区块链技术。
“中央政治局2019年10月24日下午就区块链技术发展现状和趋势做第十八次集体学习。中央在主持学习时强调,区块链技术的集成应用在新的技术革新和产业变革中起着及其重要的作用。我们要把区块链作为核心技术自主创新的重要突破口,明确主攻方向,加大投入力度,着力攻克一批关键核心技术,加快推进区块链技术和产业创新发展。”
①在众多前沿科技中,我国在5G和区块链领域同其他几个国家处在同一个起跑线上,共同制定行业标准和技术指标,壁垒较少;
②区块链技术是基于互联网的,中国的互联网普及率和基础设施比较领先,为区块链发展提供了良好的基础;
③区块链技术未来会大范围的应用在几乎所有信息化业务系统中,通过全力发展区块链,真正靠创新来建设中国主导的世界级的基础设施、技术标准和应用。
目前全世界公有链的应用全部都是虚拟币(如:比特币),无一例外,可默认公有链虚拟币。在中国,虚拟币不符合金融监督管理要求(即使是无币公有链也不符合),公有链中国主要发展追踪技术,协助发现犯罪记录。
对所有人开放,所有交易透明可追溯,任何人都能加入并匿名发布信息,匿名、去中心化等都是公有链的特点
应用:比特币、以太坊等虚拟数字货币;每秒3-30次数据写入,效率偏低,除少数金融业务外,公有链很难在企业级需求上进行应用,因为:公有链用户众多,效率低下;(举例:搜索一个比特币,返回结果需要至少20分钟,不足以满足企业业务响应需求)一旦应用到企业上,内部运转逻辑就很难调整,不符合企业灵活多变的商业环境。
使用范围限于一个公司范围类数据,访问受限,提供更好的隐私保护
①共享账本:可以在多个站点、不同地理位置或者多个机构组成的网络里进行分享的数据库,区块链网络中每个节点都有相同的账本;
②隐私安全:加密算法、哈希算法、非对称加密算法、P2P通信网络、高冗余存储等;
⑤共识机制主要有四种:比特币使用POW,以太坊使用POS,比特股使用DPOS,验证池(后续介绍公有链的板块中,会有详细的共识机制介绍)。
每个节点把该笔交易收集到一个区块中,将账户地址、交易信息等进行hash打包,同时遍历hash值(详见PoW / PoS机制);
当某节点得出的hash与系统要求匹配时,该节点将获得这一轮的记账权,并将它生成的区块广播到所有节点;
全网节点对该hash和区块内容做验证,当该区块包含的交易验证有效后,所有节点接受该区块;
节点开始创建新区块,并将刚刚接受区块的哈希散列添加进去,形成链。
针对以上过程,大家肯定有很多很多的疑问,看不懂不要紧,下面我们将为大家一一解答。
Q1:交易数据来进行hash打包需要消耗计算机资源,各节点为什么还要参与记账?
在比特币系统里,抢到记账权的节点获得发布新区块的权力,同时获得系统提供的比特币奖励,这个奖励其实就等于比特币的发行过程。
Hash算法的特点:在给定算法的情况下,从明文很容易算出hash值,反之几乎不可能从hash算出明文。
计算机生成一个随机变量(明文)计算出一个hash值,通过不断生成随机变量,获得不同的hash,不停地尝试直到产生的hash值满足“以n个0开头”的条件。
现在的电脑要得到一个四个0开头的hash值,常常要一两分钟的时间,由于现在参与挖矿的计算机非常多,算力很大,所以现在的挖矿难度,是以18个0开头,率先满足这个条件的节点,就可以表明该节点为网络提供了巨大的算力,获得唯一的记账权。
大家进行算力竞赛,设置一个计算hash的难题,谁先算出来谁赢,算力高的节点赢的概率更高,以这样的方式保证胜出者是随机的,且获胜节点确实提供了大量算力。投入的算力能体现在哈希值上,恶意节点只可以通过提高个人的算力来增加攻击成功的概率。
选举,大家不用浪费电力去进行算力竞赛,按照每个用户持有货币的多少和时间(币龄),以发放利息的方案来“选举”产生记账节点。
恶意节点只可以通过增加自己的份额,增加自己被选中的概率,从而增加双花攻击的成功概率。要实现攻击,先得成为持币大户,如果攻击成功币价大跌,攻击者也会承受最大的损失,从机制层面绑定攻击者的利益,降低系统受攻击风险。
在比特币区块链中,所有参与节点输出算力遍历hash值的过程,通常被称为“挖矿”。(输出算力越大,获得比特币奖励的概率越大)各参与节点在遍历hash的过程中也在不断地验证其他节点的交易信息,为区块链网络的运行贡献算力。
机制本身很复杂,比如:挖矿难度自动调整、区块奖励逐步减半等,这一些因素都是基于经济学原理,能吸引和鼓励更多人参与;
越先参与越容易获得比特币奖励,会促使密码货币的初始阶段发展迅速,节点网络迅速扩大;
通过“挖矿”的方式发行新币,把比特币分散给个人,实现了相对公平。
算力是计算机硬件(Cpu、Gpu等)提供的,要耗费大量电力,与人类追求节能、清洁、环保的理念相悖。不过,如果非要给“密码货币”找寻“货币价值”的意义,那么这一个方面,应该是最有力的证据;
时至今日,算力的提供已不再是单纯的CPU了,而是慢慢地发展到GPU、FPGA,乃至ASIC矿机。用户也从个人挖矿发展到大的矿池、矿场,算力集中越来越明显。这与去中心化的方向背道而驰,渐行渐远,网络的安全逐渐受到威胁。有证据证明Ghash(一个矿池)就曾经对赌博网站实施了双花攻击(一笔钱花两次);
比特币奖励每隔4年产量减半,当挖矿的成本高于收益时,矿工的积极性降低,会有大量算力退出,比特币网络的安全性进一步堪忧。
更去中心化。PoS机制的加密货币对计算机硬件基本上没有过高要求,人人可挖矿(获得利息),不需要过多的担心算力集中导致中心化的出现(单用户通过购买获得51%的货币量,成本更高),网络更安全有保障;
避免紧缩。PoW机制的加密货币,因为用户丢失等种种原因,可能会引起通货紧缩,但是PoS机制的加密货币按一定的年利率新增货币,可以有很大成效避免紧缩出现,保持基本稳定。
纯PoS机制的加密货币,轻易造成“少数人”(通常是开发者)获得大量成本极低的加密货币,在利益面前,很难保证他们不会大量抛售;
PoS机制的信用基础不够牢固。为解决这一个问题,很多采用PoW+PoS的双重机制,通过PoW挖矿发行密码货币,使用PoS维护网络稳定。或者采用DPoS机制,通过社区选举的方式,增强信任。
以中国为例。我国是外汇管制国家,比特币的网络匿名交易可以完美绕开央行的外汇防线,使得外汇管制这一政策形同虚设;并且比特币为国内强监管地带的洗钱交易提供极大的便利,极大的威胁了我国央行外汇政策和监管政策;随着我们国家加入SDR后,我国人民币国际化战略开始全力推进,人民币国际化本质是一个区域中心化货币战略,而比特币的去中心化的这一特点,和我国的人民币国际化战略正好背道而驰,这种强烈货币属性的碰撞,使得我国央行权衡再三后不得不对比特币采取“极刑”。另外,对于世界上绝大多数国家而言,货币的印制和发行普遍被掌握在国家手里,这被称为铸币权。在宏观经济中,有一个概念叫做“铸币税(Seigniorage Revenue)”,即:货币铸造成本低于其面值而产生的差额。在纸币时代,政府印制钞票的成本几乎能忽略不计,同时政府拥有印制货币的垄断权,因此能轻松的获得全部的铸币税。
以美国政府为例。在过去十年中,美联储每年超印了千亿级美元的货币供给,用几乎毫无印刷成本的美元,换取了大量了资产、商品和服务。要想让政府放弃这笔收入,和比特币这样的虚拟货币“分一杯羹”,这简直让人不可想象。事实上,任何政府都没理由让这样的情形发生。
分叉问题:同一时间段内全网不止一个节点能计算出满足规定的要求的hash,即会有多个节点在网络中广播它们各自打包好的临时区块(都是合法的)。
若收到多个针对同一前续区块的临时区块,则该节点会在本地区块链上建立分支,多个临时区块对应多个分支。该僵局的打破要等到下一个hash被发现,而其中的一条链条被证实为是较长的一条,那么在另一条分支链上工作的节点将转换阵营,开始在较长的链条上工作,其他分支将会被网络彻底抛弃。
解决方案:每当节点在把新收到的交易单加入区块之前,会顺着交易的发起方的公钥向前遍历检查,直到该币的最初诞生点(即产生它的那块区块源)。由于每笔交易单被加入区块时必定按时间呈现一定的顺序。区块之间以Hash值作为时间戳,这决定了任意一笔交易资产金额来源都可以被确定的回溯。
①比特币总量:2100万个。区块链诞生之初,每10分钟产生一个区块,每个区块奖励50枚比特币,之后每隔4年减半,目前每一个区块奖励6.25枚比特币;基于上述机制,比特币前4年一共产生1050万个比特币,第二个4年产生525万枚,依次往后,算出比特币的总数量为2100万个。
②比特币网络平均每十分钟打包一个区块,每个区块上限为1M,如果这个区块被填满,该时段内的多出来的交易信息只能等下一个区块。由于交易频率不固定,所以比特币的区块大小不同。
交易手续费收入:手续费收入来自转账的用户,用户每转账一次,需支付一定的比特币作为手续费。传统金融领域,手续费支付给银行,比特币系统中,手续费支付给矿工;
比特币网络手续费能自行设置,拥堵时可上调手续费,矿工会优先打包手续费高的交易。
私有链:由个人或组织经营、管理和控制的许可链,可理解为私有化部署的联盟链。
联盟链:通过点对点传输和加密技术的共享记账法架构,可以服务工业和企业级应用,可以对传统信息化系统来进行优化,本质是一个实时的共享数据库。
联盟链一般适用于多方合作的共享业务,如果一个企业的业务仅对内(不对外),那么区块链实质上对此公司就没有太大意义。
※ 彩蛋:使用区块链技术的是信息化应用系统,C端用户基本是无感知的。如同云服务和互联网后台一样,区块链服务网络的直接用户就是技术公司和开发者;互联网诞生的历史背景:冷战期间,美国为避免数据被拦截,希望能够通过P2P的形式将数据传输给对端,由此诞生了网络技术。互联网发展至今已完成且远超了历史赋予的使命。
通过TCP/IP协议将所有数据中心连接起来而形成。区块链服务网络BSN:通过区块链运行环境协议将所有数据中心连接起来形成(BSN类似互联网,是一个无主的支持多门户的基础设施)。
对接成本高:各系统的数据库是自定义的,数据和结构存在差异,两两数据系统都要进行接口开发,定制化程度高,无法应用在别的业务线上;
对账成本高:1不能直接把数据给4,4也没办法保证2和3不进行违规操作,中间出现大量对账要求,成本高且存在造假风险。
①共享账本:联盟链的共享账本有一个统一格式的数据库,数据标准各系统保持一致;
②数据可靠性:共享账本不允许删除和篡改历史记录,用户都能够在获得所有节点授权的情况下修改数据,但是改动会被记录下来,任何发生的变更,参与该业务的所有节点都可以知道;
②减少接口成本:无需开发定制化接口,所有系统使用同一套数据库和数据结构;
④提升容错能力:在并联关系中,即使多系统宕机,只要剩下的一个在链上仍可发生交互,链上的业务就不会停止。等宕机系统恢复了以后,系统将自动同步数据,不会出现账本的错误,系统可靠性极大增强;
⑤便于数据获取:数据实时在各方之间同步,任意一方获取数据无需等待,也无需征得其他方的主观同意;
⑦扩大监管范围:在系统中设立一个监管节点即可监管所有参与该系统的所有节点。
区块链体系类似成语接龙游戏,即后一个词的第一个字,是上一个词的末尾字。对应到区块链中,如下:
后一个区块的区块头沿用的前一个区块计算出的结果(跟内容、时间戳、hash计算挂钩),一旦修改A区块内容,A生成的区块头就会变化,很容易从B的区块头发现,A有过修改记录;
所以为了达到篡改目的,必须对A区块及后面所有区块都进行重新计算,为了能够更好的保证造假的可信度,还需要保持B的hash与A的原hash一致,基于hash几乎不可逆向计算的特点,对后续区块的修改几乎不可能完成。
一个区块链/联盟链系统中,至少有3-4个节点,每个节点保有一份账本副本,其中一个节点修改账本是无效的,会立即被其他节点识别并发现修改记录;除非所有节点都同意并确认修改,这样的做法一般是官方层面的行为。即便这么做,也会在时间戳、hash等相关信息上留下记录。
分析:联盟链的每个应用和每条链是完全独立的环境,参与的每一方都要建立单独的运营环境,都要买服务器或者云资源。如果1个公司参加10个联盟链应用,原则上是需要买10次云服务的,而且其中99%的云服务资源是闲置的。最后,大家是在高投资的情况下,浪费着资源。因此,当前联盟链技术发展遇到了一定的阻碍。
问题汇总:①成链成本高昂:2019年中国只有阿里、腾讯、华为能提供区块链云服务,最低配置的4点系统环链,需要10W/年;区块链架构师、技术人才紧缺;②底层平台异构:部分系统开发使用的操作系统不一样,导致没办法互通;③系统资源闲置:同一家公司参与多个联盟链应用的时候,不同应用之间的资源不能共享共用,导致大量资源重复建设、闲置,造成浪费;④有效监管困难:不同系统在不同云资源环境下运行,难以进行相对有效监管。
※ 彩蛋:92-93年搭建一个网站成本约100W美金,90年代末,同样的一个网站成本几乎为0,开网站成本的极大降低才有了后来互联网的爆发式发展。现在搭一条联盟链,类似一个局域网。互联网早期,大家也都是搭建局域网,两个局域网之间想发一封信息需要开通互联网专线年代拉一根专线万美金。所以,只有把成本降到最低,一个技术才能蒸蒸日上。区块链服务网络从设计、建设、运营都是在持续减少相关成本。只有搭建公共服务区块链网络,才能在应用阶段降低系统组建成本,推广架构的使用。
作为一家技术底蕴雄厚,承担着国家公共服务职能的公司,中国移动公司在区块链大潮中扮演的什么角色呢?
区块链服务网络BSN(Blockchain-based Service Network):由各方所有的云资源,安装了城市节点软件连在一起而形成的,旨在提供一个可以低成本开发、部署、运维、互通和监管联盟链应用的公共基础设施网络。区块链应用开发者不需要再购买物理服务器或者云服务来搭建自己的区块链运行环境,而是使用BSN提供的公共服务,按需租用共享资源。
类比:住户用水场景。阿里、腾讯等厂家主推区块链云服务,即给客户打水井,按照每个用户需求来调整井的直径和深度(云资源),进而调整供水量。中国移动主推BSN则是建一个自来水厂,用户按需打开水龙头,这样做便于公共资源管理,降低用水成本,保障运行环境的稳定可靠。问题就在于前期投入巨大,随着用户数量上升,单个用户的成本会极大降低。
由国家信息中心牵头,会同中国移动、中国银联等单位联合建立。BSN是基于区块链技术和共识机制的全球性基础设施网络,是面向工业、企业、政府应用的可信、可控、可扩展的联盟链,致力于改变联盟链应用的局域网架构高成本问题,以互联网理念为开发者提供公共区块链资源环境,极大降低区块链应用的开发、部署、运维、互通和监管成本,从而使区块链技术获得快速普及和发展。
①部署在每个城市的公共区块链环境系统,整个BSN主要由城市节点连接而成;
②区块链应用部署在发布者选择的N个城市节点内(当前超过60个节点,数据交互效率就会降低,后续随着算法和技术的进步,支持的节点数量会得到提升);
③记账节点是一个数据库,外面有自己的业务系统,业务系统通过网关与链上数据交互;
④城市节点主要部署的业务系统:智能网关、权限链、底层多框架、共识机制、基础能力、负载均衡等;
⑤记账节点+排序节点组合,开发者不需要自行搭建记账节点或关注共识排序机制,直接在BSN上选择所需的资源和发布应用,BSN会根据应用的TPS分配资源。
概念:联盟链应用的数据处理中枢,在服务网络内为所有应用提供共识排序服务的公共系统,对并发数和数据处理效率有很高要求。
三种类型的集群架构:在研发测试阶段用的单一中心化集群,使用的Kafka技术;城市节点达到50~100个时,根据城市节点数和应用数,采取并行中心化集群,由多个Kafka并联支持不同的应用和不同的城市节点;商用后使用分布式城市节点集群,采用ROFT技术将每一个排序集群部署到每一个城市节点上,从效率和公网资源占用上,表现都非常好。
门户网站已经正式上线并开启内测,与其他云服务一样,开发的人能选用资源和设置自己的应用权限。
门户提供的服务:开发者购买资源部署应用、应用商店、应用运行监控、各类语言SDK、预置链码商店、联盟链/私有链管理、技术上的支持、帮助手册、学习实例。
服务网络是大量物理分散的云资源和数据中心,所以资源调配、节点运营、节点记账、集群的重新分配和数据的迁移(区块链的数据迁移很复杂),都需要基础能力管理的核心功能;核心系统全部开源,不仅是六家发起方去经营和部署,而是整个社会的所有云资源和技术公司都加入进来。
BSN施行多底层框架策略,中国移动支持目前国内大多数主流联盟链框架,目前已经适配或正在适配中的框架见上图。
适配:不同系统底层之间建立一套协议,不同的操作系统经过授权能轻松实现互联互通。
和区块链云服务的经营理念不同,云服务作为一种商业资源,是基于客户的需求提供IaaS、PaaS、SaaS、开发组件等层面的服务,并按需收取费用。
BSN的理念是要搭建类似互联网的公共服务网络,无偿提供、开源的城市节点软件,优化开发/部署/运维的灵活性,优化网络效率,降低开发者使用成本,让更多的开发者参与进来,提供更多应用创新,把区块链技术发展起来。
无主:由各方所有的云资源,安装了城市节点软件串在一起而形成的网络,跟互联网一样,BSN不属于任何人;
开放:任何拥有闲置云资源和IDC机房资源的企业和事业单位都能申请加入;
共赢:降低开发者的使用成本,帮云厂商盘活闲置的云资源,多方获利。
大幅降低了区块链开发、部署、运维、互通和监管成本,促进区块链技术快速发展;
在全球部署,是一张中国拥有自主知识产权、中国控制入网权的全球化服务网络;
当前全球各国对区块链技术的发展趋势各有论调,但是总体态度都是积极拥抱新技术,主动探索应用前景。其中走的比较靠前的为中、美、欧。中国鼓励区块链进行科学技术创新,央行牵头互联网金融协会,开展针对区块链的研究和试用;美国主要是巨头企业布局,但是政府政策不明晰对其影响相对来说比较大;欧洲各国在积极探索区块链应用,如瑞士用区块链管理土地所有权、爱沙尼亚用区块链辅助收税系统和商业注册系统、英国希望借助区块链提升公共服务效率等。
区块链的发展,第一阶段是以公有链为主的数字货币阶段。当下正处于以联盟链架构为技术主体的第二阶段,主要是通过智能合约,在金融、医疗、政务、冷链等多个应用场景下实现价值信号传递。未来,区块链会促进成长为数字化的经济基础设施,并同云计算、大数据、人工智能等新兴技术交叉演进,重构数字化的经济发展生态,促进价值互联网与实体经济的深层次地融合,为全球经济发展注入新的动力。