月亮链 月亮链
Ctrl+D收藏月亮链

SIS:金色深核|如何用TEE搭建加密货币网络?_Oasis Network

作者:

时间:1900/1/1 0:00:00

本文是《区块链技术手册》系列的第二篇,目标是为了让读者可以懂得一条链是如何搭建起来的,也可以理解加密货币项目的网络结构。

第二篇选题选择有关TEE,原因是TEE是一个非区块链领域的硬件,但却是我们生活中可用不可知的硬件,例如英特尔2015年后的CPU都有TEE。这样读者可以清楚的感受到网络每个部分的存在,了解到区块链究竟是我们所谓的链、加密货币网络里的哪个部分?

本文内容会相关于3个项目,3个项目都是使用TEE特性的项目,每个项目的网络结构各不相同,但都有明显的分层特征,TEE的性能被这三个网络运用在了网络中的重要部分。文中会对3个网络结构进行解构和对比,希望对比之后,你会清晰的了解到一个加密货币网络的搭建是如何进行的?

另外,《区块链技术手册》系列在后续的篇章中还会继续介绍将其他特征的公链。话不多说,进入今天的正题。

一条链的结构

一条公链,可以称为一个应用开发网络,网络聚集了IT资源,开发者利用资源开发应用,所以网络最基础的部分是通信。

公链在基础通信层之上,会加入共识,因为网络由节点组成,节点间是通过共识协同完成网络任务的。其中会有很多承担不同功能的节点,例如大分类上可以分为全节点、轻节点。

在不同网络中,节点的功能可能会被细分成更多分类,例如共识节点、汇总节点、归档节点等。这些节点都有全节点的功能,但会被加入其他功能的开关。

每个节点都有不同的运行方,所以节点背后是人,这赋予了节点有一定角色意义。这也是加密货币网络被称为人类治理实践的原因,加密货币网络的创建,需要创始团队先建立自己的节点运行网络,然后吸引其他人建立节点加入网络,使网络逐渐健壮,继续成为开发者开发dApp的土地。

金色热搜榜:ADA居于榜首:根据金色财经排行榜数据显示,过去24小时内,ADA搜索量高居榜首。具体前五名单如下:ADA、OKB、WAVES、NAS。[2020/11/17 21:04:46]

链的基本原则

无论加密货币网络设计如何,网络都需要节点参与,节点是it资源的来源,还需要保证节点运行稳定。所以大部分节点参与是由代币激励实现的,通过经济收益方式引入节点、保证节点稳定。代币激励也要有“循环”,所以在网络上层,使用者会消耗网络资源,所以需要支付提供资源的费用。例如gas费。

运行原则上最重要的是每个链要有一个总帐本,共识节点负责验证交易形成总帐本,像比特币一样。但如果网络既要保证安全还要高性能的情况下,就不能只有一个网络,要把很多的处理任务分摊出去,否则就会和比特币、PoW的以太坊一样。

这里的原则是为了网络扩容和可拓展性,在验证交易组成总帐本的网络之外还需要多个负责计算的网络,也就是在主链外做很多处理网络交易的节点,这些节点会组成新的网络层,也就会形成分层。

为了扩容和可拓展性的工程实践,目前很多项目都引入了模块化的思维,模块化和分层有同样的意义,分层是纵向的分割,模块化更加深入每一个细节,因为会包含在单独分层内的模块分割。

以上的逻辑是加密货币网络生长的基础思路。在这个思维逻辑之上,最难的莫过于网络从0到1。本文会以Oasis、Phala、Crust三个网络的结构和节点搭建解读这件事。

三个使用TEE的加密货币网络

让我们先看一下三个加密货币项目的网络结构。Oasis、Phala、Crust三个项目都有分层的思路,第一步是把共识层先分离出来。

Oasis有一个单独的共识层,共识层由具有稳定信用的企业或组织建立,节点间通信依靠Tendermint算法,确认出块。

金色相对论 | Layla Dong:政府,行业,教育机构都各自有短板的部分,只有三方联动,才能行之有效的推动发展:在今日的金色相对论中,针对“当前区块链教育面临的师资问题可以从哪些方面进行完善”的问题,Blockshine博聚科技的创始人兼CEO Layla Dong表示,任何一项社会变革的发展,科技的普及单靠一方是无法完成的,政府,行业,教育机构都各自有短板的部分,只有三方联动,才能行之有效的推动发展。以高校来说,任何一门学科从诞生,行业的发展,提炼到教材,再由老师输出进高校课堂,都有很长的道路要走。区块链教育在我们国家起步较晚,因此师资力量的缺乏也是在所难免。因此,在现阶段,借助区块链企业或组织的力量,和高校一起合作推出区块链课程、成立研究中心,进行区块链技术的前沿研究,是一个比较理想的解决方案。另外,我们一定要在学研的同时,想到“用”,这个“用”就更好通过合作来完成了。目前,国内区块链的应用还是不够,原因有很多,我觉得教育机构是一个比较中立的机构,反而可以在这方面更天然的跟行业与政府互动起来,把“用”的问题,提上日程,区块链行业的发展才更有前景。另一方面,由区块链行业专家、工程师直接进入高校给大学生授课,也是一种理想的模式。我本人也一直坚信,拥有一定从业经验之后的人才再进入高校当老师,能够给学生带来更及时性的内容,更有助于学生了解行业的真实状况,也有助于帮助学生将来的就业。[2019/9/12]

Phala也拥有独立的共识层,但设计较为特殊,因为Phala把共识的计算节点称为GateKeeper,GateKeeper的节点设施是具备TEE的,节点间算法使用NPOS。

Crust则把共识层设计的更加复杂一些,因为用了混合共识,共识节点利用TEE硬件搭建,底层使用的是可证明有意义工作量的共识MPoW,目的是在把节点存储文件的证明可信的计算出来。MPoW之上还有一层GPoS共识的共识层,MPoW层的计算结果会上传到GPoS层出块,所以GPoS层负责确认出块,是总帐本的生成层。

分析 | 金色盘面:ZLA/ETH 大涨大跌:金色盘面分析师表示:ZLA/ETH昨天大涨48%,今天回吐涨幅,跌了16%,但成交量没有明显变化,暂时不能确定底部已经形成。[2018/8/6]

三个项目的共识层是这样做的,那接下来共识层之外选择了怎样的设计?

Oasis的架构是共识层加Paratime层,也就是除了共识层外,都是Paratime,理解上Paratime是一个单独的计算节点群,每一个Paratime都可以有自己的特点,这一层负责计算和存储,每个Paratime里会有委员会节点保证将Paratime的元数据上传到共识层。

这里需要提的是,目前TEE的硬件是可以运用到Paratime里,但Paratime的特点不仅仅局限于TEE,还会包含其他类型的技术特性。

Phala的共识层外,是计算层,这一层由许多并行执行的保密合约组成,也就是具备TEE的计算节点,每个TEE独立与共识层通讯,每个计算节点运行一个pRuntime,这样的设计是把计算下放到矿工,以实现扩容,而Gatekeeper负责计算的安全性。从结构上看,每一个TEE计算节点的pRuntime,和Oasis的Paratime很类似。

Phala的网络结构

Crust除了MPoW、GPoS共识层外,接下来就是计算层和存储层,因为Crust将分布式存储的概念做了主要实现,所以在计算和存储层直接通过类似云服务的产品实现,单独做一层设计也是很合理的,这样与其余两个项目相比,Crust是把计算层和存储层直接产品化了,这个思路从项目背景来看,是想把存储和计算资源市场化的表现。也就可以把这一层做为服务层。

节点背后的角色属性

理解了设计总结构,接下来的解构主要是节点类别,前文我们提到,节点都有角色属性,节点背后是人,当节点组成网络,网络就会因为人的因素而存在一些表象,比特币以太坊都是如此,因为PoW挖矿让很多PoW网络已经远远超过稳定阈值,表现稳定,此外,历史上的PoS实验虽不足以称之为成功,但维持网络稳定运作是绰绰有余的。先从0到1之后,才有其他可能。

金色财经现场报道 BlockVC创始人徐英凯:DPoS有一定的自我调节效果:金色财经现场报道,在火讯琅琊榜观火“第2期线下见面会”上,进行以《EOS?EOS!EOS……》为题的圆桌论坛,BlockVC创始人徐英凯指出:要将公链和Token分开看,作为一个分布式系统,通过这样的机制,可以很好的增加速度和效率,之前DPoS机制已经被应用过了,一定程度上而言是比较有效的,有自我调节的效果。现在可拓展性的公链很多,通过DPoS的机制,这种另类的解决方案,可以满足一些诉求,如果EOS成功上线,那么下半年可能会有很多公链采用EOS的机制。但EOS很难颠覆比特币和以太坊。[2018/6/2]

对于公链团队来说,搞定节点背后的人,就可以让网络稳定,慢慢从0到1。接下来就让我们看看,这三个项目的网络都由哪些节点?如何参与?

不同节点代表不同角色

Oasis的节点会分为:共识节点、Paratime节点,其中共识节点需要运行Tendermint?Core以及OasisCore。节点可以在本地部署,也可以部署在服务器。

具体操作流程可参阅

https://docs.Oasis.dev/general/run-a-node/set-up-your-node/run-validator

Paratime层的节点是需要运行Runtime客户端,节点聚集成网,互相协作,其中会有一个委员会节点负责将所有的元数据发送给共识层。而当这个Paratime是具备TEE的,会通过协议控制方式控制TEE,使用TEE做远程认证和执行调用。

Oasis的网络结构

Phala的网络则分为GateKeeper、全节点,网络分为共识层和计算层就可以了,网络的共识层是一个区块链,是由GateKeeper节点组成完成,然后全节点进行汇总碎片和块存储。计算层来运行保密合约,由分散的TEE计算节点组成。

金色财经历史回顾 壹基金收到117个比特币捐款:2013年4月23日,在壹基金合作发展部总监霍庆川和比特币中国的官方微博显示,截止到2013年4月23日凌晨0点51分,壹基金已经收到117个比特币,折合人民币将近10万元。在4月23日,比特币的全球平局价格为120.78美元,随后在2013年4月24日上升至134.8美元。[2018/4/24]

其中所有节点都需要运行三个软件:Phala节点、pRuntime、桥。运行Phala客户端,节点运行硬件需要满足需要满足硬件需求,目前支持IntelSGX,未来会引入AMDSEV也就是英特尔的固定配置。此外,这些节点的配置相同,在运行时只是因为打开开关的不同,而成为不同的角色。例如GateKeeper是需要单独报备一下TEE,才能成为GateKeeper。

关于节点运行操作流程,可参阅

https://wiki.Phala.network/en-us/docs/poc2/run-a-full-node/

另外Phala主网还未上线,现在是第三测试网,已经开放了计算节点可以自由接入。

Crust网络结构相比两者复杂,从节点功能上看分为MPoW节点、GPoS节点,但从节点的运营者角色去归类,节点类别并没有那么多,都在为去中心化存储市场DSM服务。

所以,具有存储资源的用户可以运行两种节点:验证人和候选人。

验证人是Crust网络中负责打包并生成区块的节点,维护着整个区块链网络的共识,这里的共识是GPoS共识。验证人节点也是一个提供存储资源的节点。MPoW共识统计的就是存储工作量,所以验证人也同时运行MPoW层的节点,运行客户端为Crust、CrustsWorker。

Crust的网络结构(MPoWGPoSDSM)

节点具体操作可参阅

https://github.com/crustio/crust/wiki,其中包含Crust测试网参与方式和节点安装手册。

另外的节点角色是候选人,是Crust?网络中参与竞争成为验证人,但没有获得验证资格的节点,其和验证人的区别是,候选人节点不参与生成区块,不能获得单独给予生成区块节点的奖励,但是候选人可以获得区块链每个周期的奖励分成。也就是需要安装节点,等待候选。

网络的原则和创新

当我们看完三个网络的搭建过程,可以至少我们对网络有一个清晰的初步的结构认识了,那这些网络设计的原则是什么?创新点又在哪里?

比特币建立一个网络,用共识对抗双花,以太坊增加智能合约,网络变成可以编程的,但以太坊并没有摆脱PoW,Eth2.0还有待验证,也是因为完全自由意义的质押验证者出块的实践仍不稳定,历来,那些承担主要运营节点的,都会是网络里大的利益相关方。

现在网络设计趋向的目标是扩容和拓展,而原则上要还要包含经济原则和工程原则。继而出现分层或模块化的思路。例如Oasis的共识层里OasisCore和Tendermint?Core在功能上是完全分离的,理论上可以更换其他共识,这就是模块化。而Paretime层的多样性意味着拓展性,Paratime没有局限于使用TEE,或者要求所有节点都用TEE。

另外实现网络规模发展,都是经济原则驱动的,整个网络有一个经济运作的闭环,大部分是建节点,共享资源、出块,然后获得奖励。网络的实操创新可能会集中在让参与者收益更均衡、公平。

例如Phala的思路是汇集散布在世界各地的闲置可信计算算力,因为更去中心化就意味着更加安全。无论是家用电脑还是服务器,只要可以为网络贡献计算资源,都可以加入网络以获取收益。工程化上,Phala在设计之初比较注重可组合性,因此在实现上融入了波卡的跨链协议XCMP,这也为未来Phala成为波卡平行链作准备。

Crust除了关于以上的网络原则设计,创新上主要是做了针对分布式存储的设计,也就是要共享存储,以及形成类云服务,这是更加面向产品端的一个调整。Crust也是波卡生态内的项目,未来的产品端会集成到波卡生态标准的Apps里。

未来看,三个项目从0到1的关键,可能还是会集中在激励上,因为代币是项目各部分自运行的动力。经济原则最重要,其次是创始团队的实力。

技术文档解析

在文章最后,我们做一些技术文档的解析以及聊一聊目前透漏出的关于在项目的链上开发的操作过程。

Oasis的技术文档内容来自docs.Oasis.dev,其中运行验证者节点界面的介绍很清晰,可以明显看到,节点主要需要运行OasisCore,而关于OasisCore的详细内容,可以在OasisCore文档里查看,其中很详细的标注了客户端的功能模块。

Oasis的Tendermint模块和Oasis?Core模块

因为整个Oasis的开发设计,完全是按照模块化处理的,例如OasisCore里负责基础通讯的Ttendermint模块,和其他的设计隔离的很清晰,这意味着未来可以换共识。每一个单项的功能被模块化后,技术上的组合性可以给网络更多便利。

关于开发部分,因为Oasis的计算都是部署在Paratime里的,这就要看Paratime的开发入口,例如Second?State为Oasis做的OasisEthereum?Paratime,是在Second?State的BUDIL里做的合约开发。

Phala的技术文档内容来自wiki.Phala.network,目前内容主要围绕如何成为矿工,也就是GateKeeper以及全节点,还有一个本地开发的指引。

因为Phala未来是波卡的平行链,也就意味着,现在的测试网只要平稳运行即可,未来Phala的网络还会通过插槽链接波卡中继链,利用波卡主网的安全性。

现在的开发披露是需要执行Phala-node、pRuntime、Substrate-TEE中继桥,还有一个web?UI可用。另外,开发披露的保密合约的开发指南,也为保密合约黑客马拉松活动提供了样例和模版。

Crust和Phala的进度相仿,其技术文档来源于https://github.com/crustio/crust/wiki,目前主要是节点参与,有很详细的节点参与设置指南。Crust未来也是波卡的平行链,所以关于开发上,需要依照Substrate的开发,例如在Substrate的App里有开发者使用的RPC调用。

写在最后

TEE在三个网络中,其实是足够发挥特性的,例如Phala为什么用TEE做GateKeeper的计算,因为要用TEE保存签名和密钥,其他TEE用来执行保密合约。Oasis也是如此,把合约扔进TEE执行,Crust则把TEE作为一个存储工作监视器,这是一个很值得尝试的部分。

此外,这些项目都采用了很融合的方案设计,这种思路是值得学习的,同时,这些项目也都和以太坊开发者一样,在努力实现着一些让人兴奋的未知的部分,例如Oasis、Phala着眼于隐私计算,Crust着眼于存储市场。总体来看,目标是一致的,都是在用加密货币网络改变着传统互联网产品,只是驱动进度不同罢了。加密货币行程漫漫,愿三个项目都可以如愿达到目标之地。

标签:SISASIOASISOASoasis币行情One Basis CashOasis Networkoasys币价格

以太坊交易所热门资讯
以太坊:印度:TCS支持的区块链工具包宣布支持以太坊区块链_richquack币为什么一直下跌

QuartzDevkit是由印度领先的IT服务提供商TataConsultancyServices支持的区块链开发人员工具包,刚刚宣布支持以太坊区块链.

1900/1/1 0:00:00
比特币:6大权威机构竟如此评估fil!Filecoin上线六年内币价会破万美金!_FIL

Filecoin主网上线一个月了,由于质押币的不足,各大矿工的算力增幅都比较缓缓慢,因此,各大厂商也使出各种计策,不断增加算力.

1900/1/1 0:00:00
COM:起底Compounder.finance恶性DeFi跑路案 项目方收割超1200万美元_g9tro Crowdfunding Platform

译者注:近日,Compounder.finance用户被盗走超过1200万美元的资金,让人吃惊的是,这次攻击事件的罪魁祸首并非黑客,而是项目方本身,这也是目前性质最恶劣的DeFi跑路事件.

1900/1/1 0:00:00
EFI:深度丨机构如何在DeFi2.0中实现创新?_DeFiAI

作者:JamieBurke翻译:李翰博在这个系列中,我提出我们已经进入了长达5年的"DeFi炒作周期",很可能是由几个小周期组成的,在行业持续"主流化"的基础上,总效应是今天的总市值翻两番.

1900/1/1 0:00:00
API:API3(API3)_digitalusd

项目简介:API3是Web3.0的去中心化API。API3数据源、dAPIs以及聚合了来自第一方预言机的数据,由全球主流的API提供商运营.

1900/1/1 0:00:00
FIL:filecoin怎么挖矿?怎么选择合作伙伴?每天可以挖多少fil币?_cointiger交易所

众所周知,比特币挖矿,是购买一台存放在矿场的比特币机器,通过比拼算力,sha256算法,来计算出一个值,计算对了,获得挖矿奖励,即比特币,但Filecoin挖矿则是另一番景象.

1900/1/1 0:00:00