-
Notifications
You must be signed in to change notification settings - Fork 52
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Precompile that exposes execution-node's API #208
Comments
In principle, could this be achieved using SUAVE's HTTP precompile? It seems like it would be a straightforward matter of providing you with the execution node's URL, and then leaving it up to you to perform JSON-RPC requests. (cc @ferranbt) |
I guess this would work if you know the port of the execution node. But not sure how cautious one should be with directly exposing the local node. |
Agreed. I'm going to bring this up with the team and get back to you. |
@halo3mic so the issue is that we don't want to leak the node's IP:PORT tuple, as it exposes us to DoS. However, I believe this recently-added feature would satisfy your requirement. Instead of
You would do something like |
Oh cool! This seems like it resolves the issue Do you think this still exposes the execution node to ddos - you can do CCR using this new feature without any cost (if MEVM execution fails no gas is paid)? |
I believe you are correct, though this is on our list of things to figure out "in the future". Off-the-cuff, gating this through a CCR allows us to do things like load balancing, or possibly introducing some sort of gas tax. TBD. Glad this fixes the issue! 🙂 |
Describe the feature you would like
A precompile that exposes execution-node's API. For starters
eth
namespace would be enough.Afaik now one needs to call external node to get the latest block or account balance, this seems unnecessary as there is a local node running alongside SUAVE.
It is true that some values could be obtained by
eth_call
to a contract exposing block API (like the Maker's MulticallV2), but this again seems more convoluted that it should be.Additional context
No response
The text was updated successfully, but these errors were encountered: