《区块链的技术特征、不足及改进方案.docx》由会员分享,可在线阅读,更多相关《区块链的技术特征、不足及改进方案.docx(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、区块链的技术特征方案距离中本聪在2008年11月发布白皮书比特币:一个点对点的电子支付系统至今,已经有十余年,而区块链 概念也随着比特币价值的火爆而逐渐进入群众视野,引起全球各界的广泛关注。区块链的去中心化、公开透明、不可篡 改等特性,为金融领域的信任问题提供了新型解决方案,也在供应链、政务服务、商品溯源等方面取得广泛进展。区块 链技术从公有链向联盟链和私有链的开展,超级账本等专注于提供基于区块链的分布式账本平台的出现,区块链技术层 面与应用层面的松耦合状态,在拓宽区块链技术的应用领域的同时,也大大降低了区块链技术的应用难度。2019年10月24日,习近平总书记在中央政治局第十八次集中学习时强
2、调,区块链技术的集成应用在新的技术革 新和产业变革中起着重要作用,要把区块链作为核心技术自主创新的重要突破口,加快推动区块链技术和产业创新开展。 这也为区块链技术在我国的创新开展提供了新的增长动能。区块链的技术特征区块链技术的去中心化依赖于共识机制。区块链通过共识机制决定记账权的归属,在去中心化程度最高的公有链 中,每一个节点的地位均等,没有中心节点的存在,因而中心节点被攻击带来系统崩溃、中心节点篡改账本等问题的可 能性大大降低。节点之间不需要相互信任,每一个节点通过工作量证明来竞争记账权,记账完成后,各节点同步区块链 账本的内容。这种去中心化的特性,也意味着为了达成共识,需要节点之间的屡次交
3、互,而每一次交互都可能存在延迟, 因而对系统的可扩展性形成了约束。区块链技术的运用就需要在系统可扩展性与去中心化之间做出平衡。区块链的防篡改特性主要依赖于工作量累积。区块链的数据结构是一个有序的、反向链接的交易块列表,每一个 区块均指向自己的父区块,区块链中的每一个区块都由一个散列值来标识,这个散列值是对区块头使用SHA256函数加 密散列算法得到。区块头的信息包括三类:一是父区块的哈希值;二是默克尔树根,也就是本区块所有交易产生的默克尔 树根节点的哈希值;三是与挖矿竞争相关的信息,如时间戳、目标难度值以及随机数。如果一个区块得到了 6次确认,也 就是在一个区块的上面累积了 6次工作量,那么这
4、个区块被更改的可能性几乎为零。因为如果本区块中某一个交易更改, 那么工作量证明中的随机数就要重新计算,同时本区块的哈希值也发生改变,为此需要对下一个区块进行更改,因为下 一个区块中包含了本区块的哈希值,因而随机数也需要重新计算,因而就意味着需要同时进行6次工作量的重新计算, 考虑到现有全网的算力,这几乎不可能实现。区块链技术不等同于分布式账本技术。人们常将区块链技术与分布式账本技术混为一谈,但是实际上二者并非同 一概念范畴。区块链技术只是分布式账本的一种实现形式,并非所有的分布式账本都需要使用一连串的区块来提供平安 有效的分布式共识。分布式账本是分布在多个节点或者计算设备上的数据库,每一个节点
5、都可以复制并保存一个分类账, 每一个节点都可以进行独立更新。分布式账本的突破特征是分类账不由任何中央节点维护,而是由每一个节点独立构建 和记录。所有的区块都分布在点对点的网络中,由于它是一个分布式账本,所以它可以在没有服务器管理的情况下存在, 数据质量可以通过数据库赋值和计算确认来维护,区块链本质上是一个不断增长的记录列表,它的结构只允许将数据添 加到数据库中,所以不支持更改或者删除之前输入的数据。当前区块链技术应用中的两难区块链技术有三大优良特性:虫中心化、公开透明、防篡改,但是这些技术上的优良特性,与系统的可扩展性、 高并发性、隐私保护、信息容错机制等相互制约。一是去中心化与高并发性之间存
6、在两难。去中心化是区块链的一个核心优势,但去中心化机制的核心是节点的共 识,为了在区块链中实现区块确实认,就需要在不同的节点之间反复交互,而每一次交互都会带来系统延迟,从而限制 了系统的每秒处理交易总量(Transactions Per Second,简称TPS)。例如,在比特币交易中,一个区块确实认时间 是10分钟,而要保证交易不会回滚,那么至少需要等到6个区块得到确认。比特币每秒只能进行7笔交易,这与金融 领域特别是零售支付领域对高并发性的需求相差甚远。例如,中国2018年“双十一”期间,网联处理交易的并发量的峰值 到达超过9.2万笔每秒。人们尝试通过增加区块的大小或者增加区块的出块频率等
7、方式来提升系统的吞吐量,但是这样 的扩展方案存在交易上限,且上限受到网络延迟等因素的影响。联盟链的典型代表Hyperledger Fabric,通过优化共识 机制、实现背书节点与排序节点的解耦、实施交易并发处理等方式提高了系统的交易量,然而最终也只能到达每秒几百 笔到几千笔的交易量级。二是区块链的公开透明与隐私保护之间存在两难。为了在公有链上达成共识,链上所有的节点均需要对加入区块 的交易数据的真实性、有效性进行验证,确认后的交易被记录在区块链中,任何接入系统的节点只要愿意都可以下载自 区块创世开始发生的所有交易,从而给交易主体隐私保护带来挑战。比方,在比特币系统中,从中本聪的创世区块开始 的
8、所有交易均完整地记录在区块链之中,虽然通过比特币地址很难与现实中个人的真实身份相互关联,但是依然可能通 过数据分析挖掘出交易主体在现实中的真实身份,一旦身份被识别,那么交易方在系统中发生的所有交易都将暴露。三是区块链的防篡改特性与信息容错机制间存在两难。区块链的防篡改特性是指交易一旦写入到区块链之中将不 能够修改,防篡改性为交易溯源提供了应用空间。但是该特性与欧盟2018年5月公布的史上最严格的隐私保护法案通 用数据保护条例(General Data Protection Regulation,蔺称GDPR)存在冲突。如,按照GDPR的要求,公民享有 对个人信息的假设干隐私保护权利,包括知情权
9、、访问权、更正权、被遗忘权、限制处理权、拒绝权、数据可携带权、免 受自动决策权等。但是,对于区块链技术而言,一条信息一旦被写入区块中,就难以被修改或者删除,从而将对个人信 息的更正、被遗忘等权利实施形成制约。四是区块链高出块速度与系统高分叉存在两难。为了提升系统的处理效能,减少交易排队现象,人们试图通过提 高出块速度来提高系统的吞吐量,但是出块速度的加快,会相应带来不同节点对于最长交易链条认识上的不一致,进而 导致各节点对于最长链认识上的分歧,从而交易回滚和系统分叉的可能性显著提升。五是智能合约使用高级语言与执行结果的不确定性存在两难。比特币所使用的脚本语言较为简单,其无法执行类 似循环语句或
10、者流控制,因而不是图灵完备(如果一个语言能够做到用图灵机做到的所有事情,这种语言是图灵完备的) 的,也就是说一些复杂的功能在比特整系统中无法实现。为此,以太坊扩展了比特币系统的语言,通过智能合约的方式 拓展了区块链技术的应用。但是,使用高级语言编写的智能合约,可能会带来执行结果的不确定性。同时,智能合约的 编写难度高,开发人员编写的智能合约可能在完备性上有所欠缺,更容易产生逻辑上的漏洞。同时,由于区块链技术编 程语言的复杂性,很少有人能够精通语言,大多是整段地复制智能合约的执行代码,这就造成了对黑客的防范极为困难。 历史上出现的The DAO事件,即是因为合约漏洞造成了价值数千万美元的加密货币
11、损失。六是区块链的可追踪特性的价值依赖于源头信息准确性。区块链可追溯的特性,可以用于打假、质量保证、品牌 保护等,但前提是源头信息真实准确。源头数据上链过程的真实性和准确性与区块链技术本身无关。现实中,很多商品 源头及跟踪信息均需要人工参与,上链后信息不可修改,但是如果上链的信息本身真实性、准确性存在缺乏,就丧失了 追溯的意义。因而如何保证数据源头的真实性、如何保证链下数据与链上数据的一致性都是重要问题。区块链的技术改进方案区块链技术的应用从比特币应用的1.0阶段,进入到了商业应用的2.0阶段,并随着物联网、第五代移动通信技术 (5G)、大数据、云计算等核心技术的开展,通过构建人与人之间、人与
12、物之间、物与物之间的万物互联的社会进入到 了价值应用的3.0阶段。区块链技术开展至今,主要面临两大制约:一是区块链的性能方面,主要表达在可扩展性缺乏, 交易吞吐量不高;二是隐私信息保护方面,难以满足交易主体匿名以及个人隐私保护的需求,技术上仍需要在兼顾去中心 化的同时,保证用户的隐私信息不因为交易公开而暴露。区块链性能方面区块链性能的改善受到可扩展性的制约,而可扩展性无法得到解决的主要症结就在共识形成机制。未来要拓展区 块链技术的应用就需要在兼顾中心化、平安性的同时,对系统的可扩展性做出改进。当前的关键技术包括异步共识、随 机共识、分区方案、子链和侧链技术、可信执行环境、隐形中心化等。一是共识
13、算法的优化。在公有链中,工作量证明的共识机制对资源造成了极大的浪费,而这种资源浪费除了决定 记账权之外别无用处,类似金本位制度下,消耗大量资源将黄金从地下挖掘出来,再运到美联储的金库,造成对资源的 极大浪费。为此,人们尝试在共识算法上做出改进,一方面是采用异步共识、随机共识、分区方案等核心技术;另一方面 是让渡一局部去中心化特性,将区块链从公有链向联盟链和私有链延伸,采用诸如拜占庭共识(BFT) /拜占庭容错共识 (PBFT)、分布式一致性算法(Raft、Paxos)等共识机制提高运行效率。二是将传统顺序交易转换为并行交易。如Hyperledger Fabric是一个带有节点许可的联盟链系统,
14、通过将过去交 易在排序完成之后或者是在排序的过程当中执行,改进为执行排序验证-提交,提升系统的扩展性和灵活性,同时将系 统的顺序交易,改进为并发性交易,特别是不同的铸码(智能合约)指定不同的背书节点(负责验证交易有效性)o交 易预先执行的方式还防止了交易结果的不确定性,能够使系统抵抗一些非确定性的攻击。三是子链和侧链技术的运用。典型的如比特币的闪电网络(Lighting Network)和以太坊的雷电网络(Raiden Network)的应用。以太坊将雷电网络用于交易双方的转账过程,交易双方通过智能合约方式部署一条交易通道,并在 通道中锁定一定数量的以太币,交易通过多重签名的方式在通道中进行,
15、交易双方可以随时关闭交易通道,只有在通道 关闭时才会发生写入区块链的动作。通道中的任意一方持有的余额证明都是由对方签名,任何一方都无法伪造出一份对 自己更有利的余额证明。通过建立通道的方式,将局部链上动作移出到链外,可以极大地节约区块的共识过程,从而提 升系统并发量。用户隐私信息保护方面用户隐私信息的保护是区块链应用过程中需要解决的重要问题,特别是在公有链中,由于用户的信息在区块链上 是公开的,因而隐私保护面临的挑战更大。例如比特币,尽管地址是匿名的,但是在与其他实体的交互过程中,容易被 反匿名,从而导致用户交易记录的隐私泄露。为了实现区块链的用户隐私信息保护,当前的关键技术包括同态加密技术、
16、 可执行环境、零知识证明、群签名、环签名等。一是同态加密技术的运用。对于交易设定私钥,保证只有交易的相关方 可以看到交易的信息,进而防止了交易在全网进行传播对于隐私性能的损害。二是可信执行环境的运用。可信执行环境(Trusted ExecutionEnvironment,简称TEE)是一个独立环境,受到硬件机制的保护,与现有系统隔离,提供从 文件到内存的全方位的平安能力。在可信执行环境的内部,将密文解密成明文进行计算,不需要担忧明文数据被窃取。 同时,在数据离开可执行环境时,先转换成密文,再返回到通用操作系统。三是零知识证明的运用。零知识证明是指证 明者能够在不向验证者提供有用信息的情况下,使
17、验证者相信某个论断是正确的,从而可以实现验证者不知道具体交易 内容的情况下验证交易有效性。此外,密码学中的群签名和环签名等技术可以用来提升系统的隐私保护能力。群签名技 术因为存在管理员的角色,最终可以揭示签名者,但是环签名技术由于去掉了管理员的角色,可以进一步提升交易的匿 名性。区块链技术的开展方兴未艾,在降低社会交易本钱、提高社会效率、实现交易透明及可监管方面发挥了积极的作 用,有人将区块链的更新和开展与互联网的周期性变化做类比,认为如果说将20世纪末半导体、互联网和核能技术看 作第三次工业革命,那么很有可能区块链技术将与人工智能、物联网和量子计算等一起,成为第四代工业革命的中坚力 量。未来,随着区块链在性能、隐私保护、相关法律缺失等方面的改进,区块链技术还将迎来新的开展机遇。