木星链 木星链
Ctrl+D收藏木星链
首页 > 火币下载 > 正文

ETH:半开源合约的 Web3 调用

作者:

时间:1900/1/1 0:00:00

注:本文来自@gm365推特,MarsBit整理如下:

半开源合约的Web3调用

某些智能合约没有在etherscan验证源代码,也就无法轻易获取其ABI

但“诡异”的是,调用某些合约函数,却可以在网页上完整显示调用的函数名、参数名、具体参数值

针对这样的“半开源”合约,可以有一些简单的方法,实现Web3调用

前言

之前写过一个,关于《未开源智能合约的调用》,方法主要是在网站前端扒拉JS代码,定位到ABI代码,然后实现调用

https://twitter.com/gm365/status/1521058983838380032

欧洲央行执委:将采取一切必要措施确保数字欧元成为真正的公共产品:金色财经报道,欧洲央行在 4 月份的一份进展报告中阐述了其目前对数字欧元的看法。欧洲央行执行委员会成员Fabio Panetta 在介绍这些调查结果的演讲中表示,我们将采取一切必要措施,确保数字欧元成为真正的公共产品。但所有欧洲机构都必须发挥自己的作用,以实现我们使数字欧元取得成功的共同目标。[2023/5/29 9:47:56]

这个方法当然可以用来实现“半开源”合约调用,但这个方法实在有些反人类,疯狂扒拉JS代码也很费眼神,我们暂时先跳过

CryptoPunks系列NFT近24小时交易额增幅超180%:金色财经报道,OpenSea数据显示,CryptoPunks系列NFT近24小时交易额为188 ETH,24小时交易额增涨幅度为181%,交易额排名位列OpenSea第15。[2022/8/24 12:44:05]

etherscan显示机制

没有开源的合约,为何可以在etherscan显示详细的调用参数信息?

其实秘密都在这个4bytessignature上

如果其他已开源合约有相同的“签名”,那么面对一个未开源合约,但签名相同的函数,etherscan和小狐狸会直接判定为同一函数并尝试解析

Coinbase表示遇到连接问题:6月21日,市场消息:加密货币交易所Coinbase表示遇到连接问题。(金十)[2022/6/21 4:42:59]

解决方案

针对这类能被正常显示的函数,其实有一个相对简单的方法:

通过函数信息反向生成ABI代码

15行代码,代码出自人类好帮手:chatGPT4

经过测试与对照,和原始ABI一字不差

签名库

如果etherscan上未显示,还可以先去这个签名库碰碰运气

https://4byte.directory/signatures/

注意:这个4四节签名是有可能重名的!某些小狐狸钓鱼合约,使用的就是这个“漏洞”。

同一个签名,可能对应多个函数,正常使用还得自行判断

标签:ETHTHERSCHERtogetherbnb手游下载官网Fable Of The Dragonvrsc币主网Ethereal网名

火币下载热门资讯
以太坊:科普 | 什么是Layer2?

这是白话区块链的第1910期原创?作者|火火出品|白话区块链根据DuneAnalytics的数据,截至2022年底,以太坊主链上的日均交易数超过了170万笔.

1900/1/1 0:00:00
BOB:那个在旧金山被杀的人,为加密支付奉献了一生

4月4日凌晨2点35分,旧金山索马大街300号附近发生了一起刺伤事件。据旧金山警察局称,伤者被送往医院抢救,但因伤势过重不治身亡.

1900/1/1 0:00:00
ROL:简述 Scroll zkEVM 方案:如何实现去中心化的愿景?

今年2月底,基于ZKRollup的以太坊Layer2网络Scroll正式推出了向所有用户开放的Alpha测试网,并表示将在未来几个月内改进zkEVM性能.

1900/1/1 0:00:00
稳定币:新设计:基于ordinals的铭文稳定币系统

1前言稳定币一直是数字货币的一个重要的需求点,锚定法币的稳定币,由于背后抵押物存在风险,例如近期usdc的不稳定,硅谷银行的破产,直接导致了usdc脱锚.

1900/1/1 0:00:00
DOO:ZkSync 主网上线两周后的用户与采纳数据分析

大约两周多以前,zksync成为了第一个上线#zkEVM主网的项目让我们仔细研究一下一些用户和采纳指标 Genesis正考虑出售已筹集资金偿还债权人.

1900/1/1 0:00:00
DEX:ADEX 封测版本测试指导教程

前言经过了技术团队的精细打磨,Astarter宣布他们的第二个原生产品DEX封闭测试已于4月11日启动.

1900/1/1 0:00:00