![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
以太坊
文章平均质量分 54
软件工程小施同学
区块链、DevOps、小程序、软件工程
展开
-
以太坊 分片是什么
以太坊分片转载 2023-02-23 16:19:55 · 376 阅读 · 0 评论 -
以太坊 事务ID txID transaction ID transaction hash怎么计算
【代码】以太坊 事务ID txID transaction ID transaction hash怎么计算。转载 2023-02-17 00:32:41 · 464 阅读 · 0 评论 -
solidity address(this)是什么意思
转账接收者、发起者问题问题描述基础知识1、address(this)2、msg.sender2.2 账户地址分析问题解决1、我的问题问题描述准备写个转账的代码时,发现solidity语言中转账的函数有三个,分别是send、transfer、call。Solidity中this和address(this)的区别 Solidity是一种高级编程语言,它是为实现智能契约而设计的。solidity中转账接收者与发起者的问题_wangzhiyuyeshou的博客-CSDN博客_address(this)转载 2022-11-24 11:10:21 · 916 阅读 · 0 评论 -
solidity msg.sender.transfer发送给谁
转账一定数量(以wei为单位)的以太币到指定的地址,遇到任何错误都将抛出异常。我们在Faucet例子中使用过这个方法,针对的是msg.sender这个地址,即msg.sender.transfer。发送给调用者自己,表示将该合约中的自己应有的以太坊退款到发送者自己的账户。原创 2022-11-16 19:32:56 · 1472 阅读 · 0 评论 -
以太坊 Optimistic Rollup 原理概览
从较高层级了解 Optimistic Rollups 如何工作的,以及解释为什么Optimism被构建为Optimistic Rollup。Optimism描述了一种依赖父区块链安全性的区块链设计。具体来说,Optimistic Rollup利用了父区块链的安全机制而不是自己使用某种机制。转载 2022-11-14 17:21:45 · 937 阅读 · 0 评论 -
如何建立可升级的代理合约以ERC20为例
顾名思义,就是可以升级的合约。(被打)一般来说,区块链最令人耳熟能详的就是不可窜改性,任何程序代码只要上链了就不能够更改了,这赋予了区块链最强大的功能,然后反面过来思考就是,万一你个合约写坏了,你也没有办法去更改,这不符合软体产业快速迭代的特性了,可升级合约就是为了解决此问题,以下我们会介绍这跟一般合约有什么不同,接着会教学建立的步骤。转载 2022-11-14 09:48:55 · 790 阅读 · 0 评论 -
以太坊 USDT-ERC20合约 注释版
第二步:检测ETH手续费是否大于0.0035ETH,大于则即可调用接口转出USDT ,转账完毕。ETH以太坊网络gas limit和gas price设置。第三步:ETH手续费不足则 调用之前准备的ETH手续费资金池地址,往这个地址里面转入至少0.0035的ETH。等下次执行转账时即可转账成功。第一步:首先通过获取地址余额接口(name=usdt_erc20),查询USDT余额包括ETH手续费余额。ERC20的USDT,就是以太坊的代币。转账手续费低,速度快。转载 2022-11-04 21:36:07 · 4564 阅读 · 0 评论 -
google bigquery如何查询以太坊ethereum数据 sql怎么写
【代码】google bigquery如何查询以太坊ethereum数据 sql怎么写。原创 2022-11-03 21:11:57 · 1226 阅读 · 0 评论 -
以太坊 数据规模 大小
该值表示用户要运行归档节点时需要下载的数据总量。这些归档节点存储以太坊区块链的完整快照,包括曾经发生的所有交易记录,这与典型的完整节点不同,后者仅记录已验证交易的分类账。大多数以太坊客户端选择只存储必要的区块链数据。运行以太坊区块链的归档节点现在已增长至超过4TB,一年内几乎翻了一番。以太坊的状态膨胀问题仍有待解决。...转载 2022-07-28 15:10:55 · 734 阅读 · 0 评论 -
区块链 以太坊 归档节点 和 全节点 区别
归档节点Archive Node「归档节点」是在全节点的基础之上,额外储存了每个区块高度的区块状态(个人帐户与合约帐户之当时余额等资讯),即针对每个区块高度当下的状态进行快照并存档。归档节点能让你快速回到某个区块高度去查询当下状态:例如你想要知道某一个帐户在区块高度#5,000,000的余额时便会派上用场。归档节点截至2020/05 的资料大小已经超过4 TB,对硬体要求相当庞大。通常只有特殊的服务如「区块链浏览器:Etherscan」或「RPC Endpoint Provider:In原创 2022-05-26 21:09:01 · 785 阅读 · 0 评论 -
truffle migrate 强制重新部署合约
truffle migrate --reset --network rinkeby命令格式truffle migrate [--reset] [--f <number>] [--to <number>] [--network <name>] [--compile-all] [--verbose-rpc] [--dry-run] [--interactive]除非特别指定,truffle migrate命令将从最后完成的迁移脚本开始运行。命令选..原创 2022-03-31 16:21:41 · 3015 阅读 · 0 评论 -
Truffle Openzeppelin 实例(2022版)
1. 构建目录结构打开cmd,新建一个文件夹,ooxxb,进入文件夹2. 用truffle初始化项目输入truffleinit3. 引入Openzeppelingithub地址npm install @openzeppelin/contracts可以看到项目文件夹下多了一个文件夹node_modulespackage.json文件里也多了一个依赖包,说明引入成功!4. 新建代币的solidity代码文件在cont...转载 2022-03-31 14:49:02 · 628 阅读 · 1 评论 -
NPM 常用命令和参数的意思
npminstallpackagename安装模块如不指定版本号 默认会安装最新的版本npminstallpackagename0.0.1安装指定版本的模块npminit这个命令会在当前目录生成一个package.json文件,这个文件中会记录一些关于项目的信息,比如:项目的作者,git地址,入口文件、命令设置、项目名称和版本号等等,一般情况下这个文件是必须要有的,方便后续的项目添加和其他开发人员的使用。npminstallpackagen...转载 2022-03-31 13:57:04 · 543 阅读 · 0 评论 -
Failed to connect to Etherscan API at url https://api-rinkeby.etherscan.io/api
但是浏览器可以访问代理要配置到终端原创 2022-03-31 12:23:05 · 823 阅读 · 3 评论 -
用 Truffle 插件自动在Etherscan上验证合约代码
译文出自:登链翻译计划译者:Tiny熊本文永久链接:learnblockchain.cn/article…校对者: 无Etherscan是以太坊上最受欢迎的浏览器。 它的一大功能是验证智能合约的源代码。 使用户可以在使用合约之前通过源码了解合约的功能。 从而增加用户对合约的信任,也因此使开发者受益。通过Etherscan网站表单提交代码是验证代码的主要方法,但是这需要很多手动工作。 需要输入诸如编译器版本和构造函数参数之类的内容,并且需要提交展开后的合约源代码(译者注:这里是指当合约引用了其他转载 2022-03-31 10:37:21 · 577 阅读 · 5 评论 -
dotenv 是什么 怎么使用
dotenv 使用npm 官方文档的这样介绍 dotenv: Dotenv 是一个零依赖的模块,它能将环境变量中的变量从 .env 文件加载到 process.env 中。使用在项目中安装 dotenvnpm install dotenv根目录下创建 .env 文件HOST=localhostPORT=3000根目录下 index.js 下引入 dotenv 并使用require('dotenv').config({ path: '.env' })// 使用con转载 2022-03-31 10:31:02 · 5534 阅读 · 0 评论 -
PollingBlockTracker - encountered an error while attempting to update latest block:
把超时调大原创 2022-03-31 10:22:28 · 905 阅读 · 1 评论 -
Remix恢复已部署的合约
一、导入源码可以连接本地二、选择之前的编译器进行编译三、注入web3,选择matemask登录,账号是之前部署合约的那个账户四、填入合约地址,点击“At Adrress"下面就会显示该合约的函数了然后就可以交互了...原创 2022-03-31 10:13:29 · 1227 阅读 · 2 评论 -
Truffle Migrations(迁移)- 多个合约一起部署 如何链接库
通过本文可以学习到:Truffle 的迁移合约Migrations.sol有啥作用? 多个合约如何一起部署; 如果针对不同网络、不同账号进行条件部署; 如何链接库。Migrations(迁移)是开发人员使数据及其支持结构的一套自动化部署的方法, 它们对于管理新软件版本的部署非常有用,因此并非仅限于区块链开发。Truffle migrations 可以让我们把合约推到以太坊链上(不管是本地网络、测试网络还是主网),以及与其他合约链接或使用初始化合约数据。migrations(迁移)真正..转载 2022-03-31 09:30:26 · 841 阅读 · 0 评论 -
mac remix导入本地项目
安装remixdsudo npm install -g @remix-project/remixd第二步 remix连接本地sudo remixd -s <absolute-path-to-the-shared-folder> --remix-ide http://remix.ethereum.org注意命令最后的 http://remix.ethereum.org 部分,如果你登陆的remix网址是 https://remix.ethereum.org,要替换为https原创 2022-03-30 23:36:55 · 694 阅读 · 0 评论 -
truffle Error: Cannot find module ‘truffle-hdwallet-provider‘
After this @truffle/hdwallet-provider will be successfully installed - then reference in required file as follows:var HDWalletProvider = require("@truffle/hdwallet-provider");nodejs - Error: Cannot find module 'truffle-hdwallet-provider' - Ethere...原创 2022-03-30 23:19:57 · 934 阅读 · 0 评论 -
truffle部署到测试网rinkeby
部署到测试网以上仅仅展示了一个智能合约最简单的步骤。如果需要实现更多的功能,就需要在测试链上进行测试了。链上测试的重点在于对于交易的格式以及交易的数据正确性等等。目前著名的以太坊测试链主要是:Ø ropsten(https://ropsten.etherscan.io/)Ø kovan(https://kovan.etherscan.io/)Ø rinkeby(https://rinkeby.etherscan.io/)他们的区别在于共识机制的不同,所幸这些测试网都有区块...原创 2022-03-30 23:16:53 · 1898 阅读 · 0 评论 -
truffle 常用配置
部署命令初次部署:trufflemigrate重新部署:trufflemigrate --reset部署文件先修改./migrations/2_initial_migration.js注意,文件名的前缀是数字,后缀是描述。为了记录迁移是否成功运行,需要有编号的前缀。后缀是纯粹为了人类的可读性和理解力。1.基本配置artifacts.require()在迁移开始时,我们通过artifacts.require()方法告诉Truffle我们想与哪些合同进行交互。 这个方法类似...转载 2022-03-30 18:51:33 · 420 阅读 · 0 评论 -
Ubuntu下Truffle框架的搭建 2022年最新版
一、安装nodejs和npmubuntu中node和npm的卸载与安装_软件工程小施同学的博客-CSDN博客二、安装1.环境本人已使用Ubuntu18.04,已安装如下:g++安装,执行命令:sudo apt-get install g++libssl-dev安装,执行命令:sudo apt-get install libssl-devnodejs安装,执行命令:sudo apt-get install nodejs2. 还需要安装solc安装:sudo snap instal原创 2022-03-30 17:35:13 · 3343 阅读 · 0 评论 -
truffle console用法 总结
4.1.创建自己的合约在./contract目录下创建一个自己的合约文件Greeter.sol,其代码如下:contract Greeter { address creator; string greeting; function Greeter(string _greeting) public { creator = msg.sender; greeting = _greeting; .原创 2022-03-30 17:01:38 · 1853 阅读 · 0 评论 -
truffle Migration是什么
Migrationmigration 的概念理解 migrations(迁移)目录的内容非常重要。这些迁移文件用于将合约部署到区块链上。之前的项目中通过在 node 控制台中调VotingContract.new 将投票合约部署到区块链上。以后,我们再也不需要这么做了,truffle 将会部署和跟踪所有的部署。Migrations(迁移)是 JavaScript 文件,这些文件负责暂存我们的部署任务,并且假定部署需求会随着时间推移而改变。随着项目的发展,我们应该创建新的迁移脚本,来改变链上的合约转载 2022-03-30 16:27:50 · 309 阅读 · 0 评论 -
truffle部署指定的合约到指定网络
摘要: 在truffle中部署指定的合约,可以根据文件的Index来区别,比如,/migrations目录下,有如下三个文件: 1_inital_migrations.js 在truffle中部署指定的合约,可以根据文件的Index来区别,比如,/migrations目录下,有如下三个文件: 1_inital_migrations.js 2_deploy_HWT.js 3_deploy_SZT.js 部署第2个合约:2_deploy_HWT.js,使转载 2022-03-30 16:23:43 · 628 阅读 · 0 评论 -
truffle version/usr/local/lib/node_modules/truffle/build/385.bundled.js:65232 catch cli.bundled.js:6
truffle version报错/usr/local/lib/node_modules/truffle/build/385.bundled.js:65232 } catch { ^SyntaxError: Unexpected token { at createScript (vm.js:80:10) at Object.runInThisContext (vm.js:139:10) at Module._compile (module.js...原创 2022-03-30 11:20:23 · 277 阅读 · 0 评论 -
ChainIDE 3. 使用truffle部署合约
1.使用truffle部署合约truffle使用以太坊虚拟机 (EVM) 为区块链提供世界一流的开发环境、测试框架和资产管理,旨在让开发人员更轻松地进行开发。从ChainIDE 2.1版本开始支持Terminal功能,可以使用后台进行truffle框架的测试编译和部署功能。本教程目的在于教导如何在chainIDE中使用truffle,而具体的truffle用法请查阅其相关文档。打开命令行点击右下角的”输出“,再点击中间的“命令行”,再点击“truffle”,即可切换到命令行界..转载 2022-03-29 14:10:18 · 645 阅读 · 0 评论 -
在etherscan上传合约源码
我们创建合约之后。开源去etherscan上传合约源码。上传的时候需要有2个地方注意的。1、合约源码只能是一个文件。如果合约里面有import等导入。需要把导入的复制进来。做成一个完整的合约源码。(或者用其他工具来做成一个文件)2、创建合约的参数。创建合约的参数,可以用区块的input data的内容。去掉合约的BYTECODE的内容。得到参数。其中合约的BYTECODE是remix中complie-->details-->BYTECODE-->.转载 2022-03-29 10:52:51 · 441 阅读 · 0 评论 -
Etherscan 上传和验证合约源码
为什么要上传智能合约的代码呢?公开token的源码,增加透明度和投资人的信任度; 上传源码后,人们可以在Etherscan查看当前token的源码,同时也可以很方便的看到token的相关信息。上传代码后,通过源码验证和没有通过源码验证有什么区别?#合约代码没有通过 Verify Your Contract Source Code的样子#合约代码通过 Verify Your Contract Source Code的样子# 下面我们来看看怎么通过验证...转载 2022-03-29 09:45:40 · 698 阅读 · 0 评论 -
solidity import @是什么意思
Importing & Loading Source Files in Solidity是针对Remi的,导入一个库There are two main reasons for loading external files into Remix:to import a library or dependency(for files you will NOT be editing) to load some files for manipulation, editing and pla.原创 2022-03-28 21:40:54 · 1265 阅读 · 0 评论 -
Openzepplin ERC-721中的函数
本次部署Showcase当中使用的合约来自Openzepplin,Opensea的github。使用原生ERC-721,我们接下来在教程当中所讲介绍到的函数就是属于这个合约的。ERC-721当中的函数balanceOf(): 返回由_owner 持有的NFTs的数量。ownerOf(): 返回tokenId代币持有者的地址。approve(): 授予地址to具有tokenId的控制权,方法成功后需触发Approval 事件。setApprovalForAll(): 授予地址_opera.原创 2022-03-28 21:02:00 · 527 阅读 · 0 评论 -
truffle和remix区别
Moonbeam入门开发|第五课:介绍使用Remix IDE部署ERC-721(NFT)合约原创 2022-03-28 20:36:43 · 1046 阅读 · 0 评论 -
区块链以太坊开发测试网汇总
测试网Rinkeby: Authenticated Faucet浏览器https://rinkeby.etherscan.io/opensea测试网https://testnets.opensea.io/原创 2022-03-28 20:24:29 · 723 阅读 · 0 评论 -
获取测试网rinkeby
https://faucets.chain.link/rinkeby原创 2022-03-28 20:12:47 · 625 阅读 · 1 评论 -
以太猫合约地址
0x06012c8cf97bead5deae237070f9587f8e7a266dCryptoKitties: Core | Address 0x06012c8cf97bead5deae237070f9587f8e7a266d | Etherscan原创 2022-03-27 23:00:25 · 3151 阅读 · 0 评论 -
Metamask + remix:在ropsten测试链上取出已经部署的合约并进行一些操作
本地再次编译已部署合约这里我们部署的还是之前说到的这个librarytest查找已部署合约在ropsten上的地址:这是本人的最近三个交易,看看合约创建的交易:很好,看到我的地址了:0xcc67ff70259fa82d4bd29e9075268816af9df9b8回到remix使用ataddress功能点击at address 把合约搞出来:你看,确实搞出来了,然后我们把11 replace 成22,来:来确认一下交易:确实,这个记录上链了:最后转载 2022-03-27 22:31:09 · 573 阅读 · 0 评论 -
区块链入门教程openzeppelin库详解
一个在以太坊上建立安全智能合约的框架,目前集成与Truffle和Embark·安装步骤(ubuntu)新建一个自己的合约目录,进入合约目录 Truffle init npm init -y 该步生成一个package.json,内置一些配置信息 npm install -E openzeppelin-solidity 导入:import ‘openzeppelin-solidity/contracts/ownership/Ownable.sol’;·模块access:地址白名单...转载 2022-03-27 11:13:40 · 992 阅读 · 0 评论 -
OpenZeppelin是什么
OpenZeppelinOpenZeppelin Contracts 是一个用于安全智能合约开发的库。它提供了 ERC20 和 ERC721 等标准的实现,您可以按需部署或扩展以满足您的需求,还提供 Solidity 组件来构建自定义合同和更复杂的分散系统。安装npm install @openzeppelin/contractsOpenZeppelin 合同具有稳定的 API,这意味着在升级到较新的次要版本时,您的合同不会意外中断。用法要编写您的自定义合同,请导入我们的合同并转载 2022-03-27 11:02:35 · 1594 阅读 · 0 评论