区块链
文章平均质量分 61
尾张大
这个作者很懒,什么都没留下…
展开
-
Gnosis Safe 的使用
什么是Gnosis Safe?大多数以太坊用户习惯于使用单一密钥钱包,通常称为外部拥有账户(EOA)。这些帐户使用私钥保护,可以将其转换为用户的 12 个单词的“种子短语”,也就是助记词。如果该私钥以任何方式泄露,则资金可能会被盗。通常合约都是有一个作为onwer的EOA账户管理员,这个管理员的权限通常会很大,那么如果这个账户的私钥泄露,就很可能造成资产的丢失等其他风险。Gnosis Safe 提供了这个解决方案,它会通过创建一个代理合约,通过管理这个代理合约来做到权限的控制。此时只要将业务合约的权限原创 2022-05-11 10:48:29 · 1841 阅读 · 0 评论 -
探究与以太坊智能合约的交互调用
以太坊智能合约调用交互原创 2022-04-02 15:35:47 · 9775 阅读 · 0 评论 -
uniswapv3 path编码 代码
main() .then(() => process.exit(0)) .catch(error => { console.error(error); process.exit(1); });// 0x76b06a2f6df6f0514e7bec52a9afb3f603b477cd000bb8d0a1e359811322d97991e03f863a0c30c2cf029c000bb8c011a73ee8576fb46f5e1c5751ca3b9fe0af2a6f.原创 2021-11-03 18:55:39 · 473 阅读 · 0 评论 -
0x protocol分析之挂单以及take Limit Order
0x protocol分析之take Limit Order关于0x是什么的问题这里就不再啰嗦,基本的概念有很多解释的文档,这里主要展示了limit order 的挂单和吃单流程。0xprotocol的流程概述0x中一些问题的解释0x 限价单挂单吃单流程0x的市价单的交互官方文档写的比较清楚,操作起来也比较简单 。这里主要记录一下限价单的挂单和吃单。挂单按格式准备一个订单OX中限价的订单的数据结构 struct LimitOrder { IERC20TokenV06原创 2021-08-01 13:32:07 · 710 阅读 · 4 评论 -
Hardhat Error: Transaction reverted: function call to a non-contract account
Please check you hardhat.config.js。出现这个错误是因为节点环境问题,hardhat默认是本地环境,那么需要启动本地节点。如果是相应的测试网,需要启动的之后指定网络环境。 --network xxxx或者在hardhat.config.js 中指定默认的网络环境例如:defaultNetwork: "rinkeby",networks: {hardhat: {},rinkeby: {url: "https://rinkeby.infura.io/v3原创 2021-07-30 13:58:10 · 846 阅读 · 0 评论 -
期权交易平台Hegic项目合约分析
概述加密货币的期权交易平台,目前中心化的如Deribit, 去中心化的则是Opyn和Hegic比较靠前。这里我们仅对Hegic的V1版本做简要的分析,如果有分析不到位,或者错误的地方还请评论留言一起交流和讨论。Hegic 的主要理念是提供了一个流动性池(Liquidity Pool),使得流通性的提供者形成收益共享,风险共担的关系。期权的卖方流动性的提供者,称为writer,添加完流动性后自动成为卖方。卖方对期权没有任何选择,只是添加完流动性,等待买方购买,收益就是买方的权利金。卖方的行为卖方原创 2021-07-11 20:12:37 · 877 阅读 · 1 评论 -
解决使用web3j时出现 Error: only replay-protected (EIP-155) transactions allowed over RPC
使用 以太坊自建网关节点进行调用时出现 only replay-protected (EIP-155) transactions allowed over RPC 的错误,如果使用的是infura的则不会。解决方案:在代码中原来使用的是TransactionEncoder.signMessage(rawTransaction, credentials) 这个方法。指明当前节点所在的chainId即可正常调用,替换为下面这个方法TransactionEncoder.signMessage(rawTr原创 2021-07-02 15:20:36 · 21783 阅读 · 6 评论 -
以太坊智能合约交互调用,web3.js,web3j两种方式实现
导语接上篇文章 《使用hardhat部署solidity智能合约到测试网》部署完合约之后,那么如何区块链进行交互呢?这节的主要内容就是使用web3.js和web3j来与区块链以及链上的合约进行交互。其中web3.js是属于javascript的版本的,web3j是java版本的。合约交互的类型以太坊可以看做一个公共数据库,这个数据库提供了读、写功能,但是不能删除。发起交易其实就是将交易写库,写库不能白写,其他节点帮你记录了数据,你要支付一些费用给帮你记录的节点,这个费用就是我们经常看到的gas。原创 2021-07-01 17:13:02 · 7476 阅读 · 0 评论 -
使用hardhat 部署 solidity智能合约到测试网
概述在刚开始学solidity 智能合约的时候,我们大多数都是通过Remix 在线编辑器完成合约编辑部署和测试等流程的工作。毫无疑问,remix在调试的时候是十分的方便的。但是随着编写的合约越来越多,仅仅通过remix来部署就会有些吃力了,各种的参数传递,合约之间的部署的先后关系,以及合约文件的管理,都需要能够工程化的处理这些流程。目前以及有一些比较成熟的开发,调试,部署等全流程的框架了,其中用的比较多是truffle和hardhat。 hardhat 相对truffle 更新功能也更完善,使用起来也很原创 2021-06-23 10:13:30 · 14025 阅读 · 1 评论