​​2018年12月26日

Xinshu Dong发布于Zilliqa博客

自从我们第一次向 GitHub 代码库(最早的项目名还是nuQoin)提交代码以来,已经过去一年半的时间了。在第一次提交代码之后,我们着手构建了一个安全、可扩展的区块链平台。现在,在选择了一个更好的名称、进行了7,000多次提交、经历了无数个小时努力之后,我们热切地等待 2019年1月31日Zilliqa主网发布。

重温起点,对我们来说,这是一次非常独特的科学和工程学之旅。每一步,我们都吸取了教训,遇到了不可预见的挑战,并在需要时改进协议设计。一路走来,无论是技术领域还是非技术领域,我们都得到了社区极大帮助。我们衷心感谢他们对这个项目的不懈支持。这项成就既是我们的,也是你们的。恭喜大家!

在这里插入图片描述
在这篇博客文章中,我们想更详细地分享Zilliqa主网在启动时所具备的功能,以及这个新生网络的保护机制。

在这里插入图片描述
主网功能

在Zilliqa,我们的目标一直是建立一个更好的区块链平台——一个能够支持去中心化应用和产品的生态系统。特别是,我们专注于创建一个平台,为最终用户带来真正的价值,并推动区块链技术实现有意义落地采用。要使应用程序可行,用于构建它的平台不仅要稳固、可扩展,而且要安全,这一点至关重要。这就是为什么安全对我们来说是一个核心的优先事项,并在很大程度上推动我们的决策。

即将发布的主网捆绑了以分片为核心的极具创新性的功能。下面我们将讨论Zilliqa主网的一些核心功能:

分片:Zilliqa网络支持常规支付交易和需调用智能合约交易的分片。在分片架构上处理智能合约交易有其自身的一系列挑战。想了解更多关于Zilliqa解决该问题的方法,请查看这篇博客文章(https://blog.zilliqa.com/prov...)。

实用拜占庭容错式(Practical Byzantine Fault Tolerance,简称为 PBFT)区块链:Zilliqa将是目前市面上为数不多的PBFT区块链。PBFT的共识机制既高效,又能赋予交易最终性,因此不需要确认。

安全智能合约:Zilliqa协议附带了一种名为「Scilla」的全新智能合约语言。该语言旨在消除现有智能合约中许多已知漏洞,并使其易于进行形式化验证。

双启动环保挖矿:对于以太坊和Zilliqa这样基于ethash的PoW区块链,进行双挖是可行的。这是因为Zilliqa结合了PoW和PBFT,其中PoW仅用于防范Sybil攻击,而PBFT则用于达成共识。由于在 Zilliqa上的PoW周期每2-3小时只需运行1分钟,我们认为,这与每个区块达成共识都需要使用 PoW的区块链相比,Zilliqa上挖矿的能源足迹要小得多。

块奖励的方差很小:Zilliqa 协议采用一种创新的激励机制,通过衡量矿工在共识协议中的贡献来予以奖励。因此,成千上万(或更多)矿工可以因一个区块获得奖励,从而实现方差很低。

保护初始网络免受潜在攻击

与比特币和以太坊等其他区块链一样,Zilliqa区块链网络能够处理交易并维护分布式账本的全局状态。不过不幸的是,不同的区块链网络在潜在攻击者方面存在一些显著的差异。一边是比特币,它一开始在几乎没有什么估值的情况下已经在有机增长;另一边是Zilliqa,它在今天已经具有相当大的价值。这种估值上的差异导致了在Zilliqa网络还处于萌芽阶段时就会面临威胁,而在比特币这样的网络刚起步时,这类威胁并不一定是严重的问题。

考虑到这一点,Zilliqa主网在发布时将带有保护机制和保守模式,从而尽量减少对这个新生网络发起攻击的机会。让我们进一步详细描述这些机制:

启动阶段:我们首先将在启动阶段启动网络。我们预计,为了使区块链运行得更快、更高效、更安全,需要一些时间来收集所需的算力。我们需要确保我们的网络在这个哈希算力相对较低的初始启动期间不受攻击。

在启动阶段,矿工将获得采矿奖励,但不会处理任何交易。一旦特定的区块数被挖掘后,这个启动阶段将自动结束。我们预计这个时间点将是2019年3月前后。

保护节点:在新Zilliqa网络的初期阶段,我们有一种机制可以自动生成新的节点加入网络,以达到保护目的(保护节点)。这些节点的数量是动态调整的,当网络低于预期大小或检测到严重不稳定时,节点数量将增加。这些节点将由Zilliqa团队运行,可以让我们更容易快速修复在主网上线后可能出现的任何错误或问题。为了确保这些节点即使在对抗的情况下也能够加入网络,它们在PoW阶段获得了更高的优先级,为了公平起见,它们不会获得任何挖矿奖励。

随着时间的推移,网络趋于稳定、挖矿难度增加,保护节点的数量会逐渐降低,最终被社区运营的其他节点所取代。

查找节点和种子节点:像Zilliqa这样具有高吞吐能力的区块链,预计很快便会生成大量数据,不能指望所有节点都存储全部交易历史。虽然不是每个客户端或去中心化应用程序都需要这样的信息,但是某些应用程序(如区块资源管理器、交易所和钱包)需要这类信息来运行。

在Zilliqa中,我们从运行共识的节点上卸下全部存储责任,同时设置查找节点和种子节点来维护交易历史和区块链的全局状态。为了提高通信效率和抵御DoS攻击的能力,即将上线的Zilliqa主网利用种子节点作为用户和客户端访问Zilliq 网络的网关。种子节点进一步合并所有用户的交易请求,然后将它们转发到查找节点。查找节点在开始时将由Zilliqa团队运行。而种子节点是终端用户和客户端的直接访问点。种子节点可能由Zilliqa团队、交易所、钱包和区块资源管理器托管,随着时间的推移,也将交给社区托管。

目前,我们已有计划,设计一个安全有效的协议来进一步让查找节点和种子节点去中心化,使网络更加开放。

随着Zilliqa主网推出,我们朝着那些让该平台应用起来的各种令人兴奋的机会迈出了一大步。展望未来,我们将继续秉承区块链创新的高标准,与社区和不同行业紧密合作,将现实世界的应用案例引入Zilliqa平台。​​​​


Zilliqa
1 声望5 粉丝

由新加坡国立大学孵化的Zilliqa项目是首个采用安全分片技术使得吞吐量可扩展到每秒数千个交易的高吞吐量的公有区块链平台(目前测试交易速度达到2488tx/s,接近visa数千笔每秒交易速度),让区块链技术向传统商业...