WebOfTrust / keria

KERI Agent in the cloud
https://keria.readthedocs.io/en/latest/
Apache License 2.0
18 stars 29 forks source link

Provide a way to rollback partially signed multisig events #213

Open lenkan opened 6 months ago

lenkan commented 6 months ago

Consider a group X consisting of Member A and Member B. If both member A and member B create an event for Group X at the same time.

  1. Member A issue credential C1 (sequence number: 1)
  2. Member B issue credential C2 (sequence number: 1 because they are still unaware of the event created by Member A)
  3. Member A sign credential issuance event for C2 (what is the sequence here ?)
  4. Member B sign credential issuance event for C1 (sequence ?)

After step 2, member A and member B has diverging KELs for Group X. We need a way to rollback or resolve this conflict.

From question on discord:

Phil Feairheller — Today at 2:10 PM

In the command line of KERIpy there is a multisig rollback command for deleting partially signed events at the tip of your KEL. I don’t think anyone has added that functionality to KERIA.

edeykholt commented 1 month ago

Would a general design approach to consider for resolving various multisig group ceremonies that could get stuck be to introduce a time-to-live concept? In such an approach where these ceremonies are stuck would get reset (expired) because the initial request would expire if not fully committed after the default TTL for that type of request or an explicit TTL in the request.