去中心化的应用程序 - DApps
去中心化应用程序(DApps)是在P2P网络上而非在一台独立的计算机中运行的应用程序,或者说,自从P2P网络出现以来,DApps就一直存在。其设计目的是以不受任何单一实体控制的方式存在于互联网上,所以,DApp是存储和管理任何类型数据的更可靠和安全的系统。
- DApps不一定需要在区块链网络之上运行。BitTorrent,Popcorn Time,BitMessage,Tor,都是在P2P网络上运行的传统DApps,但不在区块链(这是一种特殊的P2P网络)上运行。
- 与简单的智能合约相反,按比特币的传统意义上说,它将资金从A发送到B,DApps在市场的各个方面拥有无限数量的参与者。
注:就像云计算一样,在相当长的一段时间内,可能没法DApps和智能合约作一个确切的定义,所以,这就仁者见仁,智者见智了。
DApps和智能合约之间的区别
DApps允许大家使用区块链网络,其中智能合约允许它连接到区块链。了解这一点的最简单方法是了解传统网站的运作方式。
- 传统的Web应用程序使用HTML,CSS和Javascript来呈现页面。它还需要利用API从数据库中获取相关信息。当你访问一个网页时,该页面通过调用相关API来获取你的个人数据并将其显示在页面上。传统网站:前端→API→数据库
- DApps类似于传统的Web应用程序。前端使用完全相同的技术来渲染页面。一个关键的区别是,不是连接到数据库的API,而是通过智能合约连接到区块链。DApp的网站:前端→智能合约→区块链
与传统的集中式应用程序(后端代码运行在中央服务器上)相反,dApp的后端代码运行在去中心化的P2P网络上。DApp是由后端到前端的软件包合集。智能合约只是DApp的一部分:
- 前端(界面展示)
- 后端(智能合约的逻辑)
从另一方面讲,智能合约仅包含后端,并且通常只包含整个DApp的一小部分。这就意味着如果你想要在智能合约系统上创建DApp,则必须合并多个智能合约,并依靠第三方系统作为前端。简单的说,DApp包括智能合约但不限于智能合约。
image说明:使用区块链的智能合约与Swarm和Whisper相结合的DApp
来源:以太坊 [Stack exchange]
(https://ethereum.stackexchange.com/questions/383/what-is-a-dapp)
DApp可以拥有以任何语言编写的前端代码和用户界面(就像应用程序),可以调用其后端。此外,其前端可以托管在Swarm或IPFS等去中心化的存储方式上。
区块链DApps
成为区块链DApps,必须符合以下条件:
- 应用程序必须完全开源 :它必须自主运行,并且没有实体控制其大部分代币。应用程序可能会根据提议的改进和市场反馈调整其协议,但其最终的更改必须基于用户的共识。
- 应用程序的数据和操作记录 :必须以加密方式存储在公共的,分散的区块链节点中,以避免出现任何中心故障点。
- 应用程序必须使用加密货币 (比特币或其系统本身的令牌),并且对矿工进行一定的代币激励。
- 应用程序必须 根据作为价值证明的标准加密算法生成代币,节点正在为应用程序做出贡献(比特币使用工作证明算法)。
DApp开发过程
-
白皮书和原型
发布白皮书,介绍DApp及其功能。本白皮书可以概述DApp开发的想法,但也需要一个工作原型。 -
令牌销售
初始令牌销售成立 -
ICO - 开启众筹模式(已经被玩坏了)
DApp的所有权股权分散 -
实施和启动
资金投入到构建DApp并进行部署。
DApp许可
在开放源代码许可下运行允许DApps在不受版权或专利限制的情况下开放创新。另外,通过完全开放源代码,DApp可以在开源软件的合法模式下运行。比如,比特币使用MIT开源软件许可证。
例如:以太坊DApps
以太坊计划为建立DApp提供底层平台。以太坊为开发人员提供了一个基础层:具有内置图灵完备编程语言的区块链,允许任何人编写智能合约和DApp,在这些应用程序中他们可以为所有权,交易格式和状态转换功能创建他们自己的任意规则。总的来说,在以太坊之上有三种类型的应用程序。
- 金融应用程序 为用户提供更强大的管理方式,并使用他们的资金签订合同。
- 涉及金钱的半金融应用,但是所做的事情也有非常重要的非货币方面
-
治理应用程序
如在线投票和分散治理,根本没有财务。
相关的DApps的例子:
-
令牌系统
区块链代币系统有许多应用程序,从代表资产(如美元或黄金)的子货币到公司股票,代表智能财产的单个代币,安全不可伪造的优惠券,甚至与常规值无关的代币系统作为激励的积分制度。 -
金融衍生产品和稳定价值货币
例如,一个非常理想的应用是智能合约,通过使用来自例如纳斯达克的数据递送,对冲以太币相对于美元的波动。 -
身份与征信系统
声明土地所有者名称的合同可以添加到以太坊网络中,但不能修改或删除。任何人都可以注册一个具有一定价值的名称,然后该注册将永久保存。 -
去中心化文件存储
类似Dropbox的dApp,其中智能合约将所需数据分成块,对每个块进行加密以保护隐私,并从中构建Merkle树,然后将整个数据分散到整个网络 -
去中心化的自治组织(DAO)
拥有一定数量成员或股东的虚拟实体(可能占67%多数)有权使用实体的资金并修改其代码。成员们将共同决定组织如何分配资源。
网友评论