为什么RChain区块链上一定要有REV?
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?的更多相关文章
- PPT分享 | 怎么在区块链上保护隐私?
艾伯特AI人工智能(公众号:aibbtcom)按: (编者按:在12月3日的亚太区以太坊社区培训和交流Meetup深圳站上,Vitalik作了<怎么在区块链上保护隐私>的演讲,谈到了区块链 ...
- 在区块链上表白——使用C#将一句话放入比特币的区块链上
最近在看区块链和比特币的知识,顺便简单研究了一下BitCoin的脚本语言,发现OP_RETURN这个命令可以在后面放入自己想说的内容,很多侧链啊,公证之类就是利用了这个特性,可以把一句话,或者一个哈希 ...
- eos TODO EOS区块链上EOSJS和scatter开发dApp
由于我一直在深入研究EOS dApp的开发,我看了不少好文章.在这里,我汇总了下做一些研究后得到的所有知识.在本文中,我将解释如何使用EOSJS和scatter.我假设你对智能合约以及如何在EOS区块 ...
- IBM & Howdoo – 区块链上的智能社交
原文链接:https://www.themsphub.com/ibm-howdoo-smart-social-on-the-blockchain 我们很高兴地宣布,我们成为了一个令人兴奋的新社交网络的 ...
- 2019金融科技风往哪儿吹?蚂蚁金服联合20余家金融机构预测新年热点:5G、区块链上榜
2019年,金融科技的风向标在哪里?哪些板块成新宠,哪些科技成潮流? 1月4日,蚂蚁金服ATEC城市峰会在上海举行.大会上,蚂蚁金服与20余家金融机构一起预测了2019年金融科技的发展. “未来金融会 ...
- 区块链(Blockchain)
一 .什么是区块链? 区块链(Blockchain)是由节点参与的分布式数据库系统[1],它的特点是不可更改,不可伪造,也可以将其理解为账簿系统(ledger).它是比特币的一个重要概念,完整比特币区 ...
- 区块链是伟大的,比特币则不然。《FinTech,金融科技时代的来临》。3星。
本书讲技术给金融业带来的变革和可能的趋势.作者认为区块链是伟大的发明,因为他可以让金融交易免费且实时地进行.比特币则可能会被其他区块链技术取代.书中有至少一半的内容涉及到了区块链和比特币.总体评价3星 ...
- 看得懂的区块链,看不清的ICO人心
比特币又开始下跌了,是狂欢尽头还是又一波调整,无从得知,背后的乱象会让监管者继续心烦,而这乱象对我来说,有时候会有些心寒. 你说我怎么可能想到,我一个写程序的人,突然有一天会发现,朋友圈里有一些搞技术 ...
- 用JavaScript写一个区块链
几乎每个人都听说过像比特币和以太币这样的加密货币,但是只有极少数人懂得隐藏在它们背后的技术.在这篇博客中,我将会用JavaScript来创建一个简单的区块链来演示它们的内部究竟是如何工作的.我将会称之 ...
随机推荐
- <Catalan>杨辉三角实现卡特兰数计算方法
h(n)=C(2n,n)-C(2n,n-1) #include<cstdio> #define siz 20 using namespace std; int n; ][siz]; int ...
- 【2016常州一中夏令营Day6】
小 W 算树[问题描述]山有苞棣,隰有树檖.未见君子,忧心如醉~小 W 养了一棵有 N 个点的无根树,由于小 M 最喜欢二叉树了,为了讨小 M 欢喜,小 W想知道有多少个点作为根后,这棵树是一棵二叉树 ...
- C# dotnet 获取整个局域网的 ip 地址
局域网可以使用的 IP 地址有很多,我写了一段代码用来枚举所有可以用的 ip 地址 小伙伴都知道,局域网可以使用的 IP 范围如下 A类地址:10.0.0.0 - 10.255.255.255 B类地 ...
- js算法(1)
数组排序 arr.sort(function compare(a,b){return b.value-a.value}); json 排序 $.getJSON('URl',function(data) ...
- python代码规范以及函数注释规范
摘要 本文给出主Python版本标准库的编码约定.CPython的C代码风格参见PEP7.本文和PEP 257 文档字符串标准改编自Guido最初的<Python Style Guide&g ...
- 使用Gson中的JsonElement所遇到的坑
使用Gson中的JsonElement所遇到的坑 原文链接: https://blog.csdn.net/weixin_30326515/article/details/98196013 声明:此博客 ...
- Linux 批量安装依赖
1.依赖检测失败,xxx被xxxx需要. 当我安装rpm 的时候,出现依赖检测失败. 我们可以到http://rpmfind.net/linux/rpm2html/search.php 这个网站上去搜 ...
- 洛谷$P3324\ [SDOI2015]$星际战争 网络流+二分
正解:网络流+二分 解题报告: 传送门$QwQ$ 其实我第一反应是费用流来着,,,但是仔细想了下发现我不会实现各个武器之间独立同时?而且攻击是连续的答案可能是小数嘛$QwQ$. 所以显然不是递推就二分 ...
- Java工程师阅读源码的一些见解
一.为何阅读源码 就是说,通过阅读源码能给你带来什么好处. 学习如何从需求-设计-实现,开阔你的思维,提升你的架构设计能力: 帮助更好地理解原理和架构设计: 帮助更快地定位线上问题BUG 可以根据自己 ...
- 1067 试密码 (20分)C语言
当你试图登录某个系统却忘了密码时,系统一般只会允许你尝试有限多次,当超出允许次数时,账号就会被锁死.本题就请你实现这个小功能. 输入格式: 输入在第一行给出一个密码(长度不超过 20 的.不包含空格. ...