- Detect mutation needed
- Detect if concerns peers
- Create contract with proposed mutation, Time To Live, and sign with private key
- Distribute contract to peers
- Await response
- Verify public keys / validate decisions
- Apply local copies of mutation based on consensus
- Listen to contract proposals
- Receive individual contract
- Verify contract w/ creator's public key
- Determine boolean decision and sign with private key
- Distribute decision
- Handling disagreement
- 50% or more consensus required for decisions
- Artificial decision weight inflation (creating multiple voting identities)
- Do nothing (sort of)
- Find other reasons to discriminate duplicate voting identities (ex: idle identities detection, etc)
- introduce proof of stake