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

Malfeasance V2 #331

Open
8 tasks
Tracked by #320
fasmat opened this issue Jul 16, 2024 · 0 comments
Open
8 tasks
Tracked by #320

Malfeasance V2 #331

fasmat opened this issue Jul 16, 2024 · 0 comments
Assignees

Comments

@fasmat
Copy link
Member

fasmat commented Jul 16, 2024

Description

With ATX v2 new and more efficient malfeasance proofs are needed. Additionally the publisher and handler for malfeasance proofs needs to be updated to be more flexible/generic in handling proofs.

Malfeasance proofs

There are new malfeasance proofs required for checking the contextual validity of a merged ATX

malfeasance proof tracking issue
1a. A PoST included in an ATX is invalid spacemeshos/go-spacemesh#6141
1b. same as above, but for v1 initial ATXs spacemeshos/go-spacemesh#6433
2. ATXs by an identity form one single chain without branches spacemeshos/go-spacemesh#6309
3. ID already married (same node ID in multiple marriage certificates) spacemeshos/go-spacemesh#6218
4. two ATXs referencing the same marriage certificate in the same epoch spacemeshos/go-spacemesh#6335

Malfeasance publisher and handler

  • Malfeasance V2: Publisher and Handler go-spacemesh#6143
  • TODO: update existing malfeasance proofs and add handler / publisher for other domains
    • add new malfeasance proofs that wrap legacy proofs to be validated by malfeasance handler2
    • migrate existing proofs to new encoding and move them from identities table to malfeasance table
    • update malfeasance sync to fetch using v2 and to return an empty list when queried by peers
    • update existing malfeasance gossip handler to wrap legacy proofs and forward them to handler2
    • retire malfeasance v1 publisher and replace with publisher2 that creates wrapped legacy proofs
    • retire malfeasance v1 gossip handler and sync after 1 minor version
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: 🏗 Doing
Development

No branches or pull requests

1 participant