RChain区块链网络上一定要有REV吗?它的作用是什么?在这篇文章里,RChain创始人Mr. Greg Meredith做了详细解读,便于业界和社区对RChain网络有更深入的认识。

作者:Greg Meredith


本文档介绍了如何在RChain网络中使用REV代币。REV代币提供了两个关键功能,该功能与RChain网络安全相关。

背景

RChain网络运行的是全局计算机。网络被组织成各个分片。分片被组织成一棵树。每个分片由被称为节点的运行程序的服务器组成。分片中的每个节点都是部分全局计算机的副本。我们使用共识算法,使该部分全局计算机的每个副本状态都能保持同步。

该组织与Amazon,Microsoft或Google等公司所提供的现代云计算服务的组织方法类似。例如,Amazon的AWS服务是按区域划分,例如美国东部,美国西部,亚太地区等。这些区域就类似于RChain的分片,不同之处在于AWS区域并不是以任何会对其客户对服务的使用方式产生重大影响的树状结构方式来组织的。在RChain中,该组织则会对分片的速度和操作产生重大影响,进而影响到整个全局计算机的速度和操作。具体如何操作则超出了本文讨论范围。

启用计算并防止拒绝服务攻击

由于RChain网络是全球计算机,因此该网络的用户(即可以访问互联网的任何人)都可以要求该计算机运行计算机程序。这些程序必须使用rholang语言编写。该服务与以太坊网络用户可以要求以太坊的全球计算机运行以Solidity语言编写程序的方式非常相似。尽管rholang和Solidity之间的差异会对速度和通过RChain与以太坊执行请求的吞吐量产生重大影响,但这并不在本文讨论范围之内。重要的是要理解,RChain网络的用户可以提交程序,在RChain全局计算机上运行。这样一来,提交在RChain全球计算机上运行的rholang程序就构成了一个面向互联网的API。原则上,任何可以访问互联网的人都可以提交可在RChain全球计算机上运行的rholang程序。

所有具有互联网接口的API的公司都必须解决拒绝服务攻击的问题。当攻击者使用许多计算机程序,调用API来排除所有其他客户端的访问服务时,攻击就发生了,因此,就有了拒绝服务攻击这个术语。为了应对这种攻击,Amazon,Microsoft,Google和其他数千家公司已经采用代币来保护面向互联网的API。这些公司的标准做法是向其API客户发行代币。此类代币为它们提供了调用API固定次数的权限。确切地说,客户购买代币,而不同的访问权限通常与不同的定价方案相关联。这种做法已有15年历史,是当今互联网上的标准操作程序。

就像以上这些公司一样,RCain使用代币(即REV代币)来保护面向互联网的API。客户可以使用代币(REV)来提交rholang程序,以在RChain全局计算机上执行。如没有REV代币,则客户无法提交rholang程序以在RChain全局计算机上执行。REV代币与Web服务(例如AWS或Microsoft的Azure或Google云服务)所使用的代币之间的区别在于,REV是一种有加密保护的代币,由分散的计算网络(即RChain网络本身)所支持。

此外,与其他云计算平台相比,代币可以实现对计算服务更精细的控制。它可以准确地确定,在RChain网络上可以进行多少rholang通讯以及可以使用多少存储空间。其他网络事后收取CPU和存储费用,很难客观地衡量所使用的资源。这些服务的客户必须依靠服务提供商的报告。而通过使用REV代币,他们则可以客观地了解所消耗的资源。

就像其他云计算服务所发布的代币一样,拥有代币的任何人都可以调用API。因此,原则上所有这些代币都可以买卖。购买和出售资源访问权限与提供的基本安全实用程序是不同的。

达成共识

为了使每个节点与分片中的其他节点保持同步,RChain运行的是一种被称为Casper的无领导者分布式共识算法。Casper是被称为权益证明的无数种共识算法之一。有关Casper工作方式有数百个细节,但其不在本文讨论范围之内,我们要理解的是REV代币如何使节点程序参与Casper协议。

同样地,并非每个节点程序都被允许参与协议。否则网络可能会遭到拒绝服务和许多其他类型的安全攻击,因为节点程序的不同版本可能伪装全局计算机的状态,使其与事实不同。为了避免这种情况,节点程序必须投入权益,也就是绑定REV代币,这些代币将由协议本身执行,在节点参与网络协议的持续时间内绑定(staking),节点参与协议必须持续至少4个月。

在其作为分片节点期间,分片中的所有其他节点都能够观察到该节点的行为。每个节点都在监视所有其他节点,这是Casper基本通信结构的一部分。因此,每个节点都能够观察到另一节点是否在协议参与方面有偏差,特别是与报告或更新全局计算机状态相关事宜。每当检测到违规时,将以密码方式保护违规者节点身份的证明,其余节点将能够通过强迫其放弃其权益来惩罚违规者(slashing)。如无权益,违规节点将无法再参与协议。随着时间的流逝,这种称为slashing的简单机制可确保只有遵守协议的节点才能继续参与协议,从而通过REV代币保护协议。

结论

REV代币对于RChain网络的成功和安全运行至关重要。它不是辅助项目,也不是付款服务。它提供的是一种数十年来在互联网上已经建立的网络安全功能,以及互联网新增的网络安全和容错功能。具体来说,该协议允许网络分散,而无需信任诸如Amazon,Microsoft或Google之类的提供商,这是一项目前市场和许多监管机构都非常感兴趣的功能。

Rholang交流QQ群:788367740

 

为什么RChain区块链上一定要有REV?的更多相关文章

  1. PPT分享 | 怎么在区块链上保护隐私?

    艾伯特AI人工智能(公众号:aibbtcom)按: (编者按:在12月3日的亚太区以太坊社区培训和交流Meetup深圳站上,Vitalik作了<怎么在区块链上保护隐私>的演讲,谈到了区块链 ...

  2. 在区块链上表白——使用C#将一句话放入比特币的区块链上

    最近在看区块链和比特币的知识,顺便简单研究了一下BitCoin的脚本语言,发现OP_RETURN这个命令可以在后面放入自己想说的内容,很多侧链啊,公证之类就是利用了这个特性,可以把一句话,或者一个哈希 ...

  3. eos TODO EOS区块链上EOSJS和scatter开发dApp

    由于我一直在深入研究EOS dApp的开发,我看了不少好文章.在这里,我汇总了下做一些研究后得到的所有知识.在本文中,我将解释如何使用EOSJS和scatter.我假设你对智能合约以及如何在EOS区块 ...

  4. IBM & Howdoo – 区块链上的智能社交

    原文链接:https://www.themsphub.com/ibm-howdoo-smart-social-on-the-blockchain 我们很高兴地宣布,我们成为了一个令人兴奋的新社交网络的 ...

  5. 2019金融科技风往哪儿吹?蚂蚁金服联合20余家金融机构预测新年热点:5G、区块链上榜

    2019年,金融科技的风向标在哪里?哪些板块成新宠,哪些科技成潮流? 1月4日,蚂蚁金服ATEC城市峰会在上海举行.大会上,蚂蚁金服与20余家金融机构一起预测了2019年金融科技的发展. “未来金融会 ...

  6. 区块链(Blockchain)

    一 .什么是区块链? 区块链(Blockchain)是由节点参与的分布式数据库系统[1],它的特点是不可更改,不可伪造,也可以将其理解为账簿系统(ledger).它是比特币的一个重要概念,完整比特币区 ...

  7. 区块链是伟大的,比特币则不然。《FinTech,金融科技时代的来临》。3星。

    本书讲技术给金融业带来的变革和可能的趋势.作者认为区块链是伟大的发明,因为他可以让金融交易免费且实时地进行.比特币则可能会被其他区块链技术取代.书中有至少一半的内容涉及到了区块链和比特币.总体评价3星 ...

  8. 看得懂的区块链,看不清的ICO人心

    比特币又开始下跌了,是狂欢尽头还是又一波调整,无从得知,背后的乱象会让监管者继续心烦,而这乱象对我来说,有时候会有些心寒. 你说我怎么可能想到,我一个写程序的人,突然有一天会发现,朋友圈里有一些搞技术 ...

  9. 用JavaScript写一个区块链

    几乎每个人都听说过像比特币和以太币这样的加密货币,但是只有极少数人懂得隐藏在它们背后的技术.在这篇博客中,我将会用JavaScript来创建一个简单的区块链来演示它们的内部究竟是如何工作的.我将会称之 ...

随机推荐

  1. 善用GIMP(Linux下的Photoshop),图像处理轻松又自由

    善用GIMP(Linux下的Photoshop),图像处理轻松又自由 作者: 善用佳软 日期: 2013-02-16 分类: 2 图像影音 标签: GIMP, image 1. GIMP是什么? GI ...

  2. 企业级Docker私有仓库Harbor

    一.Harbor简介 1.Harbor介绍 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Docke ...

  3. Excel特殊符号的录入与录入的秘诀

    软键盘就是输入法上的软键盘 右键单击软键盘 右键! 通过code函数得到符号的数字 按住alt键然后输入数字才可以得到符号 注意是在数字键盘  右边数字键盘区域 插入特殊符号 跳转方向的设置 如果超过 ...

  4. python知识点总结02(不定时更新)

    请用至少两种方式实现m与n值交换m=10,n=5 # 方式一 temp = 0 m = 10 n = 5 print(f'方式一交换前,m:{},n:{}') temp = m m = n n = t ...

  5. C# Charts绘制多条曲线

    一.创建winform工程 拖拽控件Chart 二.比如要绘制俩条曲线,设置Chart控件的属性Series 三.chart的属性根据自己的业务需求设计,我这里只设置了图标类型 代码: using S ...

  6. ansible批量部署nginx

    1.1 将nginx的安装包,和安装脚本copy到客户端,并安装脚本 vim /ansible/roles/nginx/tasks/main.yml - name: copy nginx_tar_gz ...

  7. Linux环境下部署svn服务详解

    说明 环境: 操作系统:centos 8.0 IP:39.100.228.13 安装 用ROOT账号登录,在控制台执行以下命令,一直默认安装就好可以了. [root@localhost ~]#yum ...

  8. 2017CCPC杭州(ABCDJ)

    所有的题目在这里<--- 待补... Problem A. HDU6264:Super-palindrome 题意: 题目定义了一个超级回文串,这个串满足:它的任一奇数长度的串都是回文串. 现在 ...

  9. BZOJ 2038: [2009国家集训队]小Z的袜子 (莫队)

    题目传送门:小Z的袜子 Description 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿.终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… ...

  10. Qt中设置窗口图标

    转:https://blog.csdn.net/weiren2006/article/details/7438028 1.通过qtcreator新建一个文件filename.qrc,将图片添加到fil ...