企业信息
所在地:
联系人: 股搭
手机:13113741934
联系时请说是在网商汇看到的我
  
您的当前位置:首页 > 新闻资讯 > 企业资讯

UTO乌托邦系统开发(技术详情)

2023/3/2 14:46:21  

什么是智能合约?

智能合约,telegram:jt9119简单来说就是“不需要人工干预的,自动执行的合同”。它是一种以密码学为基础,通过数学算法来保证数据的安全性、不可篡改性和防抵赖性以及执行结果可追踪性的计算机程序。从本质上来说,智能合约就像是一个加密的数据库。

Web 3.0与区块链-开I762蕟O72搭9II9。

Web中重要的是用户拥有自己的数据,那么也就是说我们的数据不能存储在任何中心化的存储上。这时候就需要区块链这种去中心化的技术了。

所以,也有人说所谓的Web 3.0,其实就是运行在区块链技术上的去中心化互联网。

DApp的基本架构图:

主要分为三个部分:

1、区块链以及本身提供的能力

2、三方钱包等提供的能力

3、我们要写的DApp部分----分为三个部分:

(1)和EVM交互的合约层--solidity编写;

(2)和合约层、钱包交互的交互层-web3js,其和Ajax类似,可以用来读取以太区块链,主要使用的JSON RPC和区块链进行通信,对区块链网络进行数据的读写操作;

(3)前端代码业务层-vue、react等编写;DAPP可以使用

开发dapp的步骤

1、开发智能合约:一般使用solidity语言进行开发,选用以太合约、bsc合约等;

2、部署智能合约:一般使用remix工具进行部署,先在测试环境中进行部署智能合约,申请对应的测试币;

3、开发dapp前端:使用前端框架进行开发,前端设计到和钱包的连接、调用合约、数据查询等内容;

环境搭建

主要需要解决的问题是模拟链(毕竟真链上的操作都是要花钱的)、钱包和合约的问题;

1、链可以用ganache进行模拟

2、钱包用MetaMask

3、solidity既然是一个编程语言,并且要跑再EVM上,那就有编写、编译、测试和调试的地方,这里推荐使用remix

3.2.4部署和调用

DApp在被调用之前需要先部署到以太上,主要分为部署和调用两部分;

(1)部署

一个DApp可以由多个智能合约组成,因此部署一个DApp也就是同时部署多个智能合约,那么部署一个智能合约的流程图如下:

智能合约使用RPC调用以太的钱包、Web3.js等工具;

Web3.js将合约部署到以太中的Solc编译器中;

编译器将编译后的字节码返回;

将合约字节码以及相关参数发送到以太的节点中;

以太部署节点后返回合约地址以及二进制接口(ABI)

(2)调用

部署好的合约可以进行调用,前端调用主要依赖MetaMask插件,前端的Web3 Provider是与特定的以太节点相连,可以直接使用

web3调用,下图展示了前端调用合约的一般流程。

智能合约:存在于区块链上的代码片段。它们在区块链内操作,且不可更改。

节点/Web3提供者:telegram:jt9119,要从区块链获取数据,需要节点或Web3提供者;节点运行区块链的副本。节点是web3开发人员栈的重要组成部分,因为没有节点,web3库就无法与智能合约交互。它们充当进入区块链领域的门户。

资讯标签:

智能合约
上一篇: 无
下一篇: 无