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. Node.js入门-知识整理

    目的:使用Node.js实现文件上传并将上传的文件显示到浏览器中 基本工具:Node.js,在windows下需要下载cygwin64来运行shell命令 文件:服务器模块.请求路由模块.请求处理程序 ...

  2. web应用中web.xml文件的解释

    一.web.xml配置文件常用元素及其意义预览 1 <web-app> 2 3 <!--定义了WEB应用的名字--> 4 <display-name></di ...

  3. Keras mlp 手写数字识别示例

    #基于mnist数据集的手写数字识别 #构造了三层全连接层组成的多层感知机,最后一层为输出层 #基于Keras 2.1.1 Tensorflow 1.4.0 代码: import keras from ...

  4. 什么是神经网络 (Neural Network)

    反向传播: 可以看作是再一次将传过来的信号传回去, 看看这个负责传递信号神经元对于”讨糖”的动作到底有没有贡献, 让它好好反思与改正, 争取下次做出更好的贡献. 生物神经网络和人工神经网络的差别: 人 ...

  5. Spring Boot 整合 slf4j+log4j 实现日志管理

    一:首先新建一个jar项目,如下图: 二:添加log4j的依赖,如下pom.xml文件: <project xmlns="http://maven.apache.org/POM/4.0 ...

  6. DEVOPS技术实践_15:使用Docker作为Jenkins的slave

    前面实验了使用docker搭建一个jenkins,下面实验使用docker作为jenkins的slave节点 1. 环境准备 一个运行Docker的主机或者群集 Jenkins应该能访问互联网,方便安 ...

  7. centos6.x安装yum及python依赖包

    步骤1:清空pythonrpm -qa|grep python|xargs rpm -e --allmatches --nodeps whereis python|xargs rm -fr 步骤2:清 ...

  8. React Hooks 完全指南,读React作者博文感悟(2W字精华)

    阅读 facebook大佬:Dan Abramov 的文章颇有感悟 大佬 github地址 https://github.com/gaearon 重点总结 useEffect 是同步的 状态是捕获的当 ...

  9. DRF框架中分页功能接口

    目录 DRF框架中分页功能接口 DRF框架中分页功能接口 一.在框架中提供来三个类来实现分页功能,PageNumberPagination.LimitOffsetPagination.CursorPa ...

  10. 在EasyUI项目中使用FileBox控件实现文件上传处理

    我在较早之前的随笔<基于MVC4+EasyUI的Web开发框架形成之旅--附件上传组件uploadify的使用>Web框架介绍中介绍了基于Uploadify的文件上传操作,免费版本用的是J ...