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

[Design]: Cap on max sBTC pegged per transaction #791

Open
3 tasks
aldur opened this issue Nov 7, 2024 · 5 comments
Open
3 tasks

[Design]: Cap on max sBTC pegged per transaction #791

aldur opened this issue Nov 7, 2024 · 5 comments
Assignees
Labels
design making a design decision.

Comments

@aldur
Copy link
Collaborator

aldur commented Nov 7, 2024

Completing the issue description and arriving at a conclusion is the deliverable of this issue.

Design - Cap on max sBTC pegged per transaction / account

If #562 is implemented, then a whale might take over the full amount of sBTC available for peg-in.
This would be detrimental to other users, DeFi, etc.

1. Summary

2. Context & Purpose

Relevant Research Discussions

External Resources

3. Design

3.1 Proposed Component Design

Similarly to #562, Signers could discretionarily refuse peg-in requests over a given threshold. This would not solve the sybil attack, nor user peg-ins spanning multiple transactions. The implementation of the Signer binary can expose such feature through a configuration option.

3.1.1 Design Diagram

3.1.2 Considerations & Alternatives

As for #562, the max amount could be written on-chain for public display.

3.2 Areas of Ambiguity


Closing Checklist

  • The design proposed in this issue is clearly documented in the description of this ticket.
  • Everyone necessary has reviewed the resolution and agrees with the proposal.
  • This ticket has or links all the information necessary to familiarize a contributor with the design decision, why it was made, and how it'll be included.
@aldur aldur added the design making a design decision. label Nov 7, 2024
@aldur aldur added this to the sBTC: Nice to have milestone Nov 7, 2024
@aldur aldur added this to sBTC Nov 7, 2024
@github-project-automation github-project-automation bot moved this to Needs Triage in sBTC Nov 7, 2024
@djordon
Copy link
Contributor

djordon commented Nov 7, 2024

Capping the maximum of sBTC pegged in per transaction is simple to implement in the signers. We can do it per account too, but it's a bit more annoying.

@cylewitruk
Copy link
Member

cylewitruk commented Nov 11, 2024

My concern with the account-level cap is the tracking of withdrawals. If the user has sent/spent the sBTC then should their current peg be reduced? If not, then they may not have any sBTC left to peg-out and thus reduce their peg-in limit and be able to peg-in more.

Otoh, it's also really easy to just do multiple peg-ins to multiple addresses, thus circumventing any account caps.

So the question I have is if this is even feasible (without some advanced tracking of sBTC across the entire blockchain)?

@andrerserrano
Copy link

@cylewitruk an account-level cap is not the intent of this issue. The intention of this issue is simply meant to encourage broad participation in the sBTC launch. The idea is to prevent a single entity from buying out one Bitcoin block and taking the entire cap (roughly 1,000 BTC), squeezing everyone else out in the process. By creating a mechanism that requires at least several Bitcoin blocks to fill, it may result in wider participation and increase the overall distribution of sBTC at launch.

@cylewitruk
Copy link
Member

cylewitruk commented Nov 12, 2024

@andrerserrano yeah I get the high-level goal -- this issue specifically mentions an account-level cap (in the title) so I was just giving my spontaneous thoughts on that particular point.

@andrerserrano andrerserrano changed the title [Design]: Cap on max sBTC pegged per transaction / account [Design]: Cap on max sBTC pegged per transaction Nov 12, 2024
@andrerserrano
Copy link

Good call. I've updated the title to reflect this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
design making a design decision.
Projects
Status: Needs Triage
Development

No branches or pull requests

4 participants