4月20日,国家发改委首次明确了“新基建”的具体范围,其中,区块链与人工智能、云计算等被列为信息基础设施的代表。作为新技术基础设施,区块链是什么,又将为产业经济带来哪些全新加持呢?
区块链借助密码学、共识算法和分布式存储等技术,能够促成新的信任机制,有助于“数据”生产要素更合理地流动和配置。同时,随着产业互联网加速推进,安全、高效的数字化万物互联与多方协作,将越来越成为社会经济生产的重要诉求。因此,区块链技术作为新型信息协作底层技术,将能与5G、AI等新一代基础信息技术为未来生活生产带来全新突破和助力。
早在2015年,腾讯就已经开始进行区块链领域的研究和探索,并逐步构建了从底层引擎到上层应用的全业务产品能力。基于腾讯云在区块链方面的最佳实践,本文将从技术方向阐述区块链的原理、作用,并介绍腾讯云在区块链技术与应用方面的积累,帮助读者形成对区块链新基建的直观认识。
区块链的定义
“区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础。”具体来讲,区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术在互联网时代的一种融合创新应用模式。
图1 区块链结构图
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本。
广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。通过加密算法、共识机制、时间戳、智能合约等技术手段,在分布式系统中实现点对点交易、协调和协作,从而解决中心化机构存在的数据安全,协同效率和风险控制等问题。
区块链核心技术
区块链的四大核心技术包括分布式存储、共识机制、智能合约及密码学技术。
1、分布式存储
区块链中的分布式存储是参与的节点各自都有独立的、完整的数据存储。跟传统的分布式存储有所不同,区块链的分布式存储的独特性主要体现在两个方面:一是区块链每个节点都按照块链式结构存储完整的数据,传统分布式存储一般是将数据按照一定的规则分成多份进行存储。二是区块链每个节点存储都是独立的、地位等同的,依靠共识机制保证存储的一致性,而传统分布式存储一般是通过中心节点往其他备份节点同步数据。数据节点可以是不同的物理机器,也可以是云端不同的实例。
2、共识机制
所谓共识,是指多方参与的节点在预设规则下,通过多个节点交互对某些数据、行为或流程达成一致的过程。共识机制是指定义共识过程的算法、协议和规则。区块链的共识机制具备“少数服从多数”以及“人人平等”的特点,其中“少数服从多数”并不完全指节点个数,也可以是计算能力、股权数或者其他的计算机可以比较的特征量。“人人平等”是当节点满足条件时,所有节点都有权优先提出共识结果、直接被其他节点认同后并最后有可能成为最终共识结果。
3、智能合约
智能合约是一种旨在以信息化方式传播、验证或执行合同的计算机协议。基于区块链的智能合约包括事件处理和保存的机制,以及一个完备的状态机,用于接受和处理各种智能合约,数据的状态处理在合约中完成。事件信息传入智能合约后,触发智能合约进行状态机判断。如果自动状态机中某个或某几个动作的触发条件满足,则由状态机根据预设信息选择合约动作的自动执行。因此,智能合约作为一种计算机技术,不仅能够有效地对信息进行处理,而且能够保证合约双方在不必引入第三方权威机构的条件下,强制履行合约,避免了违约行为的出现,这些交易可追踪且不可逆转。
4、密码学技术
在区块链中,信息的传播按照公钥、私钥这种非对称数字加密技术实现交易双方的互相信任。在具体实现过程中,通过公、私密钥对中的一个密钥对信息加密后,只有用另一个密钥才能解开的过程。并且将其中一个秘钥公开后(即为公开的公钥),根据公开的公钥无法测算出另一个不公开的密钥(即为私钥)。
区块链的作用
区块链在新基建中是作为信任构建的基石,是新基建构建底层数据可信共享的基础,有了数据的可信共享才能实现技术面应用的价值最大化,才能更好的发挥区块链在促进数据共享、优化业务流程、降低运营成本、提升协同效率、建设可信体系等方面的作用,才能更好的助力区块链技术和产业创新发展,积极推进区块链和经济社会融合发展,而这些都源于区块链真实可信的数据传递为基础。区块链在新基建中主要能发挥以下三个作用:
1、可信存证
区块链可以链接多方主体,高效展示所有信息,解决“证据存证”难题。比如在版权保护方面,区块链打通原创平台、版权局、司法机关等各方主体,提供各类电子证据存证,可以快速地辨别原创作者,有效解决版权纠纷问题;比如在溯源方面,以疫苗为例,区块链链接加工厂、物流系统、售卖方、消费者,记录了疫苗制作、加工、运输、售卖、注射的全过程,患者可以通过了解疫苗所有信息,在确保疫苗安全后,再接受注射;又比如在投票方面,将投票数据上链,每个参与者投给了谁、投了多少票的数据都是公开透明的,并且无法被篡改,避免不合规的暗箱操作,保障公平公正。
2、信息共享
区块链分布式网络的特点,可以打通不同主体之间的数据壁垒,实现信息和数据共享。数据不会仅仅存在于某一个主体手中,而是所有人都可以看到,不用重复向多个主体汇报情况。比如,区块链+房地产,把房产信息上链,链上数据多方共享可见,那么我们只需要去一次银行,就可以实现贷款和产权过户;区块链+户籍管理,把公民户籍信息隐私加密上链,那么我们只需要在一个城市办理了户口转入,转出城市户籍所在地就会看到我们的户口转出信息,而不需要我们回户籍转出地告知相关信息。可以预想到,区块链+电子政务将会极大提高我们的办事效率,再也不需要多个部门重复进行业务办理。
3、高效协作
在日益全球化的今天,多方协同工作已成为工作常态。但由于涉及多国监管政策、贸易环境、语言障碍等因素影响,协作效率无法得到快速提高。区块链构建的多方参与的网络,可以跨越不同的主体,在促进数据共享、优化业务流程、降低运营成本、提升协同效率等方面发挥重要作用,可以很好的解决协作问题。
总结来讲,区块链应用的显着优势在于以下四个方面:
①优化业务流程、提高效率,增加了信息共享的效率,交易时间从天降到近乎瞬时;
②降低运营成本,通过去除中间环节,减少了间接费用和中介成本;
③提升协同效率,降低风险,数据多方共享,打破数据孤岛,有效提升整体协同,也能有效防止篡改,预防欺诈与网络犯罪;
④增加信任:通过共享的业务流程和账簿,增加参与方之间的信任。这些优势已经在很多领域逐步显现出来。
腾讯云区块链
图2 腾讯云区块链产品全景图
腾讯云区块链是腾讯研发的完整区块链系统,提供全方位、自主可控、安全高效的区块链底层引擎支持和服务解决方案,持续保持核心前沿技术突破,并为行业提供最好用的区块链服务产品。
1、腾讯云区块链服务平台TBaaS
首先看腾讯云区块链服务解决方案——TBaaS平台。
腾讯云区块链服务平台(TBaaS,Tencent Blockchain as a Service),是腾讯云为全行业客户提供的一站式区块链解决方案,致力于降低企业使用区块链的门槛,把区块链服务平台化。与此同时,腾讯云TBaaS积极探索“区块链+”的解决方案,总结区块链技术能够最先触及到的传统行业应用,并且总结为可复制的解决方案,通过TBaaS服务帮助企业第一时间实现并且落地相应场景,解决实际问题,加速区块链应用落地。
接下来将介绍TBaaS的核心特性和设计原理。
图3 腾讯云区块链服务平台
TBaaS功能架构图
1)简明易用,快速上手
由于区块链技术融合了自70年代以来的众多的密码学、分布式网络、数据库、共识算法等技术成果,众多的新名词新术语对于从业多年的信息技术人才来说依然有着比较高的术门槛,对于还未能来得及进行数字化转型的传统企业更是需要时间来掌握和评估。
区块链本身诞生自比特币,随后产生了众多的用于虚拟货币流转的区块链项目,但这些项目大多数仅设计用于其自身的币币交易场景,而非更大的企业间协作,对于众多想要真正认识和理解区块链的企业和个人来说,兼具准入能力、可管理性、可定制性、高性能的联盟区块链项目才是更加理想的选择。
在这样的背景之下由Linux 基金会托管的Hyperledger Fabric 凭借出众的模块化设计、可编程共识、高度的扩展性、对数字证书灵活使用,成为当前市面上最为成熟且使用最为广泛的企业级联盟链项目。
图4 五步上手区块链
腾讯云区块链服务平台充分考虑到上述区块链的技术门槛,并且与Linux基金会达成合作,引入并集成了Hyperledger Fabric项目,抽象概念,简化操作,精心设计入门步骤和区块链浏览器,帮助企业在较短的时间内快速上手和理解当前主流的区块链技术。
2)实现联盟协作治理
联盟链作为一个包含了私有链的通用设计,核心要点在于参与方准入与多方共同治理,腾讯云区块链服务平台充分考虑到了联盟链使用过程中的多方治理动作,采用可以充分灵活的处理框架,无论是新成员准入,还是现有区块链系统的运行参数变更,都需要达成治理动作上的共识,并完成必要提案的签名,最终将达成一致的提案上链交给系统级智能合约处理,应用到整个区块链网络中。
图5 多方共同治理
体现在控制台中,一个典型的联盟链系统需要具备治理平面和数据平面,治理平面用于管理区块链,数据平面用于承载业务数据,同时保证链上数据达成高效共识、不被篡改。基于上述思路,腾讯云区块链平台完成了“联盟-网络-链”三层抽象,并实现了分级准入,自定义准入条件。
图6 治理平面和数据平台
3)金融级安全合规
作为一个率先应用于金融场景的新型基础设施,区块链本身的安全性备受关注,不同于匿名化的公有链,联盟链要实现准入安全必须首先完成对参与者的身份识别,这通常依赖于成熟的个人与企业实名认证解决方案。在联盟链中数字证书的大量使用使得技术本身必须符合现有的金融安全标准规范,腾讯云区块链服务平台凭借良好的合作伙伴生态,与中国金融认证中心(CFCA)签订战略合作协议,引入了可以在区块链中直接使用的权威数字证书,于此同时,在开源Hyperledger Fabric项目的基础之上引入并集成了国密算法支持,解决私钥的安全存储和证书安全吊销机制。考虑到现有行业中很多大型金融机构已经具备数字证书签发资质,使用区块链通常会优先选择内部CA签发的证书,腾讯云区块链服务平台通过前瞻性的设计,通过证书管理模块统一管理和签发区块链相关的数字证书,只需少量接口适配工作便可以与企业内部CA服务无缝对接。
4)多形态多地域部署
区块链自诞生即具备去中心化特征,从部署层面上,腾讯云提供多种部署形态,帮助客户应对各类部署需求,完成节点层面的去中心化分布;公有云TBaaS产品以节点托管模式将软硬件和运维管控能力全部集成,客户仅需要根据业务需求选择对应的性能指标的节点即可,当前腾讯云支持北京、广州、上海金融、香港四个可用区;私有化TBaaS产品允许大型金融政企类客户和其他有私有化部署需求的中小企业按需采购整套TBaaS服务,不同配置的私有化版本可以覆盖从多套大型区块链网络到灵活轻便的边缘节点各类现实需求。
5)微服务架构
微服务作为云计算的未来趋势,提供了完善的监控告警机制,另外在弹性伸缩,故障自愈,性能调度方面具备无可比拟的巨大灵活性。腾讯云区块链服务平台公有私有化版本均基于微服务架构搭建,这也使得快速的网络搭建,性能扩容,访问管理变得极为简单可靠。
6)智能合约
智能合约是应用系统与区块链对接的必要桥梁,也决定了上链的数据的格式、校验逻辑格式和各种业务逻辑。腾讯云区块链服务平台提供了智能合约(Chaincode)编辑器,除了提供在线编辑、试运行,还提供了智能合约的基本审计能力,用户可以快速验证合约的正确性并且规避一些常见的合约安全漏洞。
图7 智能合约开发配套工具
2、腾讯云区块链底层引擎
接下来,是腾讯云区块链底层引擎平台,它是如何支撑整个区块链系统高效运作,实现各类区块链特性的呢?
腾讯云区块链引擎是一个高性能的企业级区块链系统,基于腾讯云,结合TBaaS为客户提供安全、可靠的区块链服务, 并在性能、安全、可扩展性等区块链关键领域具备优势技术能力,为业务获得最大化区块链优势特性提供基础支持。
1)高性能
区块链系统中注重安全和去中心化,从而也会大幅制约系统的处理性能,在企业联盟链场景下,随着应用规模的扩大,性能将成为主要瓶颈。
区块链的链式结构,使得多个区块也必须以串行的方式顺序化处理,极大限制了系统的并发性能,腾讯云区块链将区块处理过程以流水线的方式分解成多个阶段,如CPU密集型的签名验签、高网络IO的共识算法、磁盘IO为主的区块文件与KV数据库的读写等,每个阶段分配独立的工作线程进行处理。区块流水线在维持原有的区块的顺序的情况下,能极大的提升系统的交易吞吐率,单链条交易性能可达2万+ TPS。
图8 区块流水线
2)共识算法
共识算法是区块链的引擎,作为一个区块链系统,腾讯云区块链除了支持常用的Raft算法,还支持BFT共识算法。BFT共识算法需要能容忍部分拜占庭(恶意)节点,并驱动诚实的节点达成一致。腾讯云区块链的BFT共识算法具备较低的leader切换的开销,使得每次提议都可以由不同的节点以随机或轮流的方式担任leader,以保证算法在多组织环境下的公平性,特点如下:
①轻量级视图切换机制,高效率的数据传输协议,秒级共识。
②支持多链隔离,不同链使用不同的共识通道,保护隐私。
③支持动态增删节点,灵活可伸缩。
3)安全与隐私保护
为满足国家密码法及相关规定,符合行业安全监管规范,腾讯云区块链支持国家密码局认定的国密算法,包括:SM2、SM3、SM4、SM9,并针对区块链常用的SM2算法做了多项优化,如:椭圆曲线上点的乘法优化、规避椭圆曲线模逆运算、计算预处理等,国密算法的效率处于领先水平。
腾讯云区块链支持同态加密算法和零知识证明算法。区块链为数据共享和多方协作提供便利,但共享和协作也带来隐私保护的问题,在链上交易中,交易参与方的账户余额、资金流等信息都在交易发生时被公开了,同态加密算法和零知识证明算法在交易数据上链存证的同时为交易参与方提供隐私保护。
图9 同态加密应用场景
4)可扩展性
扩展性问题是当前区块链都面临的一个重要挑战,随着应该规模的扩大,迫切要求区块链系统能与链外进行数据交互;同时,持续增长的账本数据、交易量以及节点数都对系统的可扩展性有更高的要求。
腾讯云区块链支持预言机功能,即提供可信的链外数据查询服务,链外数据可以是外部的HTTP接口,也可以是其他平行子链的API。由于区块链智能合约本身不适合直接范围外部数据,腾讯云区块链通过在节点中实现一个预言机模块,统一代理所有智能合约进行链外访问。
图10 跨链查询流程
区块链上日益累计的交易数据通过hash链的方式固化到账本文件,使得账本数据持续膨胀,这点在面向企业的联盟链场景下显得尤为突出,因为企业联盟链为了支持层级化的用户管理,通常采用数字证书作为用户ID,将证书捆绑在交易中导致交易的数据量很大。腾讯云区块链通过将证书与交易内容隔离的方式增强系统的可扩展性,并在后续传输和存储中使得证书可以一次存储、多次复用,大幅压缩了区块数据,压缩比达80%以上,使得系统所能存储的交易量提升4倍以上。
腾讯云区块链还支持账本归档技术,可以选择对区块链文件进行归档,裁剪掉当前检查点之前的区块,对于历史区块文件和冷数据集采用大数据平台集中存储,提供丰富查询功能,解决存储膨胀问题。
更多应用场景
作为产业互联网时代最重要的基础设施之一,区块链技术正在发挥连接多方、数据共享、开放协同的关键作用。目前,腾讯云区块链已在金融、政务、教育、农业、智慧城市等多个领域落地数十个区块链解决方案。这些落地案例均能体现区块链在信任与价值交换方面的巨大作用和潜力,可以说区块链产业化应用为各产业企业间多和潜力方协作打下重要的信任基础。
1、供应链金融
腾讯云区块链技术与仓单质押融资场景充分融合,结合智能仓储、智慧物联网、人工智能、大数据分析等技术能力,有效解决传统仓单质押融资过程中的身份信任、风险管控以及效率低下等问题。资金方、担保方能够基于这一方案,搭建一个能够快速担保、可信确认的融资平台,仓单质押融资借贷过程中的金融风险以及风控管理的难度都将有效降低,融资效率得以大幅提升。
TBaaS供应链金融(仓单质押)解决方案通过区块链技术,打造出一整套完全可信的仓单流通数字化全流程方案。
一方面,通过密钥与数字证书可以确保业务参与方以真实身份通过区块链实现线上多方协议、签署电子合同;操作信息实现多方共享账簿,做到数据不可篡改,便于数据追溯与后续审计。另一方面,密码学技术的应用则可确保交易信息只在必要的参与方直接进行分享,有效保护商业隐私。而电子化的仓单作为一种数字资产和行使权益的唯一凭证,能够在不同属主之间进行便捷流通。
此外,该方案还创造性地将物联网、智能视频监控、LBS、图形图像识别等技术能力与仓单质押融资场景结合起来,货仓的物联网数据、智能仓储数据、电子围栏数据以及车牌标识数据实时动态上链,方便资金方进行监管,解决平台信任问题,有效防止多头借贷和恶意骗贷,降低金融风险。
基于区块链技术打造的电子化全流程,让全质押流程业务在区块链上能够快速地开展起来。这不止彻底解决了以往仓单质押融资过程中纸质文件过多带来的审核效率低下问题,实现仓单标准化、规格化和统一化。同时也实现了信任在不同的参与方之间高效传递,发挥了仓单作为数字资产的流通价值和金融工具属性,加速了整个信贷效率。
2、电子证据
区块链技术可以在内容原创保护领域发挥关键作用。针对内容创作领域的侵权行为,业界一直存在确权难、取证难、维权难三大难题。腾讯在2019年联合中国电子科技网络信息安全有限公司、北明软件有限公司共同推出司法区块链应用生态服务平台“至信链”,该平台用于在线易纠纷场景下的关键电子数据/电子证据的存证固定,如在线版权侵权、网络金融借贷等场景。
通过围绕纠纷的电子数据在产生时,实时上链存证固化,后续在诉讼时可以在线提交证据,同时通过将当前证据与产生时存证的证据进行对比,可以证明该电子证据未被篡改具备原始性,一定程度上可以推导出真实性。
目前已有法院、版权局、公证处等多种类公信力机构作为节点加入“至信链”联盟,多机构共同参与保障了上链数据不可篡改,同时也在至信链平台上提供数字化的职能能力,如线版权认证、在线公证等能力,用以解决基于电子数据可信问题。
至信链只解决了电子证据可信存证的问题,实现纠纷解决的闭环还需要线上的诉讼平台,2018年腾讯智法团队为建设法院体系建设的“中国移动微法院”已经覆盖全国32省3500+法院。目前“至信链”与“微法院”的对接打通已经得到最高人民法院的许可,完成对接后可实现“至信链”实时存证,发生纠纷后可在“微法院”提交可信证据进行在线诉讼,用法律手段解决纠纷的成本将大大降低。在版权侵权纠纷中,也就具备了强有力的法律武器来维护原创者的权益。
结语
从炒币的浮躁喧嚣,到新基建的明确定位,区块链在几年间也快速经历了从泡沫化到价值回归的过程。目前,区块链已经借助其技术特性,成为了数据生产要素化和数据资产化的理想支撑平台,并在供应链金融、电子票据、数据共享、政务民生、防伪溯源、公益慈善、医疗健康等方面发挥出独有的价值。
可以预见,区块链与云计算、5G通信、人工智能等信息技术将有机融合起来,共同构成数字经济和智慧社会的重要基础设施。这些新型基础设施,势必深刻地影响和重塑我们的经济组织、金融组织和社会治理模式。