基于契约abi解码事务输入

ethereum_input_decoder的Python项目详细描述


#以太坊输入解码器
基于以太坊契约abi解码事务输入和构造函数参数。尝试从4bytes.directory中查找函数
signature散列。

*python3
*建议作为[eth abi\69]的pr(https://github.com/ethereum/eth abi/pull/69)
*繁重的工作是由[pyetherchain]中使用的“eth abi”
*来解码和转储智能合约代码输入




>将事务输入和构造函数参数解码为在[0xab7c74abc74abc04cc04c48d18d1bdad5dcb2615153fc8780f83e]上(https://etherscan.io/address/0xab7c74abc74c04c48d18d1bdad5dcb26153fc8780f83e)的合同输入和构造函数参数解码为更人性化的符号。




>用法:




Python-m以太坊输入解码器-a./test/contract_abi_ab7c74abc0c4d48d1bdad5dcb26153fc8780f83e.json-c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b6b3a7640000000000000000000000000000000000000000000000000000000000000000000000000000002903cadbe271e057edef15340b52a58d7424f000000000000000000000000000ba7caCFC110C1B37CF5818816C4A819C304040EA70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000007040404044CD536D49E349E349E349E349E368f28599E192AE09900000000000000000000000000000000724242424242424242424242424247445E38E3292994577C05ba46B-T 0x797AF62798D790D3133030304949494924242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424242424B2812040133D7707

输出:

==[构造函数]==
原始:'0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000b6b3a7640000000000000000000000000000000000000000000000000000000000000000000000000000000000002903cadbe271e057edef15340b52a5898d7424f000000000000000000000000000ba7cA1BCF210C1B37CF5818816C4A819C3040EA7000000000000000014CD6536D449E3F6878F2D6859E1FF92AE0990E600000000000000000002441E42277445E38e02dfc3494577C05BA46B'
描述:构造函数无((地址[])所有者=('0x2903CADBE271e057EDEF157340B52A5898D7424F','0xBA7CA1BCF1210C1B37CF5818816C4A819C3040EA7','0x14CD6536D449E3F6878F2D6859E1FF92AE0990E6','0x0C2441E42277445E38e02dfc3494577c05ba46b',(uint256)_required=2,(uint256)uDayLimit=1000000000000000000)返回()

==[输入]==
raw:'0x797af62798d790d133e0049215669e09b55a0b59d586c95f94c2d56b2812040133d7707'
描述:函数确认((bytes32)_h=b'\x98\xd7\x90\xd3\x13>;\x00i!Vi\xe0\x9bU\xa0\xb5\x9dXl\x95\xf9L-V\xb2\x81@\x13=w\x07')返回((bool))




0x166eb4cb962ee1f494711b8726972fc3b23519008854ca46e73383da53ae339ee82ee7d00000000000000000000000000000000000000000000000000000000000000000000000


输出:

**在线查找**

==[输入]=
raw:'0x166eb4cb962ee1f494711b8726972fc3b23519008854ca46e73383da539ee82ee7d000000000000000000000000000000000000000000000000000000000000000000000000000000000'
描述:函数put((bytes32)arg0=b'\x16n\xb4\xcb\x96.\xe1\xf4\x94q\x1b\x87&;\x97/\xc3\xb25\x19\x00\x88t\xcaf\xe73\x83\xdas\xae\xa39',(uint256)arg1=10788888817940666868686868686868686868686868686868686868686868686868686362626262656868909060293440099797171455757577272727241323667456)returns()



api

``python
``python
``python
ca=contractabi(json.loads(json.loadi(json.abi)str)
prin打印(ca.desc描叙输入(b'797aaf…3d7707’))))
(ca.desc描叙输入(b'797aa
功能确认(bytes32)=B'\x98\xd7\x90\xd3\x13>;\x00i!vi\xe0\x9bu\xa0\xb5\x9dxl\x95\xf9l-v\xb2\x81@\x13=w\x07')返回值((bool))
打印(ca.descripe_构造函数(b'000000…5ba46b“))
#构造函数无((地址[])所有者=('0x2903cadbe271e057edef157340b52a5898d7424f'、'0xba7ca1bcf210c1b37cf5818816c4a819c3040ea7'、'0x14cd6536d44e34e3f6878f2d6859e1ff92ae0990e6'、'0x0c24441e42277445e38e02dfc34577c05ba46b'),(uint256)所需=2返回()“BR/>‘Python’BR/>未经ABI准备就绪的BR/>从EthuMuthIn译码器Abimeod < BR/> BR/>打印(AbimeTo.OfFixIntPo.Posich(UTILS.StruthtoHyb字节(TxPin)))(Bys/StRytotoSyb字节(TxPin))((Byes32)ARG0= B′\x16n\xb4\xcb\x96\\xE1\xf4\x94q\x1b\x87 and(UTIN 256)天限=100000000000000000)\x97/\xc3\xb25\x19\x00\x88T\xcaF\xe73\x83\xdaS\xae\xa39',(uint256)arg1=107881794066862459943708362605633226548960293440099717145720257241323667456)返回()
``

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java根据两个数组的值对数组进行排序   具有自签名证书和NTLM代理的java Maven SSL repo错误   java自定义字体按钮不工作AndroidStudio   java通过Spring MVC web应用程序向客户端发送文本文件   Java Spring Web服务SOAP身份验证   ANT property environment=“env”无法在JAVA中检索它,但如果作为ANT命令运行,则可以正常工作   java是为spring mvc rest api或spring boot api对应用服务器的每个新请求创建的服务、存储库和组件的新实例吗?   java私有静态最终字符串未完成其工作   PKCS12的安全Java密钥重新处理   java JPA继承表每类SQLSyntaxErrorException