Skip to content
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

Add Ability to Specify A Relayer to Relay Your Packet #1835

Open
3 tasks
schnetzlerjoe opened this issue Jul 30, 2022 · 3 comments
Open
3 tasks

Add Ability to Specify A Relayer to Relay Your Packet #1835

schnetzlerjoe opened this issue Jul 30, 2022 · 3 comments
Labels
core needs discussion Issues that need discussion before they can be worked on type: feature New features, sub-features or integrations

Comments

@schnetzlerjoe
Copy link

schnetzlerjoe commented Jul 30, 2022

Summary

Hello! I am starting to build a high-power IBC relayer in Julia using Julia's task system and multi-threading architecture (https://github.com/schnetzlerjoe/julia-relayer). I am doing so for two projects I am working on that focus on institutions. In the relayer, I am adding support for specifying the accounts you would like to relay for.

I was then thinking why that does not happen on the packet creation side, where you can specify a relayer you would like to relay the packet for you and that packet then could only be submitted based on a specific relayer account specified.

Not sure of the drawbacks here but I can see it being super useful for an institution who would prefer to just run their own relayer in-house and run their packets through that relayer only.

Problem Definition

It could help bring better use cases and adoption on the institutional side. Also could support faster relaying theoretically if someone wants to run one process that solely runs for themselves.

Proposal

The way I think it could work would be a param in the packet that specifies the relayer account that can relay for you. If that relayer account is empty, proceed as normal with any relayer but if not a check occurs on the submission of the packet that ensures the submitted packet is being submitted by the right relayer.


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged/assigned
@crodriguezvega crodriguezvega added needs discussion Issues that need discussion before they can be worked on type: feature New features, sub-features or integrations core labels Aug 1, 2022
@crodriguezvega
Copy link
Contributor

Hi @schnetzlerjoe, thanks for opening an issue with this idea.

I think the use case is not completely clear to me yet... Some initial questions that popped up:

  • What would be the reasons for the institutional user to make sure that their relayer is the only one allowed to relay the packet?
  • What would be the problem for the institutional user if their packets are relayed by any other relayer?

@schnetzlerjoe
Copy link
Author

@crodriguezvega Of course!

  • What would be the reasons for the institutional user to make sure that their relayer is the only one allowed to relay the packet?

It would be the same reasons that institutions tend to favor private cloud over public or a combo of the two. Security, reliability and in this case, speed. Of course the software is built soundly, audited and all but bugs happen and things occur and if institutions flood in and are sending $10M tx's on the regular, it would be a major layor of comfort to run your own relayer that relays your packets.

On top of that, if I'm someone that wants to run a relayer to relay tx's, maybe I do not want to run other people's tx's (and pay for them) but would rather just to run my tx's.

-What would be the problem for the institutional user if their packets are relayed by any other relayer?
I kinda mentioned this above, but it wouldn't be a problem I would say. It just comes down to preference, use case and functionality which by adding this feature allows.

@crodriguezvega
Copy link
Contributor

crodriguezvega commented Apr 30, 2024

@schnetzlerjoe if you're still interested in this feature, you might want to check out cosmos/ibc#1099. Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core needs discussion Issues that need discussion before they can be worked on type: feature New features, sub-features or integrations
Projects
None yet
Development

No branches or pull requests

2 participants