找到约 13 条结果

文章 Solidity中的多重继承

...ps://learnblockchain.cn/article/727)的 ERC1155,AccessControl都实现``supportsInterface``函数,如果你的合约同时继承这两个合约,需要重写此函数。 ## 定义2个基类`BaseContact1`和 ```BaseContact2```, 使用`virtual`关键字。 ``` contract BaseContact1 {...

文章 在Solana发行元数据代币(纯JS完成)

...新令牌 EpnTRJksPN5GicrhpLDHhW67dArQuYPnf8B1rWx7u96k 区块浏览器验证 ![](https://infura-ipfs.mora.host/ipfs/QmWyncpfwfCcGVe72jQwvM2rQh92D93t8tb8mj5GeEnFyx) ### 九、全部代码 ```javascript // 引入各模块 import { percentAmount, generateSigner,...

文章 无头浏览器puppeteer自动调用Dapp交易

...是用无头浏览器通过操作dapp页面进行自动化交易。用到puppeteer和@chainsafe/dappeteer两个库; puppeteer:无头浏览器 @chainsafe/dappeteer: 是封装好的在无头浏览器操作MataMask插件的库 以下是示例代码 ``` const puppeteer = require('puppe...

问题 使用合约卖出地址持有的代币兑换成WETH并留在合约内

...用Uniswap要怎么实现以及到底要授权哪些地址(我都授权都不行),最好是Pair Swap、Universal Router Execute这种方式,谢谢。如果有用,另有谢意。 1. 个人试过下面这种UniswapV2交易方法,地址已授权合约使用代币,还是会出现错...

文章 EOA委托 - OpenZeppelin文档

...托 [EIP-7702](https://learnblockchain.cn/docs/eips/EIPS/eip-7702) 引入一种新的交易类型 ( `0x4`),它授予 [外部拥有账户 (EOA,Externally Owned Accounts)](https://ethereum.org/en/developers/docs/accounts/) 将执行委托给智合约的力。 这对于使传统的 EVM ...

文章 在 Anchor 中读取账户余额:Solana 的 address(account).balance

...alance().accounts({ acct: pubkey }).rpc(); }); }); ``` 本例引入 UncheckedAccount,与此前文章有所不同。 --- ## **什么是 UncheckedAccount?** UncheckedAccount 是 Anchor 中的账户类型,指示不对账户的所有权进行检查。 ### **背景** - 默...

文章 Remix v0.46.0 更新日志

...使用 transient 存储或其他坎昆分叉的功,现在可以使用,Remix VM 的默认 EVM 版本现在是坎昆。 ![image.png](https://img.learnblockchain.cn/attachments/2024/03/q80npAve660675214852b.png) **默认的 Solidity 版本现在是0.8.25** Solidity编译器的默认版...

文章 合约中的缺失或不当输入验证

## 智合约中的缺失或不当输入验证 解在 Solidity 中不当输入验证如何导致攻击。探索保护智合约和防止安全风险的最佳实践。 在 [Solidity](https://learnblockchain.cn/article/13659) 中,用户或外部合约通过调用函数与智合约...

文章 EIP-1153: Transient storage opcodes 簡介

## **簡介** [EIP-1153](https://eips.ethereum.org/EIPS/eip-1153) 新增transient storage,是EVM除 `storage`、 `memory`、 `calldata` 之外新的儲存空間, 可以透過兩個新的EVM opcode `tstore`、 `tload` 做儲存和讀取,儲存的行為和storage相同,是將 `boolean`...

文章 交易所安全系列 -- 谈业务逻辑测试

...讲一讲攻击手法。 攻击者在某交易所前端文件中发现转账时所调用的API接口。按照流程,用户验证身份通过后调用此API转账,但由于验证在前,转账在后,两者并非同时进行,导致攻击者直接调用转账API接口发起转账可以...

问题 求助!!!无法获取Uniswap交易对的信息

我正在使用Vyper写一个合约用来获取Uniswap的交易对信息,我可以获取到`allPairsLength`的信息,但是我把从`allPairsLength`获取到参数传到`getAllPairs`里面时每次都是0,而不是获取到的`allPairsLength`参数,我也不知道我哪里有问题,懂...

文章 EVM—calldata存储空间详解

...参数数据,因为静态数据的长度在编译的时候就已经确定,其长度已经被写死字节码中,所以在calldata中只需要存放参数的值即可。而对于动态数据,其长度在编译的时候尚不得知,所以动态参数数据长度和参数值都会被存放...

问题 阅读USD0合约代码时,找不到写入 Usd0StorageV0 的地方?

...0bf67631dc6cd7bc5b6e8da8190acf5#readProxyContract 这个代码中 定义 Usd0StorageV0 的结构如下: ``` struct Usd0StorageV0 { IRegistryAccess registryAccess; mapping(address => bool) isBlacklisted; IRegistryContract registryContract; ITokenMappi...