https://github.com/repcomm/datasync
decentralized graph data, and contracts using PKI, libertarian idealism and TypeScript
https://github.com/repcomm/datasync
contract-management decentralized-network decentralized-storage javascript libertarianism peer-to-peer typescript
Last synced: 10 months ago
JSON representation
decentralized graph data, and contracts using PKI, libertarian idealism and TypeScript
- Host: GitHub
- URL: https://github.com/repcomm/datasync
- Owner: RepComm
- Created: 2022-05-02T19:56:25.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-07-03T23:23:53.000Z (over 3 years ago)
- Last Synced: 2025-01-28T08:51:40.930Z (12 months ago)
- Topics: contract-management, decentralized-network, decentralized-storage, javascript, libertarianism, peer-to-peer, typescript
- Language: TypeScript
- Homepage:
- Size: 147 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: ReadMe.md
Awesome Lists containing this project
README
# @repcomm/datasync
## Code
- [anarchy.ts](./src/anarchy.ts)
- [store.ts](./src/store.ts)
## Methodology
### Pushing data mutation contract
1. Detect mutation needed
2. Detect if concerns peers
3. Create contract with proposed mutation, Time To Live, and sign with private key
4. Distribute contract to peers
5. Await response
6. Verify public keys / validate decisions
7. Apply local copies of mutation based on consensus
### Receiving data mutation contracts
1. Listen to contract proposals
2. Receive individual contract
3. Verify contract w/ creator's public key
4. Determine boolean decision and sign with private key
5. Distribute decision
## Reasoning
- 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