概述
1. 链上脚本(script)
实现某个功能的一段计算机指令
2. 智能合约(smart contract)
相当于一个类,里面有很多函数,每个函数实现不同的功能。
相当于脚本代码的升级版
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、侧链可以类比图灵等价的裸机。
https://www.jinse.com/news/blockchain/774147.html
https://blog.csdn.net/wlhdo71920145/article/details/80476257
最后
以上就是内向月光为你收集整理的区块链 链上脚本、智能合约和Dapp的关系区别的全部内容,希望文章能够帮你解决区块链 链上脚本、智能合约和Dapp的关系区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复