万维链旨在建立一个分布式的未来“银行”,正如传统银行是现代金融的基础设施一样,万维链的宏伟目标是建立一个分布式的数字资产金融基础设施。
万维链通过分布式的方式完成不同区块链账本的连接及价值交换。它应用密码学前沿理论,打造通用的跨链协议以及记录跨链交易、链内交易的分布式账本,无论公有链、私有链还是联盟链,均能低成本的接入万维链,实现不同区块链账本的连接及资产的跨账本转移。这个账本不但支持智能合约,而且能支持智能合约代币交易的隐私保护。
通过万维链,任何机构和个人,都可以在未来“银行”中开设自己的业务窗口、提供基于数字资产的存贷、兑换、支付、结算等服务。通过“银行”提供的基于区块链的基础设施的保障,更多人能够享受更加丰富的基于数字资产的金融服务。更加准确的描述,万维链是一个基于区块链的分布式超级金融市场。
万维链总体架构及技术特征
万维链在技术上是一个为不同区块链网络提供资产跨链转移通道的基础设施,是一个通过跨链协议实现与不同区块链网络互联互通、完整记录跨链交易、维护链内交易明细的分布式账本。万维链将支持主流公有链间的跨链交易、联盟链间的跨链交易以及公有链与联盟链之间的跨链交易。
1.万维链总体架构
分布式账本及智能合约虚拟机
万维链是一个基于以太坊开发的通用账本,可以独立运行应用,保留账户模式和智能合约,可以完整实现以太坊原有的各项功能。在此之上,我们加入了跨链交易机制,并且实现了智能合约代币交易的隐私保护。
原生币
万币(WANCoin)是万维链的原生币,链内的普通交易以及跨链交易都将消耗一定量的万币,同时万币还会被用作跨链交易验证节点的保证金。
共识机制
对于万维链上普通交易的共识机制,我们采用POS共识。同时,在传统POS共识基础上,我们引入跨链交易的共识和激励机制。对于这部分内容的初步设想和规划在后文中有相应论述。
链内交易
万维链上的普通交易与以太坊相同,同时我们增加了智能合约代币交易的隐私保护机制,该机制通过环签名和一次性账户实现。
跨链连接
其他链接入万维链,首先需要完成在万维链上的注册,确保万维链能够对该链进行唯一识别;不同资产转入万维链,首先也需要完成在万维链上的注册,确保万维链可以对该资产进行唯一识别。这两部分功能分别通过链注册和资产注册协议完成。
对于跨链交易,我们利用多方计算和门限密钥共享方案进行联合锚定,在不改变原有链机制的基础上通过跨链通信协议实现最小代价接入。万维链本身也是一个完备的开发平台,利用万维链开发的公有链、联盟链和私有链具备智能合约代币交易的隐私保护功能,可以适用于广泛的金融应用场景,更为重要的是基于万维链开发的其他链相当于万维链的同构链,与万维链有相同的跨链机制,可与万维链无缝衔接。
跨链交易
当一种未注册资产由原有链转移到万维链上时,万维链节点会使用一个基于协议的内置资产模板,根据跨链交易信息部署新的智能合约创建新的资产。当一种已注册资产由原有链转移到万维链上时,万维链节点会为用户在已有合约中发放相应等值代币,确保了原有链资产在万维链上仍然可以相互交易流通。
为描述公有链与万维链之间资产的转入转回,我们以以太坊为例详细说明如下:
转入过程:Alice和Bob分别在以太坊和万维链上拥有账户,当Alice需要向Bob转移10 ether。Alice使用万维链钱包发出跨链交易请求,并在以太坊中发起一笔转账交易,接收方为万维链在以太坊上的跨链锁定账户(Locked Account);万维链验证节点收到跨链交易请求并验证以太坊上该交易已完成记账,然后在万维链上创建一个新的智能合约代币资产ether’, ether’是Alice需要跨链转移的ether在万维链上的代表,并将该资产链内转移到Bob在万维链的账户中。
转回过程:Bob将从Alice处收到的10 ether转给Cris。Bob使用万维链钱包向ether’资产合约发起一笔跨链交易,验证节点收到交易后将Bob的该笔资产对应的价值10 ether’转为锁定状态;锁定完成后,验证节点利用门限密钥共享机制构造出一笔以太坊交易,交易的转出方是之前锁定Alice资产的跨链锁定账户(Locked Account),转入方是Cris在以太坊上的账户;验证节点验证以太坊上的交易确认后,将Bob账号下锁定的10 ether’清空,意味着等值的资产已经回到原有链。
以上描述了万维链与公有链之间完成资产的转入和转回过程,万维链与联盟链之间的资产转移本质上与之相同。
2.万维链技术特征
完全去中心化,无可信第三方参与
目前跨链交易大部分是交易所和第三方交易平台在承担,区块链跨链交易平台也往往需要第三方托管账户参与,这就将整个交易能安全顺利完成的基础依托在第三方参与者的可靠性上。而万维链的锁定账户机制采用多方计算和门限密钥共享技术,完全去中心化,实现了无需可信第三方参与的账户管理功能,不需要任何实体机构信用背书,消除了第三方参与者信用问题带来的隐患。
无需修改原有链机制,接入门槛低
跨链交易方案中,我们的账户锁定机制没有采用双向锚定方法,不需要在原有链上添加识别和验证SPV证明的脚本扩展,所有交易数据都是在万维链验证节点上重构合成后传入原有链节点网络,都是符合其交易类型要求的合法格式,这就将跨连交易的特定操作和计算完全归结于万维链网络中完成,无需对原有链的各项机制进行任何修改,使得无论已有公有链还是基于其他平台开发的私有链、联盟链都可以低门槛自由接入万维链,降低跨链交易合作成本,实现各链间资产的自由流通。
基于密码学算法的安全性保证
已有的很多跨链交易所使用的机制常立足于逻辑上的安全性,需要依靠跨链交易参与者基于自身利益推动,即参与者不会以损害自身利益为代价破坏跨链交易进行,这就引入了参与者理智假设。而万维链中,除了使用原有椭圆曲线密码体制以保证原有签名方案安全的基础上,使用了基于多方计算和门限密钥共享技术的锁定账户管理方案和基于环签名和一次性账户的智能合约代币交易隐私保护机制,去除了参与者理智假设,跨链交易发起后,后续所有操作都无需交易参与者配合,将在万维链验证节点间自动完成,使得整个系统的顺利运行依托于密码学算法的安全性,在逻辑安全之上提高到了算法理论安全。
跨链交易的隐私保护
万维链的跨链交易方案中,原有链上的资产在转移到万维链上后以智能合约中代币的形式存在,我们一方面通过环签名技术将智能合约代币交易的发起者隐匿在一个账户集合之中,令发起者对于任何人都是不可追踪的,另一方面通过一次性账户系统使得智能合约中的账户一次性使用,且与万维链上原生账户无法建立对应关系,令合约内账户与原生账户隔离。综合两方面,实现了智能合约代币交易的隐私性,也就是让资产跨链后的交易受到隐私保护,为用户提供更好体验的同时扩展了应用场景。
万维链跨链通信协议
万维链跨链通信协议是其他链与万维链之间数据传输的规范,实现链与链之间数据流转和互联互通。下面按照模块功能和数据传输流程描述。
1/ 跨链协议功能模块
万维链跨链通信协议按功能划分主要包括三个模块:
注册模块:该模块主要实现两项功能。一是对参与跨链交易的原有链进行注册,通过特定算法规则为原有链生成唯一标识,维护原有链标识注册表,避免虚假链造成欺骗;二是对请求转移的资产进行注册,通过特定算法规则为资产生成唯一标识,以确定资产的唯一性,保证同一种资产在万维链上的流通性。
跨链交易数据传输模块:该模块主要实现三项功能。一是原有链上用户向万维链提出跨链交易请求,是万维链资产转入交易的起点;二是万维链验证节点针对跨链交易请求为用户返回操作成功与否的回执;三是万维链验证节点向原有链发送合法交易,以实现原有链资产转回过程。
交易状态查询模块:该模块主要实现查询原有链状态数据的功能,以确认原有链上用户向万维链锁定账户转入资产的交易是否已被确认、万维链锁定账户向原有链上用户转回资产的交易是否已被确认,是跨链交易进程的控制标志。
2/ 跨链交易数据传输流程
以原有链上用户Alice将value资产转移到万维链上为例说明万维链资产转入数据传输流程:
以万维链上用户Bob将value资产转回到原有链上为例说明资产转回数据传输流程:
万维链关键技术
1/ 万维链验证节点共识机制
万维链将采用POS共识机制,这一共识机制的通用描述在以太坊的一系列论文中均可找到,这里不再详述。POW共识算法理论上存在51%算力攻击的威胁,同样POS共识算法理论上也存在参与者合谋攻击的威胁。因此万维链将引入以下机制去提高验证节点合谋的机会成本,使得万维链能够真实的记录跨链交易和客观的完成跨链流程。
微观上考虑,万维链上验证节点设计为三类⸺普通验证节点(Validator)、跨链交易证明节点(Voucher)和锁定账户管理节点(Storeman)。Voucher负责在跨链交易过程中提供原有链账户与锁定账户之间交易的证明,同时它也需要缴纳一定的保证金,保证金越多,它所提供的证明被采纳的概率也越高,如果提供虚假证明,它的保证金将会被扣除并剥夺跨链交易证明节点的身份。Validator负责在收到达成共识的交易证明后,通知Storeman对锁定账户进行相关操作并完成万维链账本的记账操作。Storeman负责在接到通知后,通过自己所持的密钥份额计算出签名份额并最终合并为锁定账户完整签名,以便进行锁定账户的相关操作(具体流程见4.3部分)。也就是说,万维链将验证节点分为三类,将跨链交易的验证权限进行了一个分离。一方面,每一类节点内部需要达成共识;另一方面,单独一类验证节点即使合谋也无法完成跨链交易的伪造。这种分离机制能够最大限度的降低验证节点合谋的可能性。
宏观上考虑,万维链的安全取决于自身的总体价值。当跨链交易承担的价值远远大于万维链网络的总体价值时,即合谋的收益大于合谋的机会成本,那么验证节点合谋的风险将会变高;反之,当万维链网络的总价值足够大以后,验证节点合谋意味着要放弃自身持有的保证金和万维链上代币的权益,合谋的机会成本大大增加,节点不会为小于自己已有利益和长远收益的跨链资产而合谋破坏整个网络,合谋的风险会降低。因此越多的跨链交易参与到万维链中,万维链承载的价值就越大。验证节点合谋的机会成本就越高,整个网络就更加安全,而更加安全的万维链会吸引越来越多的跨链交易参与进来。这是一个相互作用的过程,随着价值在万维链网络中传导,万维链势必会变得越来越健壮。
2/ 万维链权益激励机制
2.1 验证节点的激励机制
万维链上验证节点分为三类⸺普通验证节点、跨链交易证明节点和锁定账户管理节点。对于跨链交易证明节点,正确的提供原有链账户与锁定账户之间交易的证明,将会根据其保证金获得相应份额的交易费用;如果提供虚假的交易证明,将会被扣除保证金并取消节点资格。普通验证节点完成万维链上的记账,并获取所记账交易的部分交易费。锁定账户管理节点根据其所持权益获得对应数量的密钥份额,计算相应的签名份额附在交易中,它根据密钥份额比例获取参与验证交易的交易费。如果离线或者丢失密钥份额,则无法参与验证交易,也就不能获得交易费。同样这些节点如果对错误交易签名,也会被取消锁定账户管理节点的身份。综上,验证节点激励机制会激励跨链交易证明节点提供正确的交易证明,激励普通验证节点如实的完成万维链记账,激励锁定账户管理节点保持在线并安全保管自身密钥份额。
2.2 普通节点的激励机制
只有在万维链上掌握足够的权益才能够成为验证节点,未成为验证节点的其他节点称为普通节点。普通节点无法参与跨链交易的验证,它们可以将所掌握的权益委托给信任的验证节点,受委托的验证节点将验证交易所获取的交易费按照委托权益比重分配给普通节点。如果受委托验证节点受到惩罚,普通节点也会承担相应损失。这一激励机制保证了万维链上权益拥有者均可以获得与权益相关的收益,同时也激励它们将所掌握权益委托给可信的验证节点,从而提高万维链的安全性与稳定性。
3/ 基于安全多方计算和门限密钥共享技术的锁定账户生成方案
3.1 安全多方计算和门限密钥共享技术介绍
安全多方计算(Secure Multi-party Computation)是分布式密码学的理论基础,也是分布式计算研究的一个基本问题,最早由姚期智于1982年通过姚氏百万富翁问题提出。简单的说,安全多方计算是指一组人,比如P1....Pn,共同安全的计算函数 f(x1,....,xn )=(y1,....,yn)。函数的n个输入分别由n个参与者秘密掌握,设Pi的秘密输入是xi,并且在计算结束后,Pi得到输出yi。这里的安全性是要求即使在某些参与者有欺骗行为的情况下保证计算结果的正确性,即计算结束后每个诚实的参与者Pi都能得到正确的输出yi,同时还要求保证每个参与者输入的保密性,即每个参与者Pi除了(xi,yi)外,得不到任何其他信息。
门限密钥共享技术(Threshold Key Sharing Scheme)解决的是密钥安全管理问题。现代密码学体制的设计是使得密码体制的安全性取决于密钥安全,密钥的泄露就意味着体制失去了安全性,因此密钥管理在密码体制的安全性研究和设计中占有重要的地位。特别是多方利益体共同管理一个账户时,账户的密钥如何可信安全的分配给多方参与者就变得非常棘手。针对这一问题,以色列密码学家Shamir提出了Shamir(k,n)门限密钥共享方案。方案中,密钥被
分为n份分配给n个参与者,每个参与者掌握一个密钥份额(key share),只有集齐超过k个密钥份额,才能够将密钥恢复。因此,账户的任何操作都至少需要n位参与者中的k位参与才能够实施,这样便保证了账户的安全可信。
3.2 锁定账户生成方案
我们基于安全多方计算和门限密钥共享技术设计了锁定账户(Locked Account)生成方案。生成的锁定账户密钥由万维链上的锁定账户管理节点(Storeman)共同维护与管理,保证了账户的安全可信、降低了密钥丢失的风险,同时对没有固定拓扑结构的ad-hoc网络也有较强适应性和稳定性。具体方案如下:
3.3锁定账户签名生成方案
锁定账户生成过程中并不会产生对应私钥,并且它的私钥不会在任何过程中重构出来。要生成锁定账户的签名,需要至少k个验证节点参与,它们通过自身掌握的密钥份额计算得到对应的签名份额(signature share),最终重构出对应于锁定账户的完整签名。具体过程如下:
3.4 方案先进性分析
跨链交易方案都需要一种机制去将用户原有链上的资金进行锁定,只有触发条件达到之后才可以解锁退还到原始账户或者转移到其他账户。目前的实现机制有HTLC(Hashed TimeLockContract)、可信第三方托管账户(Escrow)、多方签名账户等。相较于已有方案,锁定账户生成方案有以下先进性:
· 去中心化,无需可信第三方参与
锁定账户由多方计算得到,生成环节不需要任何可信第三方参与,也不需要任何可信机构背书,只需要万维链上节点通过安全信道进行信息交互与计算即可。相比可信第三方托管账户机制,锁定账户生成方案成本更低且相对灵活。
· 安全稳定
锁定账户的密钥通过Shamir(k,n)门限密钥共享方案分配给万维链的验证节点,每个验证节点掌握一个密钥份额。即使个别验证节点离线或者密钥份额丢失,只要有k个以上节点正常参与交易,那么锁定账户的签名仍然能生成,从而保证交易正常执行。因此,锁定账户生成方案能够保证即使出现个别节点网络瘫痪或者密钥份额丢失等意外情况,整个系统的安全稳定运行。同时,也通过周期式或者触发式的机制对每个验证节点的密钥份额进行更新,消除密钥份额泄露对系统带来的安全威胁。
· 易接入,存储空间低
锁定账户进行的任何操作,均为原有链上的原生交易,不需要对原有链添加新的交易类型和验证机制,因此任何链理论上均可接入万维链,且接入成本很低。同时,相比多方签名账户机制依赖智能合约逻辑实现账户的多方管理,锁定账户生成方案使用密码学原理达成账户的多方管理,最终交易结构中只存在一个签名,而不是多个签名,因此交易所占空间低,存储空间利用率更高。
4/ 基于环签名和一次性账户的代币交易隐私保护机制
4.1 一次性账户系统
账户体系是整个隐私交易的基础,我们采用一次性账户机制,每个用户拥有唯一主账户和多个子账户,子账户也可以看作智能合约中的账户。为此,我们要求如果用户需要使用具有隐私保护功能的代币交易机制,就需要在已有账户基础上添加伴生账户,构成一次性账户系统所需账户形式。
4.2 环签名方案
2001年,Rivest等人在如何匿名泄露秘密的背景下提出了一种新型签名技术,称为环签名(Ring Signature)。环签名可以被视为一种特殊的群签名(Group Signature),由于群签名需要可信中心和安全的建立过程,往往在匿名保护上存在漏洞(签名者对于可信中心是可追溯的),而环签名在群签名基础上去除了可信中心和安全建立过程,对于验证者来说,签名者是完全匿名的,所以环签名更具实用价值。自环签名提出后,大量学者发现其重要的价值,基于椭圆曲线、门限等多种环签名方案被设计开发,总体概括可分为门限环签名、关联环签名、可撤销匿名性环签名、可否认环签名四类。为实现区块链上智能合约代币交易隐私保护,我们使用一种基于椭圆曲线的环签名方案。
环签名可分为三个部分:GEN,SIG,VER,以签名者账户公私钥对(P,x)为例说明三个过程:
4.3 代币交易流程
对于智能合约代币隐私交易流程具体描述如下:
结论
在本文中我们试图构想未来“银行”,我们采用“银行”一词是为了让更多的读者能够有一个直观的理解,是一种类比的表述。将区块链技术从比特币概念中抽象出来,变成一项中性的技术从很大程度上推动了区块链在全球范围的推广应用。但目前也同样面临着巨大的障碍,传统的银行尝试用区块链解决现有的业务问题,就需要评估成本与风险,决策者难以在财务报表的压力面前去冒如此大的风险,更何况这不是一个银行改变就足够的。
万维链构想的未来“银行”是一种基于数字货币的金融形态,在纯业务层面与目前传统银行业务很相似,在本质与组织形式上却不同。正如互联网和移动互联网产业并没有从传统产业内部发芽一样,而是诞生了全新的产业和商业模式反过来影响和改变了传统产业。当数字货币在经济中的比重不断增加,基于数字货币本身和数字货币理念的新的金融业态将蓬勃发展。当然传统银行在一定时间也将以自己的方式加入到数字货币经济中来,逐渐发展出一个传统资产与数字资产融合的金融生态。
我们旨在设计并论证一个未来的分布式金融基础设施⸺万维链,以去中心化的方式完成不同区块链网络的连接及价值的交换。基于该设施,更多的中介机构能够开发自己的金融服务,通过万维链打造分布式未来“银行”。我们相信一个可以灵活开发的、满足多场景需求的、去中心化的价值交换系统是金融基础设施的未来,是普惠金融的未来。
网址:https://www.wanchain.org/
交易平台
币安网 :https://www.binance.com/ | 火币全球站:https://www.hbg.com |
库币网:https://www.kucoin.com |
风险提示:数字货币投资具有极大的风险,请在尝试投资前确定自己承受风险的能力。
文章来源:http://www.qukuaiwang.com.cn/news/11718.html 原文作者:Wanchain 特别申明:区块链行业ICO项目鱼龙混杂,投资风险极高;各种数字货币真假难辨,需用户谨慎投资。blockvalue.com只负责分享信息,不构成任何投资建议,用户一切投资行为与本站无关。