问题标签 [web3py]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 无法可靠地验证签名的消息
我正在使用本教程:https ://web3py.readthedocs.io/en/stable/web3.eth.account.html#sign-a-message
当我将这些参数传递给智能合约signed_message.messageHash
中signed_message.signature
的恢复签名者(如下所述)函数时。它给出了正确的地址。但是当我将参数tokens, contractaddress
(上面使用的)传递给keccak256(abi.encodePacked(token,address(this)))
solidity时,生成的消息与 不同signed_message.messageHash
,反过来我得到一个不同的地址作为ecrecover
.
我检查了输出是什么keccak256(abi.encodePacked(..))
。我发现它与 sig 值相同
我做了什么:
制作 ERC20 代币。
设置频道
我的目标:
签署消息(使用 web3py)
用solidity验证签名的消息。
像这样:
用户将传递一些参数:如合约地址和代币数量以及签名消息。我将验证它
这无法正常工作。我没有得到正确的地址作为输出。
请帮忙..
python - 使用 web3.py 和 infura.io 监听 Uniswap 合约事件
我想使用 web3.py 和 infura.io 来监听 Uniswap 工厂事件,但是我不太确定该去哪里这样做。
这是一个链接:https ://uniswap.org/docs/v2/smart-contracts/factory/
更具体地说,我想听听这个PairCreated
事件。
ethereum - 如何读取以太坊交易的数据字段
我正在尝试使用数据字段在本地以太坊区块链上发布带有消息的交易。我不知道如何检索消息。
代码:
输出:
b'你好'
0x48656c6c6f
我想检索原始消息“你好”。
python-3.x - 该库已重命名为 `eth-utils`。`ethereum-utils` 包将不再接收更新。请更新您的依赖项
当我尝试将 Python 文件链接到智能合约时,我运行python3 "project name ".py
命令出现错误
python - web3.py 从 get 函数以奇怪的格式返回
我正在开发一个 python 应用程序。这个应用程序只是为了从区块链中获取数据。在 web3.js 中一切正常,但我需要在 python 中完成(客户端想要一个 python 应用程序)。这一切几乎都很好;该脚本完成了它需要做的事情,但是当调用 get 函数时,我得到一个奇怪的输出(使用 remix 或 web3.js 上的 get 函数,而我编写的 nodeJs api 非常完美):
The output that i need is like this (i don't understand why the py output is like that):[0xe93a3dd8372f9800e489e38e625b639c6ac4a3a2621d9af0251dda42b7d9c4e3,0xe93a3dd8372f9800e489e38e625b639c6ac4a3a2621d9af0251dda42b7d9c4e3]
python脚本很简单(我还在写):
这是客户写的智能合约:
感谢您的帮助!
python - 从 Trezor 硬件钱包发送签名交易
我一直在尝试编写一个简单的 web3.py 程序来从我的 Trezor 发送交易。我可以在我的 Trezor 上签署交易,执行此操作的函数 (ethereum.sign_tx()) 返回交易的 V、R 和 S 签名的元组,如下所示:
我的问题是如何将这些签名转换为可以使用 Web3.eth.sendRawTransaction() 函数发送的序列化形式。完整代码是:
web3 - AttributeError:模块“web3.geth”没有属性“txpool”
当我打电话
我收到一个错误
我的geth配置
为什么我无法访问 txpool?
python - 如何确保延迟等待 asyncio.wait(...) 的协程?
考虑以下一对协程:
这里ensureDeferred
,在评估函数时,会导致builtins.RuntimeError: no running event loop
被提升。
在我的案例中,现实世界的应用程序试图确保库protocol.WebSocketCommonProtocol.recv
中的延迟websockets
。
该web3
库websockets
用于连接到提供程序,我正在尝试创建一个简单的机制来添加和处理背压。
添加类似的东西reactor.callInThread(asyncio_event_loop.run_forever)
没有帮助,因为显然它是特定于线程的东西。
这里到底发生了什么?我怎么ensureDeferred
会有这样的协程?
python - 在 aws api 网关中找不到“GLIBC_2.18”错误
我正在用 aws chalice 编写 Api。我的代码在本地运行良好。
但我得到以下回复:
{ "message": "Internal server error" }
我的 requirements.txt 文件包含:
在签入 aws api 网关时。发现以下错误:
错误信息: