ecosistema-social-decentral.../protocols/gun.md

94 lines
3.2 KiB
Markdown
Raw Normal View History

2020-04-26 19:10:06 +02:00
# GUN
## Stats
- 11K+ [github](https://github.com/amark/gun) stars
- 3M ~ 30M [downloads](https://www.jsdelivr.com/package/npm/gun) monthly
## Whitepaper
https://stanford.edu/~nadal/A-Decentralized-Data-Synchronization-Protocol.pdf
## Stack
- [ERA](https://www.youtube.com/watch?v=1HJdrBk3BlE) (economic system)
- [AXE](http://axe.eco) (routing)
- [DAM](https://gun.eco/docs/DAM) (networking)
- [RAD](https://gun.eco/docs/RAD) (storage)
- [SEA](https://gun.eco/docs/SEA) (security)
- [GUN](http://gun.eco) (data)
- [HAM](https://gun.eco/distributed/matters.html) (conflict resolution)
## Bluesky
- Creating customizable interfaces: See [Party](https://party.lol/) which reuses any existing website (gmail, twitter, Facebook, reddit, etc.) for E2EE messages.
- Communities setting norms: See my article on [emotionally intelligent social networks](https://hackernoon.com/a-new-kind-of-social-network-emotional-intelligence-e45dcddb1bdb), also check out the wild [Notabug](https://notabug.io/t/notabug/comments/59382d2a08b7d7073415b5b6ae29dfe617690d74/welcome-to-notabug) experiment.
- Keeping public conversation from fragmenting: Check out ["How to fix the internet"](https://hackernoon.com/what-is-wrong-with-the-internet-and-how-to-fix-it-c67w32no) by [Martti Malmi](https://twitter.com/marttimalmi) (Satoshi's 1st Bitcoin contributor) which is exactly this.
## Network structure
Decentralized/p2p.
Uses data replication via message passing.
It daisy-chains, [routes](https://gun.eco/docs/Routing), & relays messages.
Think of it as doing also what the internet, routers, switches, etc. already does.
But also works over most existing transports: WebRTC, UDP multicast, TCP/HTTP -> Websocket, etc.
## Identity
Iris adds a [reputation system](https://medium.com/@mmalmi/learning-to-trust-strangers-167b652a654f) to SEA which provides the underlying cryptographic Security, Encryption, & Authorization.
The most important differentiating factor is that we support multi-device login that is cryptographically secure yet uses "normal" UX.
This technique can be extended to secure password resets (no servers)
And, password recovery using a 3-Friend-Authorization approach that we cutely call 3FA (please don't use this with your Bitcoins).
- Decentralized identity (ECDSA)
- Key management (Iris)
- Key verification (Iris)
- Key backup (GUN+SEA)
- Reputation, Trust (Iris)
- Account recovery (3FA)
- Privacy (ECDH, AES)
#### Data
- Data models (graphs, key/value, document, table, relational, hyper-graphs)
- Data availability ([AP](https://gun.eco/docs/CAP-Theorem), strongly eventually consistent)
#### Money
- Business models (Open Source, donation, enterprise, + decentralized PaaS, dBaaS, SaaS, Marketplace)
- Payment (AXE bandwidth credits)
#### Filtering
- Queries (GUN, [GraphQL](https://github.com/brysgo/graphql-gun), historical prototypes of SQL, Mango [Mongo])
- Curation (Iris, also see [NAB](https://notabug.io/t/notabug/comments/59382d2a08b7d7073415b5b6ae29dfe617690d74/welcome-to-notabug))
#### Moderation
Iris and NAB (see above link).
- Protocol level (no)
- Server level (no)
- User level (yes)
- Content level (yes)
2020-05-18 02:40:45 +02:00
### Social/Discovery
### Privacy and Access Control
### Interop with other systems
### Scalability
### Metrics
### In the wild