问题标签 [evm]
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.
ethereum - 以太坊如何验证在交易过程中我有足够的钱进行交易?
我正在研究以太坊,我有一个问题,以太坊如何在交易过程中验证我的余额是否足以执行交易?是当前的智能合约做这个检查,是 EVM,以某种方式从世界状态树中检索数据?提前谢谢你!
c++ - 我尝试使用 cmake 制作项目,但它调用了错误 ld: library not found for -levmc::loader
我在 github 中git 克隆了一个名为evmc的项目。
我尝试通过 cmake 在这个项目中构建示例文件夹。但这里有一些错误称为:
和cmake .
和make
这是我的 CMakeLists:
这是我的项目结构:
我已经升级了我在这个项目中使用的所有工具:clang、cmake...
但是还是不能正常运行,怎么办?
ethereum - 如何通过 evm 在合约中运行函数?
我是solidity和以太坊的新手。我在 github 上构建了evmc项目以在本地运行我的智能合约。
solc
我首先通过并使用以下命令编译我的合同:
这是我的合同hello.sol
:
我成功生成了字节码,并使用 evmc 通过以下命令运行此合约:
并得到这个结果:
我注意到我使用的 gas 是 0,但是这个合约的结果是 Success。我猜该合同可能没有正确运行。而且问题很少。
- 我真的能成功运行这份合同吗?
- 我如何
b
在这份合同中打印我的返回值? - evm 如何找到并运行合约中的函数?
--input
(文件中有一个选项./build/evmc/bin/evmc
,我尝试在这个选项后面加上renderHelloWorld()
'签名操作码942ae0a7
。但结果是一样的。) - 如果我构建一个函数需要一些输入,我该如何给出这些输入值?
先感谢您。
blockchain - “VM Exception while processing transaction: revert”,当运行chainlink节点并尝试部署TestnetConsumer合约时?
场景是通过 Remix 在 mathchain 上部署ATestnetConsumer.sol时,按照官方教程在 mathchain 上运行一个节点,这是一个兼容 EVM 的公共链。我完成了 Oracle 合约和 LINKToken 合约的部署,并在 mathchain 上成功运行了节点,但是在尝试部署 TestnetConsumer 合约时,它显示:
有人知道为什么吗?
TestnetConsumer 合约列表如下:
solidity - Is possible to call a function from another contract in assembly ? Solidity
This would be the code, but my problem is, I was doing the ethernaut challenge for solidity, and my code is always running out of gas, then I think "if I use assembly it cost less gas", so I ran into a problem, it is possible to call a function getter from another contract in assembly?
This is my code:
ethereum - ZoKrates 无效证人产生有效证据
一般来说,我是 ZoKrates 和 ZK 的新手。我对证人的工作方式感到困惑。如果我计算出无效的证人,验证者仍然会验证证明是正确的。例如(基于 ZoKrates“开始”)。
鉴于此程序:
然后运行以下命令:
当我跑
它返回通过。
但是,如果我提供一个不好的价值,compute-witness
它仍然会通过。例如:
我显然在这里误解了一些东西,但是在花了几个小时在线阅读不同的内容之后,我仍然不确定是什么。
solidity - 试图理解 solc 发出的 EVM 字节码
我试图理解solc
. 我的源程序如下;分配dummy = 0x1234567890
和z = 0xdeadbeef
是为了更容易在生成的字节码中识别函数的开始。
这是我使用的字节码solc --bin --asm --opcodes --optimize tmp.sol -o .
:
我的问题:
- 偏移量 0x6d 处的 JUMPI 指令似乎以 0x59 作为其目标,但偏移量 0x59 处没有指令。偏移量不是从 0 开始计算的吗?还是我正在查看创建字节码而不是部署的字节码的问题?
- 生成的代码包含不解码为有效操作码 (
INVALID
) 的字节。这些也显示在输出中solc --opcodes
,因此这不是反汇编程序错误。这些字节的目的是什么?
谢谢。
interop - 从 ETH 智能合约中读取 BSC 智能合约上代币的总供应量
我的 BSC 智能合约需要知道 ETH 智能合约上另一个代币的总供应量。在智能合约网络之间读取区块链数据似乎很困难。有谁知道如何读取在 EVM 兼容的智能合约网络之间共享相同地址的代币的总供应量?
python - 通过智能合约检查调用者的有效性
我有一个类似这样的智能合约
我有一个用 Python 编写的后端代码:
我怎样才能做到这一点?通过使用签名?
谢谢你的帮助。
solidity - 了解反编译的solidity合约
谁能帮我理解这个反编译的Solidity
函数
我理解对合约(0xbb4..)的函数调用,但balanceOf
条件transfer
是什么,所有这些是什么WBNB
if/else
require
ps合约部署在https://bscscan.com/address/0x01f3c4bc6d027557c4b841e9f5cb19bb8a082b6a#code
谢谢