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

feat(x/swingset): allow third party to provision wallet #10923

Merged
merged 3 commits into from
Feb 5, 2025

Conversation

mhofman
Copy link
Member

@mhofman mhofman commented Jan 31, 2025

closes: #10912

Description

Relax the requirement that an account must be provisioned by the submitter of the provisioning message. This allows 3rd parties like dapp owners to gift a smart wallet to their new user.

Security Considerations

I don't believe the original restriction had any actual security reason. A cosmos account can be created without permission, so anyone could already provision a swingset account. It just required an extra transfer of the fee amount.

This new mechanism does mean that it's possible to create a swingset account for an address that no-one has the private keys for, but I don't believe there is any security impact to that (same as throwing the keys away after self provision).

Scaling Considerations

None

Documentation Considerations

This change should be documented for chain users.

Testing Considerations

Updated unit tests.

Upgrade Considerations

Requires a chain software upgrade.

@mhofman mhofman requested a review from a team as a code owner January 31, 2025 20:04
Copy link
Member

@michaelfig michaelfig left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code LGTM, and your security rationale also seems fine. I'll have to defer to @heavypackets examination of the change in security model, but once that's done, I'm willing to approve.

Copy link

@heavypackets heavypackets left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see any impact to security posture with this change. LGTM.

@mhofman
Copy link
Member Author

mhofman commented Feb 5, 2025

Can I get a formal approval from either of you?

@mhofman mhofman added the automerge:squash Automatically squash merge label Feb 5, 2025
Copy link

cloudflare-workers-and-pages bot commented Feb 5, 2025

Deploying agoric-sdk with  Cloudflare Pages  Cloudflare Pages

Latest commit: b1c001d
Status: ✅  Deploy successful!
Preview URL: https://b04f0edd.agoric-sdk.pages.dev
Branch Preview URL: https://mhofman-10912-relax-provisio.agoric-sdk.pages.dev

View logs

@mergify mergify bot merged commit d2b661f into master Feb 5, 2025
83 checks passed
@mergify mergify bot deleted the mhofman/10912-relax-provision branch February 5, 2025 18:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge:squash Automatically squash merge
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Remove requirement of fee-based wallet provision for same account check (Improve wallet provisioning UX)
3 participants