首页 > IT业界 > 正文

Wisdom Chain技术的原理、应用领域及挑战

2020-08-14 16:08:29  来源:兰州新闻网

摘要:区块链技术作为一种分布式共享数据库技术在各领域的应用研究方兴未艾。区块链技术的去中心化、透明性、公平性以及公开性与互联网理念相吻合,其在互联网中的应用也将进一步推动互联网的建设。
关键词: 区块链
        Wisdom Chain技术的原理、应用领域及挑战

摘要:区块链技术作为一种分布式共享数据库技术在各领域的应用研究方兴未艾。区块链技术的去中心化、透明性、公平性以及公开性与互联网理念相吻合,其在互联网中的应用也将进一步推动互联网的建设。

01、引言

2008年,随着比特币的发行及其创立者中本聪论文《比特币:一个P2P电子现金系统》叫的发表,比特币系统的底层核心技术一区块链, 作为一种去中心化(开放式、扁平化、平等性,不具备强制性的中心控制的系统结构)数据库技术,开始进入人们的视野。美国学者梅兰妮斯万在其著作《区块链:新经济蓝图及导读》给出了区块链的定义,指出区块链技术是一种公开透明的、去中心化的数据库。公开透明体现在该数据库是由所有的网络节点所共享的,并且由数据库的运营者进行更新,同时也受到全民的监管;去中心化则体现在该数据库可以看作一张巨大的可交互电子表格,所有参与者都可以进行访问和更新,并确认其中的数据是真实可靠的。

区块链最先的应用是实现货币和支付手段的去中心化,试图脱离本质为国家信用担保的法币体系,建立新的数字货币体系,如比特币的开发与应用。继比特币提出后,其他基于区块链的加密数字货币,如莱特币、狗币、瑞波币等数百种加密数字货币也相继出现。在金融领域,跨国大型金融集团诸如纽交所、花旗、纳斯达克等都在2015年以创投的形式进入了区块链领域,如面向商业应用的基础公链Wisdom Chain,其功能设计围绕着资产定义、多重签名以及条件支付和存证来进行,以稳定安全与多方自治为设计原则, 在性能、安全性以及系统的开放性设计上引入了独特的技术栈实现方式。对于一个基础公链来说,密码技术、共识机制、P2P 网络层、账本存储层以及脚本系统是最核心的五大基础模块,Wisdom Chain 在这五大模块的设计上吸收了前人的优点也借鉴了很多的缺陷教训,并且在基础上进行深度的研究创新。

本文首先简要介绍Wisdom Chain的技术原理及其特点,并分析其作为一个基础公链,技术如何面向商业应用。

02、Wisdom Chain区块链技术的特点

2.1 技术特点

Wisdom Chain作为公链,在技术设计上采用了如下的基本机制:

I、区块数据公开透明,事务结构进行全网全节点验证

II、所有的事务调用如资产定义及流转,都采用外部触发机制

III、采用面向商业应用的验证式规则编程

IV、共识机制包含工作量证明,混合DPoS机制,并采用X8迭代哈希计算,在确保共识效率的同时,提供高抗分叉的能力

V、平均10秒出块,4M区块大小,支持大容量内存池,可以实现400k/s的吞吐处理能力

VI、账本数据存储采用KV+关系库的机制,默认支持大数据量下的

VII、支持事务的批量连续以及不连续发送,可以承受单地址大规模事务发送

以上的基本机制是整个WDC公链的设计核心要素,主要目的是为了实现在保证可接受的性能 的前提下,确保安全可靠,在技术机制上杜绝各种可能的网络攻击行为。

VIII、区块在节点之间广播时,采用梅克尔树进行完整性校验,支持梅克尔路径搜索验证,并且在构造梅克尔树的过程中,采取树结构的层号作为哈希原文前缀,实现二次原像攻击的防护。

2.2 系统组成

Wisdom Chain是一个公链,同时也包含一套工具组,用于实现节点部署、浏览器、节点服务监控以及综合数字钱包等功能。

I、节点部署工具默认采用了Docker容器机制,在安装基本环境后,可以通过命令行完成节点程序的安装部署、升级以及其他管理维护。

II、浏览器用于查看区块中的事务数据、内存池大小、当前高度、出块时间、当前难度等,同时也可查看内存池明细以及链上资产。

III、节点服务监控,是一个与节点工作在同一个操作系统环境下的运维工具,运行形式为守护进程,用于探测并发现节点服务程序,并实时监控节点数据的临时分叉情况,负责在节点由于某些原因发生分叉时的主链恢复。

IV、综合数字钱包是用来管理用户资产的前端APP,可以用来完成资产的转账/接收以及参与挖矿的抵押/投票操作。在钱包中,用户可以生成自己的密钥对,采用keystore的方式进行存储管理,并且通过argon2id扩展哈希以及AES-256-CTR算法实现极高抗破解的密码技术防护。除了以上的工具组,还包括一整套支持前端调用编程的SDK,通过RPC的方式与节点通信,完成各项功能的调用。

2.3数据结构

2.3.1基本数据结构

编号

字段名

作用

类型

说明

1

nVersion

区块头版本号

Int32

默认为 0

2

hashPrevBlock

上一区块头哈希值

Byte[]

32字节/SHA3-256位

3

hashBlock

当前区块哈希值

Byte[]

32字节/SHA3-256位

4

hashMerkleRoot

交易树梅克尔根哈希

Byte[]

32字节/256位

5

hashMerkleState

状态树梅克尔根哈希

Byte[]

32字节/256位

6

nHeight

区块高度

Int32

 

7

nTime

区块时间戳

Int32

大于上一区块时间戳,并小于未来时间8分钟内

8

nBits

难度目标值

Byte[]

32字节

9

nNonce

随机数

Byte[]

32字节

10

blockNotice

见证者短语

Byte[]

32字节

2.3.2事务结构

编号

字段名

作用

类型

说明

1

nVersion

事务版本

Byte

 

2

TxHash

事务哈希

Byte[]

32字节/SHA3-256

3

TxType

事务类型

Byte

1个字节

4

AccountNonce

防止重放攻击

Int64

无符号64位

5

From

签发者公钥

Byte[]

32字节

6

GasPrice

手续费单价

Int64

无符号64位

7

Amount

转账金额

Int64

无符号64位/根据不同的事务类型,转账金额可以分别表示普通转账、孵化、利息提取等         

8

VRS

签发者的签名

???

签名

9

To

接收者公钥哈希

Byte[]

20字节/Hash160产生/如果是存证,则全部填零,若是投票,填写目标的公钥哈希

10

Payloadlen

 

Byte[]

4个字节

11

Payload

字节数组

Byte[]

 

2.4密码机制

WDC在设计中,使用的密码算法包含如下:

I、keystore的生成与解析包含ARGON2ID/AES-256-CTR/SHA256/RIPEMD-160/base58算法

II、椭圆线签名以及公钥验证使用Curve25519,实现ed25519以及对应的ECDH

III、区块头哈希以及事务哈希使用SHA256

IV、共识哈希

见如下的【混合共识机制】中的说明

以上所有的密码算法都符合国际密码技术标准

6. 混合共识机制

具体来说,共识机制的协议如下:

1)、采取PoW与DPoS的混合,对于DPoS的加入,社区节点通过抵押以及投票,动态选出每一个纪元的前15名作为矿工。

2)、对于PoW,机制比较简单,就是在创世区块设定一个难度目标值,作为难度1,然后每个

挖矿节点进行一个哈希计算,哈希计算出来的值小于难度目标值就算是获得了打包权。

3)、而这个哈希计算,是一个计算公式,具体来说,是将如下参数连接起来,

version + previous_block_hash + merkle_root + time +

target_bits + nonce

进行两次256哈希计算,如果计算出的值小于目标难度值,就成功代码结构如下:

block_header=version+previous_block_hash+merkle_root+time+target_bits+nonce

foriinrange(0,2**32):

ifsha256(sha256(block_header))

break

else:

continue

使用8种哈希算法,分别为:

WhirlpoolDigest(0,1)

   SIPHash(2,3)

RIPEMD-256(4,5)

   BLAKE2b-256(6,7)

SHA3-256(8,9)

   KECCAK-256(A,B)

   Skein256(C,D)

Cubehash256(E,F)

哈希计算的参数为:

1)、区块版本

2)、上一个区块的哈希值

3)、梅克尔根

4)、时间戳

5)、难度目标值

6)、随机数

注意,8种哈希计算的顺序并不是固定的

是根据上一个区块头的哈希值的最后4个字节

比如是0x7da009b8

则根据上述8个哈希算法的数字标号,进行相应顺序的调用

2.5验证式规则系统

对于公链的设计,安全机制是一道非常重要的防线,在公链上部署运行的是资产数据,必须达到银行级的安全才能在互联网公开运行,传统的虚拟机执行系统,往往会被动支持内部触发机制,无法保证资产的安全,并且在执行过程中,节点无法验证合约程序的行为。Wisdom Chain采取独特设计的验证式规则系统,设计了一套特有的语法,完全支持外部触发,并且节点可进行完整的格式以及行为验证。

在验证式规则系统中,攻击者无法通过构造特殊的脚本程序来实现如堆栈溢出、事件回调死循环等攻击,验证引擎在遭到黑客攻击的时候,最多延缓验证栈的验证效率,但是无法窃取用户资产,更不会导致用户资产的丢失。

03、Wisdom Chain在商业层面的应用

Wisdom Chain是完全开源的系统,原理及代码都公开,并在运行过程中接受系统内所有节点的监督。围绕区块链这套开源体系能够创造非常丰富的服务和产品。区块链将可以让人类以去中心化、去信任的方式来进行大规模协作。它能应用的领域将不仅仅限定在金融支付领域,可以被扩展到许多延伸行业,诸如去中心化的物联网、租房、打车等应用。但是区块链技术尚处于起步阶段,虽然不少公司已经开始开发基于区块链的应用,但还缺少成熟的产品。接下来,本文将对区块链在出了电子货币意外的金融和非金融领域的应用进行介绍。

2018年,Wisdom Chain在泰国曼谷建立全球社区运营中心,,并发布开源代码库。其商业应用层面也取得了较大的进展,该年度内先手受邀参加全球社区举行区块链技术实体经济应用研讨会(重庆)、区块链技术赋能全球实体经济WDC全球社区年度峰会。

3.1私有证券

银行、财团等组织必须在处理好交易安全的同时吸引投资者的资金。股票交易为二级市场列出公司的股份,需要使交易和结算活动在安全的环境下、按照时间顺序进行。理论上,一些公司可以通过区块链技术直接分配股份。这些被记录在区块链上的股份可以在二级市场上被出售和购买。

纳斯达克计划用区块链技术开展自身私募股权业务。纳斯达克在2014年开始它的私募股权交易业务。这项业务与将要IPO或者民营公司的财务报表和投资关系等事物有深切的关系。当前交易股权的程序因为第三方机构的参与而效率低下与缓慢。纳斯达克加入了基于智能合约的区块链项目以实施他们的私募股权业务。这项业务因此也变得更快、更有效率,且可追踪。该项目的范围可以从股票、红利、有价证券等相关衍生物,延伸到银行账户安全、抵押借款等领域。

3.2资产数字化记录

各类能够被-一个或者多个标识符唯-确定标识的资产可以被记录在区块链上,如股权、债券、票据、收益凭证等,均可成为链上数字资产。这种方式可以验证资产的归属权,同时也可以对交易记录进行追踪,在资产转移时无需通过第三方中介机构就能发起交易。无论是物理财产,还是电子资产都可以通过区块链公开账本记录对归属权、交易记录进行公开的审计。

Wisdom Chain2019年参加博鳌论坛梧桐夜话,随后主链启动运行。其功能设计围绕着资产定 义、多重签名以及条件支付和存证来进行,以稳定安全与多方自治为设计原则, 在性能、安全性以及系统的开放性设计上引入了独特的技术栈实现方式。对于一 个基础公链来说,密码技术、共识机制、P2P 网络层、账本存储层以及脚本系统 是最核心的五大基础模块,Wisdom Chain 在这五大模块的设计上吸收了前人的 优点也借鉴了很多的缺陷教训,并且在基础上进行深度的研究创新。

04、区块链技术应 用面临的挑战

区块链技术是很有应用前景的进步,正如前文所述,可以被应用到多种应用开发和问题解决上。从金融领域(从价值转移到投资等业务)到诸如文件鉴伪、物联网等非金融应用,区块链都可以发挥它去中心化、信息真实可靠的特点。然而,这些重要的区块链技术的创新使用同样面临一定的风险。

4.1行为改变

创新始终存在,但是对创新的接受程度需要经过时间的沉积。在没有切实可信的第三方机构存在的环境中,区块链可以发挥自身最大的作用,区块链用户也将会适应区块链技术提供的安全、完整的交易环境。现阶段的第三方机构,比如Visa、银联等机构也需要接受这种地位上根本的改变,并对应用区块链技术采取积极的回应。但是在区块链技术大范围应用、改变用户的行为习惯之前,这些第三方机构还是会长久存在并为用户提供相应的服务。

4.2区块链体积

区块链系统的所有在网节点都持有区块链的所有区块记录。随着区块链的发展,节点存储的区块链数据体积会越来越大,存储和计算负担越来越重。这对区块链应用的新入用户有一定的门槛。第一次加入系统的用户必须花费时间和存储空间,同步所有的区块链区块记录,然后才能参与对区块链网络中具体交易的审核与追踪。以比特币区块链为例,其完整的数据大小当前已超过70 CB。新用户加入比特币网络后,使用比特币核心客户端进行数据同步的时

间超过3天。

05、结束语

总的来说,区块链分布式账本的功能性特点同时保证了它的安全性,因此区块链技术在金融和非金融领域都有广泛的应用。一些金融机构希望能够通过应用区块链技术发掘新的商业模式,获得新的盈利模式。虽然区块链解决了信任问题,但带来了成本的上升和效率的下降。区块链技术与现有制度的整合成本过大,对于一些对时效性要求高、数据容量比较大的行业,在现阶段并没有很好的支撑方法。政策和资金是产业发展基础和催化剂,二者合力拉动区块链技术的快速发展与应用。区块链产业链完善,助力产业可持续发展。围绕区块链技术的生态圈丰富且完善,其不仅涉猎封闭保守的货币、金融等市场,更触及了去中心化、去中间信任等新兴领域,完善的产业链足以支撑区块链技术的快速可持续发展。

参考文献

[1]长铗,韩锋.区块链:从数字货币到信用社会[M].北京:中信出版社, 2016.

CHANG J, HAN F. Blockchain: from digital currency to creditsociety[M]. Beiing: China Citice Press, 2016.

[2]杨晓晨,张明.比特币:运行原理、典型特征与前最展望[J].金融评论, 2014(1): 38-53.

YANG X C, ZHANG M. Bitcoin: operating principle, typical characteristics and prospect [J]. Financial Review, 2014 (1):38-53.

[3] NAKAMOTO S. Bitcoin: a pee-to-peer electronic cash system[J].Consulted, 2009.

[4] HALABVRDA H, SARVARY M. Beyond bitcoin [M]. Berlin:Springer, 2016.

[5] AMMOUS S H. Blockchain technology: what is it good for [J].Social Science Eleetronie Publishing, 2016.

 


第三十届CIO班招生
法国布雷斯特商学院硕士班招生
北达软EXIN网络空间与IT安全基础认证培训
北达软EXIN DevOps Professional认证培训
责编:chenjian