区块链 链上脚本、智能合约和Dapp的关系区别
  DJsdk34H4Gbu 2023年11月13日 20 0


1. 链上脚本(script)

实现某个功能的一段计算机指令

区块链 链上脚本、智能合约和Dapp的关系区别_区块链技术



2. 智能合约(smart contract)

相当于一个类,里面有很多函数,每个函数实现不同的功能。

相当于脚本代码的升级版

区块链 链上脚本、智能合约和Dapp的关系区别_区块链_02



3. 去中心化的APP(Dapp)

没有中心服务器,运行在去中心化、分布式节点上的APP。


Dapp = 前端(web、app)+ 后端(智能合约)


以太坊社区把​基于智能合约的应用​称为去中心化的应用程序(Decentralized App,简称DApp)。

DApp的目标是(或者应该是)让智能合约​有一个友好的界面​,外加一些额外的东西,例如​IPFS​(可以存储和读取数据的去中心化网络,不是出自以太坊团队,但有类似的精神)。

DApp可以在一台与以太坊节点交互的中心化服务器上运行,也可以在任意一个以太坊平等节点上运行。


提示:与一般的网站不同,DApp不能在普通的服务器上运行。它​需要提交交易​到区块链并且从区块链而不是中心化数据库读取重要数据。

相对于典型的用户登录系统,用户有可能被表示成一个“钱包”地址而其他用户数据保存在本地。许多事情都会与目前的Web应用有着不同的架构。


DApp流程如下:

1)用Solidity(或其他语言)​编写​智能合约(后缀为.sol)。

2)用sole编译器将.sol合约​编译​成EVM字节码。

3)编译好的字节码​回送给DApp前端

4)前端将编译好的智能合约​部署​到区块链中。

5)区块链返回​智能合约地址+ABI​(合约接口的二进制表示。合约接口用JS0N表示,包括变量、事件和可以调用的方法)。

6)前端通过Address+ABI+nonce,调用智能合约。

7)智能合约开始处理。

智能合约技术的产生对互联网变革非常重要,但是不能直接用于支撑DApp应用生态环境。

侧链、VM也撑不起应用生态,因为我们知道应用运行于0S之上,而不是直接运行在裸机之上。

一定程度上讲,VM、侧链可以类比图灵等价的裸机。


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
DJsdk34H4Gbu