什么是去中心化应用程序

作者: 玖財数字资产交易平台 | 来源:发表于2018-09-27 18:20 被阅读19次

    去中心化应用程序DApps, 为 Decentralized Applications 的缩写。经玖財研究分析得知,目前大部分 DApps 选择在以太坊系统上部署,简单来说,其可以被视为基于去中心化区块链平台以太坊运行的应用、工具或程序。

    根据维基百科定义,“去中心化应用程序是众多用户在分布式网络上运行的应用程序,无需信任协议。其旨在减少单点故障(SPOF)的同时,通常借助 token 来奖励提供计算能力的用户。”

    为了便于理解这个概念,可以先对比 Web 应用程序的功能,以区分与 DApps 的异同。

    在传统 Web 应用程序中,使系统可用的两个重要元素为前端和后端,其通过 HTTP 协议以编码消息的形式相互通信,并使用 HTML、CSS 和 Javascript 来呈现页面。此外,它还需要利用应用程序编程接口(API)从数据库中获取相关信息。当用户访问网页时,该页面通过调用相关 API 来获取个人数据并将其显示在页面上。即前端——API——数据库。

    传统 Web 应用程序存在诸多问题。首先,此类应用程序服务器由一个中心化的服务方托管,在遭到恶意攻击时可能会造成单点故障(SPOF);其次,关闭基于中心化服务器的应用程序,黑客只需中断主机服务即可。因此,应用程序中的数据信息更容易遭到攻击。

    DApps 也存在前后端的概念,通信方式与传统应用程序相同。DApps 能实现以任何语言编写的前端代码和用户界面,也可以调用其后端。此外,其前端可以托管在 Swarm 或 IPFS 等去中心化的存储方式上。但与传统应用程序不同的是,前端并不是连接到数据库的 API,而是通过智能合约连接到区块链。即前端——智能合约——区块链。

    目前,应用市场中的应用程序绝大部分都是中心化的。以支付宝为例,用户在天猫商城购买商品后,需付款给支付宝,卖家收到购买信息后发货,用户在确认收货之后,支付宝将具体款项打给卖家。其中,支付宝即为一个中心化的应用,集中所有卖家、买家的所有数据信息。也就是说,虽然支付宝有数以百万的前端用户,但后端仍由中心机构绝对控制。

    若阿里巴巴的数据中心遭到攻击或者破坏,用户的交易信息以及支付宝中的存款就有可能“灰飞烟灭”,无从查证。而不同于中心化应用的数据信息由单一机构控制,DApps 的后台运行在对等的分布式网络上,网络中的所有节点均有权利参与信息的修改,且不存在一个节点可以完全控制一个去中心化的应用。

    与传统的中心化应用相比,基于区块链技术的 DApps 存在以下特性,并成为其核心优势在移动应用中占据一席。

    开源性

    在闭源应用程序中,终端用户不能通过任何中心源直接访问其数据,因此需要信任应用程序的开发人员,用户则面临数据泄漏、篡改等风险。而 DApps 是开源应用程序,其允许所有用户参与管理。根据提出的改进建议或市场的反馈,应用程序可能会调整其协议,但任何一个更改都必须基于用户的共识。

    共识机制

    在引入比特币等加密货币之前,任何有效的交易均依赖于一定程度中心化的机构,一笔交易需要通过监管其的清算所进行处理。DApps 在对等网络或区块链网络上运行,这就意味着任意节点之间可实现互相连接。在 DApps 应用程序中,各项事务基于共识机制得到处理。当大多数节点批准该事务时,其便会得到确认并进行处理。此外,网络中的验证器也会获得一定数量的加密 token 作为奖励。

    无中心故障点

    由于 DApps 是去中心化的,且不依赖于单个服务器,因此不存在中心故障点。DApps 允许将存储在其中的数据分散至各个节点,这些节点互相独立。当其中一个节点发生故障时,其他节点不会受到影响,能够保证正常运行。IPFS(星际文件系统)、BitTorrent(比特流)和独立 DHT(分布式哈希表)等不同的分布式数据库系统,均可以基于这个特性创建 DApps。

    结论

    区块链技术最有用的应用之一是 DApps。事实上,很多人都没有意识到它的革命能力,特别是那些不熟悉加密的人。玖財认为,在未来将出现越来越多的 DApps,每个人都应该关注它们如何影响我们的世界。

    相关文章

      网友评论

        本文标题:什么是去中心化应用程序

        本文链接:https://www.haomeiwen.com/subject/mvcyoftx.html