ipfs-inactive / dynamic-data-and-capabilities

[ARCHIVED] Dynamic Data and Capabilities in IPFS Working Group
59 stars 6 forks source link

Identifying authorship in state-based CRDTs #26

Open pgte opened 6 years ago

pgte commented 6 years ago

Auditing the authors of an op-based CRDTs is very accessible: all the operations can have a distinct author.

State-based CRDTs don't have this property. How should a state-based CRDT keep track of the operations and authors? Ideally, this knowledge should be eventually garbage collection as the operations get older.

satazor commented 6 years ago

Related to #7 #8 and https://github.com/ipfs-shipyard/peer-star/pull/15

There's a specific section in the RFC explaining how to verify authorship via signatures: https://github.com/ipfs-shipyard/peer-star/blob/c249510b4873a9a4b58b245bf97dbe48513a2689/docs/rfc-identity.md#verifying-signatures

pgte commented 5 years ago

@satazor how does this relate to the latest work being done on versidag? Will we able to verify the authorship in history? If so, is it something provided by versidag?

satazor commented 5 years ago

I think they aren’t directly related but you can store what you want in versidag. In case of discussify, whenever a new head comes from another replica, we must somehow only accept that head if it was added by the same identity that created the comment initially and discard otherwise.

satazor commented 5 years ago

This whole topic needs to be discussed in depth, I’m mostly worried about the CRDT part. Once that is solved, any side-chain based on versidag will also be solved. Even if there are cases where it isn’t, we may add a filter option to the resolve function of versidag they could be verifying signatures.