首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得所有特定的加密平台合同?

如何获得所有特定的加密平台合同?
EN

Stack Overflow用户
提问于 2022-04-03 12:37:43
回答 1查看 138关注 0票数 0

通常,我们需要ABI来解码事务中的数据。现在,我想问一问,我们是否能够获得指定密码货币的所有契约。例如,我有一批txs等待解码,它们都调用MakerDao契约。如何通过数据库中的一次抓取获得所有的MakerDao ABI?

或者这就是我过去得到ABI合同的方式

代码语言:javascript
复制
connector = f"https://api.etherscan.io/api?module=contract&action=getabi&address={Address}&apikey={self.Etherscan_key}"
self.Abi = basic_json.loads(requests.get(connector).text) 

如何知道哪个平台(如MakerDao、Aave或化合物等)这份合同属于什么?

EN

回答 1

Stack Overflow用户

发布于 2022-04-04 15:32:13

不幸的是,这是不可能的。要做到这一点,既需要能够检测契约是否实现ABI (不可能),也需要枚举所有智能契约(甚至更不可能)。

由于ABI实际上是抽象的,因此无法检测智能契约是否实现ABI。Ethereum本身不知道什么是函数。

枚举所有智能契约的可能性更小,因为每个地址实际上都是智能契约(是的,包括您自己的钱包)。然而,即使是检测非空地址也是非常困难的,因为它需要通过整个区块链搜索契约部署(这将显示为以太传输到零地址)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71725969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档