区块链应用

Vite新一代高性能去中心化应用平台

Vite 来源:区块网 2018-05-24 09:34

Vite 是一个通用的去中心化应用平台,在兼顾安全性的同时,满足了工业级应用对高吞吐、低延迟和扩展性的要求。Vite 采用 DAG 账本结构,账本中的交易按账户分组。Vite 中的快照链结构,可以弥补账本自身防篡改能力的不足。通过分层共识算法 HDPoS,将交易的写入和确认解耦,并保障系统的高性能和扩展性。Vite 的虚拟机部分兼容 EVM,智能合约语言在 Solidity 基础上进行了适当扩展,提供了更为强大的描述能力。另外,在 Vite 设计中,一个重要改进是采用了基于消息驱动的异步架构,智能合约之间通过消息传递信息,从而极大提高了系统的吞吐率和扩展性。Vite 除了内置原生代币之外,还支持用户发行自己的数字资产,同时提供了跨链价值传输以及基于路印协议的资产互换功能。Vite 通过配额来实现资源配置,低频用户无需支付交易手续费。另外,Vite 还支持定时调度、命名服务、合约升级、区块裁剪等功能。

公链三要素

账本结构:VITE在DAG的基础上独创做了一个快照链的设计,用快照链来解决DAG账本自身防篡改能力不足的安全性问题。快照链采用了区块链这种链式结构,它本身不保存交易,只把账本中的状态(比如账户余额和最后一笔交易的哈希值等)做一个快照记录下来。如果用户要篡改一笔交易,除了篡改账本,还需要篡改快照,这样就提高了篡改的门槛。另外,快照是异步进行的,也不会拖慢交易的写入速度。目前该方案已得到了Nano社区的认可。

共识机制:通过分层共识算法 HDPoS,将交易的写入和确认解耦,并保障系统的高性能和扩展性。每一层的共识机制采用的是DPoS算法,每秒一个块,这个算法和EOS比较相似。不同之处是VITE做了基于快照链的分层共识。

虚拟机:VITE选择了兼容以太的solidity,因为它的社区和配套的SDK都比较全。以太已经踩过很多坑了,这是相对来说更成熟稳健的路线。Vite在solidity之上也做了一些扩展,扩展之后的Solidity 称为Solidity++,还定义了一组用于消息通信的语法,比如提供更多的标准库,支持异步语义等。

Vite 的特点主要包括:

• 高吞吐。Vite 采用 DAG 账本结构,正交的交易可以并行写入账本;另外,在 HDPoS 共识算法中,多个委托共识组之间彼此无依赖,可以并行工作;最重要的一点是,Vite 的合约间通信是基于消息的异步模型。这些都有利于提高系统的吞吐能力。

• 低延迟。Vite 采用 HDPoS 共识算法,通过代理节点,以协作的方式完成轮流生产区块,不需要计算PoW,出块间隔可以缩短到 1 秒,有利于降低交易确认的延迟。

• 可扩展。为了满足扩展性的要求,Vite 对交易做了单自由度限制,将账本中的交易按照账户维度进行了分组,允许不同账户的区块生产由不同的节点完成,并且去掉了跨合约调用的 ACID 语义,改为基于消息的 BASE 语义。这样,节点不再需要保存全部世界状态,数据以分片 (sharding) 的方式保存在整个分布式网络上。

• 经济性。由于 Vite 采用基于配额的资源配置模型,交易不频繁的轻量级用户不需要支付高昂的手续费或燃料费。用户可以选择多种方式换取计算资源,还可以通过配额租赁协议,将额外的配额转让给其他用户,提高系统资源利用效率。

• 易用性。Vite 的易用性改进包括:在 Solidity++ 中提供标准库支持,专门用于处理消息的语法,合约的定时调度,VNS 命名服务,合约升级支持等。

• 价值闭环。Vite 支持数字资产发行、跨链价值传输、基于路印协议的代币互换等,形成了一个完整的价值体系。从使用者的视角来看,Vite 就是一个全功能的去中心化交易所。

经济模型

1.原生代币

为了量化平台计算和存储资源,激励节点运行,Vite内置了一种原生代币 ViteToken。代币的基本单位为 vite,最小单位为 attov,1 vite = 10attov。快照链是影响 Vite 平台安全性和性能的关键,为激励节点参与交易验证,Vite 协议对快照块的生产设置了锻造奖励。锻造奖励会使 ViteToken 的流动性增加,稀释vite 持有者的权益,因此,我们将通胀率限制在每年 3%之内。

与此相反,当用户发行新代币、部署合约、注册 VNS域名、获取资源配额时,都需要消耗或者抵押 ViteToken,从而降低其流动性。

在这两种因素共同作用下,可以使 vite 的流动性保持在一个健康水平,同时有利于优化系统资源的配置。

2.资源配置

由于 Vite 是一个通用的 dApp 平台,部署在其上的智能合约功能各不相同,每一个不同的智能合约,对吞吐和延迟的需求也不同。即使是同一个智能合约,在不同阶段对性能的要求也不同。

在以太坊的设计中,每一个交易在发起时需要指定一个 gas price,从而与其他交易竞争写入账本的机会。这是一个典型的竞价模型,原则上可以通过价格有效调控供给和需求的平衡。但由于用户在出价之前,很难量化当前的供需情况,也无法预测其他竞争者的出价,很容易发生市场失灵 (market failure)。而且,每次出价所竞争的资源都是针对一个交易的,没有一个按账户维度对资源进行合理配置的协议。

3.资产发行

除了原生代币 ViteToken 之外,Vite 还支持用户发行自己的代币。发行代币可以通过一种特殊的交易——“铸币交易”(Mint Transaction) 来完成。铸币交易的目标地址是 0,在交易的 data 字段中,指定代币的参数,格式如下:

一旦该请求被网络接受,铸币交易所包含的 vite 将作为铸币费从发起者账户扣除。系统会记录新代币的信息,为其分配一个 token_id。新生成的代币全部余额都会被加入到 owner 的地址,也就是说,owner 账户是这个代币的创世账户 (Genesis Account)。

4.跨链协议

为了支持数字资产的跨链价值传输,消除“价值孤岛”,Vite 设计了一个跨链协议 VCTP(Vite Cross-chain Transfer Protocol)。

针对目标链上的每一种需要跨链传输的资产,在 Vite中均需发行一个与之对应的代币,作为目标代币在 Vite内部流通的凭证,这种代币称为 ToT(Token of Token)。例如,想要将以太坊账户中的 ether 转入 Vite,可以在Vite 中发行一个标识符为 ETH 的 ToT,初始发行量应该等于 ether 的总发行量。

针对每一个目标链,Vite 上都有一个网关合约,维护 Vite 交易和目标链交易之间的映射关系。该合约所在的共识组中,负责生成区块的节点称为跨链中继 (VCTP Relay)。跨链中继需要同时成为 Vite 节点和目标链的全节点,监听两侧的交易。而在目标链上,也需要部署一个代表 Vite 的网关合约。

在跨链中继开始工作前,应该将 Vite 中对应的 ToT全部转入网关合约。在此之后,ToT 的供给就只能由网关合约来控制,任何人不能进行增发,以保证 ToT 和目标资产永远保证 1 : 1 的兑换比。同时,目标链上的资产也由 Vite 网关合约来控制,任何用户都无法动用,从而确保 ToT 有完全的承兑准备金。

跨链协议

上图是一个 Vite 与以太坊进行跨链价值传输的例子,当以太坊用户 E1 希望将以太坊上的代币转入 Vite 时,可以向 Vite 网关合约地址 V 发送一笔交易,同时,将该用户在 Vite 上的地址 A 放在参数中。该笔转账的余额会锁定在网关合约账户中,成为 ToT 准备金的一部分。VCTP 中继节点在监听到该笔交易后,会生成一笔与之对应的 Vite 出账交易,将同样数量的 ToT 发送至该用户在 Vite 的账户 A 中。图中,①和② 分别表示以太坊用户E1 和 E2 向 Vite 账户 A 和 B 转账。需要注意,如果用户在转账时没有指定 Vite 地址,合约会拒绝该交易。

反向流程如③所示,当用户 A 从 Vite 账户向以太坊账户转账时,会发送一个交易给 Vite 上的网关合约,转入一定数量的 ToT,并在交易中指定以太坊的接收地址 E1。VCTP 中继节点会在以太坊网关合约上生成对应的响应区块,并打包一个以太坊的交易发给以太坊上的 Vite 网关合约。

在以太坊中,Vite 网关合约会校验这个交易是否是由受信任的 VCTP 中继发起的,再将同样数量的 ether从 Vite 网关合约转到目标账户 E1。

所有跨链中继节点都会监听目标网络,他们可以校验每一个跨链交易是否正确,并在共识组内部达成共识。但快照共识组不会不会监听目标链的交易,也不会验证交易在两条链之间的映射是否正确。如果目标网络发生回滚或硬分叉,Vite 系统中映射的交易无法随之回滚;同样,如果 Vite 中的跨链交易被回滚,目标网络所对应交易也无法同时回滚。因此,在做跨链交易的时候,需要在合约逻辑中额外处理交易回滚的情况。同时,需要对跨链中继共识组设置一个 delay 参数。

5.路印协议

路印协议是一个构建去中心化资产交易网络的开放协议。相比于其他 DEX 解决方案,路印协议是基于多方环路撮合的,提供了防止抢先交易的双重授权技术,并具有充分的开放性。

我们将路印协议内置到 Vite 中,有利于促进 Vite 中数字资产的流通,从而使整个价值体系形成闭环。在这个价值体系中,用户可以发行自己的数字资产,通过 VCTP传输链外资产,并利用路印协议实现资产互换。整个流程都可以在 Vite 系统内部完成,并且是完全去中心化的。

在 Vite 中,路印协议智能合约 (LPSC) 是 Vite 系统的一部分,资产转移授权以及多方交易原子性保障等均在 Vite 中原生支持。而路印中继仍然是开放的,以便与路印自身的生态充分融合。

用户可以使用 vite 来支付资产互换交易费,因此,路印矿工在 Vite 平台上进行环路撮合,赚取的代币也是vite。
关于更多Vite信息:https://www.vite.org/

文章来源:http://www.qukuaiwang.com.cn/news/9233.html
原文作者:Vite
特别申明:区块链行业ICO项目鱼龙混杂,投资风险极高;各种数字货币真假难辨,需用户谨慎投资。blockvalue.com只负责分享信息,不构成任何投资建议,用户一切投资行为与本站无关。

1.价值区块链(blockvalue.com)遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.价值区块链的原创文章,请转载时务必注明文章作者和"来源:价值区块链(blockvalue.com)",不尊重原创的行为本站或将追究责任;3.作者投稿可能会经价值区块链编辑修改或补充。