当前位置: 首页 > news >正文

合肥网站建设-中国互联/新网站友链

合肥网站建设-中国互联,新网站友链,土特产网站建设状况,网站广告招商应该怎么做文章目录什么是以太坊什么是以太币智能合约分布式应用(DApp)账号(地址)以太坊虚拟机网络节点挖矿智能合约开发利用truffle把智能合约部署到Ganachetruffle测试模块智能合约搭建到前端什么是以太坊 以太坊Ethereum是一个基于公共区块链的分布式计算平台,可用于构建基…

文章目录

    • 什么是以太坊
    • 什么是以太币
    • 智能合约
    • 分布式应用(DApp)
    • 账号(地址)
    • 以太坊虚拟机
    • 网络节点
    • 挖矿
    • 智能合约开发
    • 利用truffle把智能合约部署到Ganache
    • truffle测试模块
    • 智能合约搭建到前端

什么是以太坊

以太坊Ethereum是一个基于公共区块链的分布式计算平台,可用于构建基于区块链的分布式应用。
它使用专用的加密货币–以太币(Ether-简称Eth)来支撑应用运行。
以太坊还提供了对数字货币进行编程的能力,即智能合约,开发人员可以利用此能力,开发基于区块链的分布式应用,例如,博彩、游戏等应用

什么是以太币

比特币网络中有比特币,以太坊网络中的虚拟货币就是以太币。
以太币的用处在于防止网络被滥用,和作为报酬。
我们在网络上部署的智能合约的操作是需要网络来提供计算功能,当然这就需要支付一定的价钱。在以太坊网络中我们需要支付的是叫gas的东西,就是使用以太币来支付。

以太币的主要单位是以太(Ether或eth),也就是一个以太币。它的最小但是是wei。
一个以太币=10的18次方个wei

智能合约

自己理解的智能合约就是通过编程来实现的以太币的流动相关操作。他不需要人为干预就可以执行各种操作。并且提供了可追踪性。
当前比较流行的用于编写智能合约的语言就是solidity
可以说以太坊网络的精华部分就是以太币和操作以太币的智能合约

分布式应用(DApp)

普通的应用是:前端+后台服务器
分布式应用是:前端+智能合约(区块链网络)

账号(地址)

以太坊网络中账号分外部账号和合约账号。
外部账号就是普通用户的账号地址。合约账号就是每个合约的地址。
也就是说每个用户以及每个合约都有地址。只要有地址,就可以存以太币。

以太坊虚拟机

学过计算机组成的应该知道汇编语言虚拟机、操作系统虚拟机、高级语言虚拟机的概念。
这里的以太坊虚拟机的概念类似,也就是可以运行高级语言的一种虚拟的机器。

当我们写好solidity后,通过以太坊虚拟机上的编译器编译生成可执行的字节码程序,然后就部署到以太坊虚拟机网络中,分配到不同的区块,并且每个区块都有不同的地址,这里的地址就上上面提到过的账号(地址)

网络节点

这个地方摘抄一下百度来的

以太坊(Ethereum)网络是一个公共的区块链网络,网络中包含2种网络节点:
全节点、轻节点
全节点 包含了从初始区块开始的全部区块,这些区块中包含了所有的交易历史记录,这些信息是区块链完整性的证据,可用于区块和交易的校验。通常矿工节点应该是全节点。

轻节点 只包含区块头形成的链,为节省空间,去除了区块体。这些类型的节点主要用于电子钱包,电子钱包必须是轻量级的,因此不能存储整个区块链。轻节点不会用来校验区块或交易,但区块链是一个网络,如有必要轻节点可以向全节点请求区块数据。

轻节点的优势在于,可以更快地启动和运行,可以在计算/内存受限的设备上运行,例如手机。

挖矿

以太坊(Ethereum)与其他公共区块链一样,使用工作量证明机制确保区块链网络正常运行。

矿工进行工作量证明计算,即挖矿。

智能合约开发

目前主要用solidity静态高级语言来编写智能合约。
利用truffle框架来编译、部署、测试。
利用Ganache来进行本地区块链环境搭建

利用truffle把智能合约部署到Ganache

在之前已经做过了,这里只贴一个链接
https://blog.csdn.net/weixin_42172261/article/details/106915121

truffle测试模块

测试脚本需要写在test目录下。

//把合约分配给testContract变量
const testContract = artifacts.require('Test');
contract('testContract', (accounts) => {//暂时理解为1个it就是一个测试,当前先不测试的用xitit('test success, equal', async() => {const tContract = await testContract.deployed();const value = await tContract.getX();assert.equal(value, 5);})
})

到这里突然想起一件事来,在truffle console下面使用testContract变量就不可以,在这里就可以。实在搞不懂为什么。
在truffle console下,需要使用合约的名字才能访问,而使用在迁移文件中定义的变量名就不可以。
有大佬知道怎么回事麻烦告知一下。

然后命令truffle test, 下面是成功和不成功的两个结果

智能合约搭建到前端

贴链接:https://blog.csdn.net/weixin_42172261/article/details/106961815

http://www.lbrq.cn/news/1249057.html

相关文章:

  • 免费简历模板word文档/网站关键字优化公司
  • 哪个网站建设公司/自己建网站的详细步骤
  • 常用ppt模板网站/能打开的a站
  • 如何让我的网站被百度收录/淘宝摄影培训推荐
  • 南充建网站/网站seo具体怎么做?
  • 做最好的导航网站/搜索引擎网站有哪些
  • VS2010做网站登录页面步骤/网站没有友情链接
  • 网络工程和软件工程哪个好/郑州网站优化渠道
  • 运河经济开发区建设局网站/站长工具的网址
  • 网站建设公司浙江/互联网广告营销是什么
  • 榆林做网站/防晒霜营销软文
  • 外国做问卷可以赚钱的网站/正规的推文平台
  • 网站建设业务员招聘/阿里云万网域名查询
  • 建站网站教程视频/淘宝运营培训机构
  • 海淀网站设计公司/郑州网站建设哪家好
  • 免费网站建设ppt/重庆seo技术教程博客
  • 烟台市建委网站/开发网站用什么软件
  • 网站建设说明/西安官网seo公司
  • 网站制作推广/镇江seo公司
  • 缪斯国际设计公司官网/鸡西seo
  • 大气蓝色企业网站模板/企业做推广有用吗
  • 网站建设和编程/华为seo诊断及优化分析
  • 医疗网站优化怎么做/搜索引擎优化网页
  • 大连科技网站制作/爱链接
  • 传奇页游平台/枫林seo工具
  • 网站建设受众/semi final
  • 嘉兴企业网站建设/关键词搜索排名软件
  • 哪个网站可以做化学实验/网站建设公司业务
  • 网站建设zhuitiankeji/百度大数据
  • 网站空间和数据库空间/谷歌seo是什么
  • C++的入门学习
  • Springboot2+vue2+uniapp 实现搜索联想自动补全功能
  • 超声波自动气象站如何精准预警极端天气
  • Linux 中 Git 操作大全
  • Git 分支管理:从新开发分支迁移为主分支的完整指南
  • 一文搞定JavaServerPages基础,从0开始写一个登录与人数统计页面