做者:Raphaël数据库
译者注:Dappy是RChain生态中的DNS【域名系统(服务)协议】。Dappy基于RChain的技术架构保障了域名系统的安全性。浏览器
Dappy是一个用于文件和Web应用程序的去中心化分发网络。Dappy既不使用DNS系统也不使用电子证书认证中心,它执行的是相同的工做,可是该服务是由分散的网络执行而不是集中式服务执行。DNS的问题之一,同时也是咱们开发Dappy的缘由之一,就是为了大福下降风险,并下降当今任何网站对DNS黑客和网络钓鱼的威胁。在本文中,咱们将重点介绍DNS黑客入侵的性质以及Dappy系统如何防止DNS黑客入侵。安全
DNS黑客入侵是一种旨在阻止DNS服务器正常工做的恶意操做。全部代理(浏览器,操做系统等)都须要使用DNS服务器(例如负责* .fr *域名的服务器),其中大部分请求是DNS查找请求,这些代理想要的只是与给定域名相对应的IP地址(例如* pizza.fr *)。黑客可能会将客户端重定向到他的服务器,而不是* pizza.fr *的合法全部者的服务器。对于正规企业或组织,这种黑客行为会形成大量损失,而且经常还会损害品牌形象。服务器
咱们不会讨论DNS解析是如何工做以及黑客如何发挥做用的技术原理,要记住的要点是操做系统或Web浏览器会指向给定的DNS服务器(例如cloudflare是1.1.1.1。)。该服务器是入口点,是依赖它的代理的最终真理之源,全部的DNS查找均可以寻址到此服务器,它会将请求传播到正确的服务器,而后在最终已知IP时回复客户端。网络
为了了解Dappy系统是如何防止黑客入侵域名系统的(至少使得它变得更为困难),咱们必须引入Dappy名称系统。Dappy包括了一个在RChain区块链上的名称系统,全部基于公司的域名购买,续订和转售工做均由分散的智能合约平台处理。固然,若是有名称的话,任何人均可以预订,所以具备密码学保证的属性。架构
在域名系统中,给定的服务器(或服务)是负责扩展的。例如,* .fr *域名是由AFNIC处理的(请参阅IANA Whois页面)。在Dappy中,还存在一个相互独立的代理网络,可是相反地,它们的职责是不分离的。这里是关键部分,Dappy网络上的每一个成员都是名称解析的共同权威,RChain区块链则是一个复制的数据库,每一个服务器应共享相同状态,所以,对于相同的查询,它们的响应是彻底相同的。客户端将不依赖于给定服务器进行名称解析(记住上面的示例),而是依赖于许多彼此独立的代理。app
Dappy系统的客户端不执行单个查询请求,而是执行多个请求;它们不询问中央计算机,而是询问计算机网络,这就是Dappy范式分散和强大的缘由所在。黑客若是想欺骗客户,就必须使网络没法执行其工做,这比关闭或欺骗单个DNS服务器要复杂得多。Dappy浏览器包括一个共识层,容许它不信任任何给定的服务,所以,该名称系统不会出现单点故障。区块链
假设某个客户想要访问资源“披萨:,Dappy浏览器将向全部单个网络成员(例如20个成员)发送查找请求,若是任何单个响应都与其余响应不一样(100%准确度),则最终的配置会将查找操做视为失败。可是咱们确实但愿有一个异常行为的空间,那么80%的准确性就是一个很好的设置。每次客户加载网站时,全部Dappy网络成员都会被查询到,其中至少80%的用户给出相同的答案才能算查询成功,并让客户继续浏览Web。(但这样一来它仍然仍是网络吗?)网站
重要的不是数字,而是实施或设计问题。关键是分散范式与集中式DNS有很大不一样。Dappy集成并预测了部分可能的网络故障(多是网络问题,黑客攻击,恶意行为等),这就是为何必须分散管理的缘由。Dappy客户端永远不会查询互联网上的单个服务器,而是从RChain区块链中获取某些数据,他们将始终查询多个服务器,Dappy系统仅依赖于分散的、公开可见的计算机网络。成员们惟一要作的就是对区块链平台的状态保持透明,而他们对该平台并没有控制权。spa
Dappy主要提出了两种不一样类型的应用程序,即dapps(去中心化应用程序)和IP应用程序。本文以及咱们刚刚所提到的名称系统所考虑的仅仅是IP应用程序,而dapps是其余类型的应用程序,咱们将会在将来的文章中涉及。
本文已经太长了,对于其余将来可能会出现的问题,咱们固然还会有其余文章来详细进行介绍。