DAPP(分布式应用),区块链新物种,去中心化 App

简单来说,DAPP 和普通的 App 原理一样,除了他们是完全去中心化的,由类似以太坊网络本身自己的节点来运作的 DAPP,不依赖于任何中心化的服务器,DAPP 是去中心化的,可以完全自动地运行。

1、DAPP(分布式应用)是什么

DAPP 是 Decentralized Application 的缩写,中文叫分布式应用/去中心化应用,通常来说,不同的 DAPP 会采用不同的底层区块链开发平台和共识机制,或者自行发布代币(也可以使用基于相同区块链平台的通用代币)。

符合以下 3 个条件的应用可以认为是一个 DAPP(分布式应用):

运行在分布式网络上;

参与者信息被安全存储,隐私得到很好的保护;

通过网络节点去中心化操作。

2、DAPP 的四个特征

DAPP 不同的底层区块链开发平台就好比手机的 IOS 系统和 Android 系统,是各 DAPP 的底层生态环境,DAPP 就是底层区块链平台生态上衍生的各种分布式应用,也是区块链世界中的基础服务提供方,DAPP 于区块链,就好比 APP 之于 IOS 和 Android。

一个真正的 DAPP 应用,需要同时满足一下几个条件:

应用必须完全开源、自治,且没有一个实体控制着该应用超 51%Token。该应用必须能够根据用户的反馈及技术要求进行升级,且应用升级必须由大部分用户达成共识之后方可进行;

应用的数据必须加密后存储在公开的区块链上;

应用必须拥有 Token 机制(可用基于相同底层区块链平台的通用代币或自行发行新币),矿工或应用维护节点需要得到代币奖励;

应用代币的产生必须依据标准的加密算法,有价值的节点可以根据该算法获取应用的代币奖励。

3、DAPP 应该制定类似宪法章程的智能合约

区块链的早期应用是货币交易、金融交易,随后是智能资产,包括房产、汽车等实物资产和知识产权、司法认证、公共档案等虚拟资产。

未来随着智能合约的发展,智能合约构建的组织如同现实商业社会一样的运行,这样形成的去中心化组织网络会变得极其复杂和自治,会出现各种形态:

Dapp(去中心化应用)
DAO(去中心化自治组织)
DAC(去中心化自治公司)
DAS(去中心化自治社会)
在没有人类干预的前提下,通过预先设定的业务规则自动运行。

一个简单的智能合约例子:2 个人打赌一场球赛,筹码会暂时保存到网络,球赛结束后,网络中预先设定的智能合约会校验在线结果,然后把钱打到赢家账户。

DAPP 优势

DAPP 用户体验由于区块链特有的数据确权、价值传递功能,可以消除很多影响用户体验、提升开发难度的因素:

(1)用户实名认证流程变更

DAPP 场景下,如果公链内支持数据共享,那么开发者只需要完成数据匹配,就可以从其他生态内的开发者处共享到用户实名资料,同时只需要支付 Token 即可;同时对用户而言,这也算是 POD(Proof of Data)挖矿模式,同样有收益,算是合作共赢;比如公信宝“布洛克城”。

(2)交易安全性提升

随着交易大爆炸的出现,交易效率的需求日渐提升;原来基于金融中介(例如银行、VISA 等)的交易处理方式效率低,信用生产成本高,为了降低这种风险,现在需要投入大量的风控成本进行审核但收效甚微。而基于 UTXO(Unspent Transaction Output)的区块链技术可以简单解决这个问题,而不需要对现有业务流程做任何变动升级,比如央行“数字票据交易平台”。

(3)行业生产关系的变更

区块链的数据确权、价值网络的两个属性可以变更现在的互联网生产关系,促使行业类应用出现,用户不用再为选择焦虑症发愁,典型的例子就是互联网视频;版权成本高昂导致腾讯、爱奇艺、搜狐只能付出极高的成本打击盗版、而用户追剧则需要在不同的平台购买 VIP 账号,如果基于区块链技术,剧集可以被版权方确权,用户不管通过任何渠道观看剧集,其支付的费用都可以 Token 化,然后由区块链基于价值网络分配给版权方、渠道方。在此生态内,盗版的问题被解决(比如 B 站 UGC 上传等),版权争夺成本下降,开发者专注于用户体验的提升,获取用户的方式也从版权壁垒变成社群运营,体验比拼,真正的互联网运营时代将会到来。例如当年的“火花电视”将各个平台的电视剧做到一站式观看,但是私自添加广告,影响版权方利益,最后被禁就是例子。

(4)项目运维成本降低

项目的运维成本往往高于开发成本,我们评估资源阈值的依据是预计最大流量,如果评估太低,则容易宕机,太高则浪费严重,例如:大多数产品应该都面临过运营活动带来的高并发问题,一次营销爆服务器的现象屡见不鲜,而添置服务器所带来的成本浪费则令人头疼,目前几个开发中的底层链(例如 EOS、Elastos)的资源分配模型基于用户持有 Token 的数量,这就意味着我们可以在某个活动开始前临时性购买 Token(资源),并在日常运维中将其释放(卖出),极大减少了运维成本。

(5)技术开发成本降低

目前项目开发通常会评估四个版本:iOS、Android、小程序、Web,理论上 DAPP 类似小程序,设计思想是无需安装,用完即走,所有的计算都在线上完成,本地禁止创建进程,系统自动创建或查找本地、周边、链内的其他微服务。

DAPP 的劣势

(1)产品设计思路的颠覆

目前互联网产品设计思路是“小步快跑、高速迭代”,这个方式在纯 DAPP 应用中应该会出现较大问题。简单来说,现有的 APP 都基于自有服务器,重大问题迭代强行刷新版本即可,但 DAPP 基于分布式的区块链网络,一旦提交上线出现核心 bug 很难迭代。

拿 The DAO 来举个例子,The DAO 的核心漏洞如果是中心化处理,只需要下线更改 Bug 即可,但是以太坊却只能以硬分叉解决,这就是 DAPP 与现有 APP 设计思想的不同,在 MVP1.0 的调研阶段,一定要确认核心机制不出意外。

(2)公链处理效率低

目前成功落地的底层链都存在效率低、资源占用不合理问题,比特币的 5TPS、以太坊的 25TPS 跟 VISA 的 1300TPS 几乎没有可对比性。所以,目前公链并不适合商业化应用开发,如果借用其中几个技术(不涉及实时交易)倒是没有问题,比如积分交易、版权分享等。

(3)研发风险大

现在尚未出现普适性质的公链,就好像 PC 时代的 Windows、Mac OS;智能机时代的 iOS、Android。所以,基于某条公链的开发就要承担如果该公链被淘汰后血本无归的风险,好比当年的塞班开发者,或许跨链技术可以解决,但谁知道呢?综上所述,从互联网生态意义上来说,区块链技术是其底层结构的重要部分,未来所有的应用都需要考虑与其结合,也可能会有更多的全新应用模式出现。

底线

网上看到一句话说:DAPP 是技术进化的下一个合乎逻辑的步骤。我觉得有道理,区块链带来的人们的共识和数据的公开不可篡改,在这个基础上不依赖于人来执行的智能合约成为了可能,于是一切 App 的底层规则也就变了。