在区块链上运行程序到底是啥意思?DAPP到底是什么?

西瓜妹 DApp
2019-11-25 12:09:20

  

  大家都知道:  ETH开启了区块链2.0,ETH上可以运行DAPP。

  那么,DAPP究竟是什么?在区块链上运行程序到底是怎么一回事?

  为什么区块链1.0,不能运行程序?

  在之前我们说到:BTC用区块链记账和使用UTXO,而ETH用区块链运行程序代码和使用账户余额制。

  区块链2.0, 是可编程区块链,我们可以在区块链2.0上面,运行智能合约、DAPP(分散的应用程序),而区块链1.0不行。

  那么,为什么区块链1.0,不能运行程序?

  因为,区块链1.0使用的脚本语言,不是图灵完备的。

  什么是图灵完备?

  如果一门编程语言,给它足够时间,它就可以用计算机完成任何计算任务,解决任何计算问题,那么这门语言就是图灵完备的。

  如果需要解决任何问题,就需要运用到——“循环”、“条件控制”等语句。

  什么是循环?

  循环是计算机科学领域的一种常见的控制流程,循环可以告诉计算机去反复执行任务。

  比如:“去币乎,点赞一百万次赞!” 点赞,就是任务。

  循环:

  点赞

  点赞

  点赞

  点赞

  ......

  共计一百万次,很快,币乎里面所有的文章,都被爱莉莎点了赞。

  什么是条件控制语句?

  就是满足一定条件,才执行任务。

  比如,如果这篇文章点赞数小于100,才点赞。

  这里的条件就是:文章点赞数 <  100。任务还是点赞。

  比特币的脚本语言,没有循环语句和条件控制语句。

  因此,我们说:比特币脚本语言,不是图灵完备的。这导致比特币脚本语言,有一定的局限性。

  当然,由于这些局限性,黑客就没办法使用这种脚本语言,写一些死循环(会造成网络瘫痪),或者一些能导致DOS攻击的恶意代码,也就避免了比特币网络受到DOS攻击。比特币的开发者,也认为核心区块链,不应该具备图灵完整性,来避免一些攻击和网络堵塞。

  但是,也正是由于这些局限性,比特币网络,没有办法运行它复杂的程序了。

  而,ETH使用的语言,具备了图灵完整性。

  打个比方:

  区块链1.0就像古老的电话,只有打电话接电话这种核心功能。

  而区块链2.0就像智能手机,上面可以运行各种各样的APP,可以运行游戏APP,可以运行微信,极大地影响了人们的生活。 

  在区块链上运行程序,到底是啥意思?

  我们知道,在电脑上运行程序,是由CPU执行一系列的任务。

  在区块链上运行程序,是在区块链网络上运行各个任务。

  需要注意的是,区块链网络的每个节点,都会记录: 

  1. 所有交易的历史

  2. 所有智能合约的历史 

  3. 所有智能合约的当前状态

  什么是状态? 

  你在淘宝上,购买一件商品,那么,会有显示如下的状态,已下单、已出库、已发货,你购买的进度,就是一个个的状态。

  在区块链上运行程序,所有节点会进行同步,让智能合约所处的状态保持一致。

  DAPP到底是什么?

  DAPP是分散应用程序(decentralized application)的缩写,指:运行在分散式网络上的应用。

  以太坊网络就像手机的IOS系统和Android系统, 是平台系统,是底层的生态环境。

  DAPP就是平台上,衍生的各种分布式应用,也是区块链世界基础服务的提供方。

  DAPP之于区块链,就像APP之于IOS和Android。

  DApp =前端+智能合约

  一个DApp的前端,可以是任何语言编写的前端代码和用户界面(就像一个应用程序)。前端可以调用后端。

  前端→智能合约→区块链

  智能合约是DAPP和区块链数据库之间的桥梁,发挥区块链‘api连接器’的作用。

  打个比方,Dapp就像一个‘启用区块链’的网站,而智能合约允许它连接到区块链上。

  传统的Web应用程序,使用HTML,CSS和JavaScript来渲染页面(前端)。它还需要用API,从数据库中获取数据。比如,当你打开Facebook网页,该页面会通过API来获取你的个人信息(姓名、性别等等),并将其显示在页面上。结构如下:前端→API→数据库 

  而Dapp与传统的Web应用程序非常相似,前端使用完全相同的技术来渲染页面。

  一个关键的区别是,DAPP不使用API访问数据库,而是通过智能合约,访问区块链数据库。

  结构如下:

  前端→智能合约→区块链

  DAPP的特点:

  首先,用户的隐私得到很好的保护,信息被加密存储于区块链上。

  其次,网络节点去中心化操作,所有节点同步DAPP各种状态。

  第三,通过标准算法生产代币,代币根据应用场景使用,有贡献的用户可获得代币奖励。


本文地址: https://www.xiguacaijing.com/news/DApp/2019/16507.html
声明:本文经授权发布,除注明来源外,均为西瓜财经用户投稿,不代表西瓜财经立场。转载请注明:西瓜财经(xiguacaijing.com)
提醒:投资有风险,入市需谨慎。若内容涉及投资建议,仅供参考勿作为投资依据。谨防以“区块链”名义进行非法集资。
赞助商