问题标签 [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.

0 投票
1 回答
321 浏览

ethereum - 以太坊如何验证在交易过程中我有足够的钱进行交易?

我正在研究以太坊,我有一个问题,以太坊如何在交易过程中验证我的余额是否足以执行交易?是当前的智能合约做这个检查,是 EVM,以某种方式从世界状态树中检索数据?提前谢谢你!

0 投票
0 回答
2095 浏览

c++ - 我尝试使用 cmake 制作项目,但它调用了错误 ld: library not found for -levmc::loader

我在 github 中git 克隆了一个名为evmc的项目。

我尝试通过 cmake 在这个项目中构建示例文件夹。但这里有一些错误称为:

cmake .

make

这是我的 CMakeLists:

这是我的项目结构:

我已经升级了我在这个项目中使用的所有工具:clang、cmake...

但是还是不能正常运行,怎么办?

0 投票
0 回答
73 浏览

ethereum - 如何通过 evm 在合约中运行函数?

我是solidity和以太坊的新手。我在 github 上构建了evmc项目以在本地运行我的智能合约。

solc我首先通过并使用以下命令编译我的合同:

这是我的合同hello.sol

我成功生成了字节码,并使用 evmc 通过以下命令运行此合约:

并得到这个结果:

我注意到我使用的 gas 是 0,但是这个合约的结果是 Success。我猜该合同可能没有正确运行。而且问题很少。

  1. 我真的能成功运行这份合同吗?
  2. 我如何b在这份合同中打印我的返回值?
  3. evm 如何找到并运行合约中的函数?--input(文件中有一个选项./build/evmc/bin/evmc,我尝试在这个选项后面加上renderHelloWorld()'签名操作码942ae0a7。但结果是一样的。)
  4. 如果我构建一个函数需要一些输入,我该如何给出这些输入值?

先感谢您。

0 投票
1 回答
455 浏览

blockchain - “VM Exception while processing transaction: revert”,当运行chainlink节点并尝试部署TestnetConsumer合约时?

场景是通过 Remix 在 mathchain 上部署ATestnetConsumer.sol时,按照官方教程在 mathchain 上运行一个节点,这是一个兼容 EVM 的公共链。我完成了 Oracle 合约和 LINKToken 合约的部署,并在 mathchain 上成功运行了节点,但是在尝试部署 TestnetConsumer 合约时,它显示:

有人知道为什么吗?

TestnetConsumer 合约列表如下:

0 投票
1 回答
789 浏览

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:

0 投票
1 回答
44 浏览

ethereum - ZoKrates 无效证人产生有效证据

一般来说,我是 ZoKrates 和 ZK 的新手。我对证人的工作方式感到困惑。如果我计算出无效的证人,验证者仍然会验证证明是正确的。例如(基于 ZoKrates“开始”)。

鉴于此程序:

然后运行以下命令:

当我跑

它返回通过。

但是,如果我提供一个不好的价值,compute-witness它仍然会通过。例如:

我显然在这里误解了一些东西,但是在花了几个小时在线阅读不同的内容之后,我仍然不确定是什么。

0 投票
0 回答
137 浏览

solidity - 试图理解 solc 发出的 EVM 字节码

我试图理解solc. 我的源程序如下;分配dummy = 0x1234567890z = 0xdeadbeef是为了更容易在生成的字节码中识别函数的开始。

这是我使用的字节码solc --bin --asm --opcodes --optimize tmp.sol -o .

我的问题:

  1. 偏移量 0x6d 处的 JUMPI 指令似乎以 0x59 作为其目标,但偏移量 0x59 处没有指令。偏移量不是从 0 开始计算的吗?还是我正在查看创建字节码而不是部署的字节码的问题?
  2. 生成的代码包含不解码为有效操作码 ( INVALID) 的字节。这些也显示在输出中solc --opcodes,因此这不是反汇编程序错误。这些字节的目的是什么?

谢谢。

0 投票
1 回答
344 浏览

interop - 从 ETH 智能合约中读取 BSC 智能合约上代币的总供应量

我的 BSC 智能合约需要知道 ETH 智能合约上另一个代币的总供应量。在智能合约网络之间读取区块链数据似乎很困难。有谁知道如何读取在 EVM 兼容的智能合约网络之间共享相同地址的代币的总供应量?

0 投票
2 回答
39 浏览

python - 通过智能合约检查调用者的有效性

我有一个类似这样的智能合约

我有一个用 Python 编写的后端代码:

我怎样才能做到这一点?通过使用签名?

谢谢你的帮助。

0 投票
0 回答
399 浏览

solidity - 了解反编译的solidity合约

谁能帮我理解这个反编译的Solidity函数

我理解对合约(0xbb4..)的函数调用,但balanceOf条件transfer是什么,所有这些是什么WBNBif/elserequire

ps合约部署在https://bscscan.com/address/0x01f3c4bc6d027557c4b841e9f5cb19bb8a082b6a#code

谢谢