Skip to content

Commit

Permalink
update social protocol
Browse files Browse the repository at this point in the history
  • Loading branch information
kayhhh committed Mar 28, 2024
1 parent 299fda2 commit 7e187c1
Show file tree
Hide file tree
Showing 11 changed files with 25 additions and 22 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ jobs:
- uses: actions/checkout@v4
- run: |
mkdir -p out
cp -rL social/protocols out/protocols
cp -rL social/schemas out/schemas
cp -r social/dwn/protocols out/protocols
cp -r social/dwn/schemas out/schemas
- uses: s0/git-publish-subdir-action@develop
env:
BRANCH: "gh-pages"
Expand Down
42 changes: 22 additions & 20 deletions social/README.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,8 @@
# Social Protocol

The Wired's social protocol provides a self-hostable base layer for user identity and data storage.
The Wired's social protocol provides a self-hostable base for user identity and data storage.

## Decentralized Web Nodes (DWNs)

[Decentralized Web Nodes](https://identity.foundation/decentralized-web-node/spec/) (DWNs) are servers
that store a user's data and provide an interface for others to interact with it.
These interactions could be a simple read to view a user's worlds, or more complex writes to add
comments or send encrypted friend requests.

Additionally, DWNs are built on a CRDT that will sync data with other DWNs.
You can make use of a remote cloud-hosted DWN, while at the same time running your own local DWN to keep a backup of your data.

### Decentralized Identifiers (DIDs)
## Decentralized Identifiers (DIDs)

[Decentralized Identifiers](https://en.wikipedia.org/wiki/Decentralized_identifier) (DIDs) provide a
globally unique namespace for both users and content within The Wired.
Expand All @@ -21,19 +11,31 @@ DIDs are a generic format for addressing content that can be extended to support
For example, [`did:web`](https://w3c-ccg.github.io/did-method-web/) can be used to address content using a traditional web URL,
while [`did:ipid`](https://did-ipid.github.io/ipid-did-method/) can be used to address content over [IPFS](https://docs.ipfs.tech/).

A user's DID resolves to a document containing information such as their name, profile picture,
cryptographic keys that can be used to verify their identity, DWNs they are a part of, and anything else they want to store.
A user's DID resolves to a document containing information such as their name,
cryptographic keys that can be used to verify their identity, servers to contact them at, and anything else they want to store.

## Identity Servers
## DID Host

Identity servers are optional servers for remotely hosting DIDs.
For example, the server may use a method like `did:web`, allowing you to use a domain you control as the basis for your identity.
A DID host is a server that remotely hosts a DID and provides convenient access to it.
For example, the server may use a method like `did:web` and your DID document at a web domain.

You can log in to the server with a typical login method - such as a username and password or OAuth connection - then receive
session keys which can be used to verify your ownership of the hosted DID to other parties.
This allows you to use your DID while maintaining the convienance of traditional app logins.
cryptographic keys which can be used to verify your ownership of the hosted DID to other parties.
This allows you to use DIDs with the convienance of traditional app logins.

Running your own DID host server is a great first step towards self-sovereignity within The Wired.

## Decentralized Web Nodes (DWNs)

[Decentralized Web Nodes](https://identity.foundation/decentralized-web-node/spec/) (DWNs) are the data layer of The Wired.
DWNs build upon DIDs to store user data and provide an API for others to interact with it.
These interactions could be a simple read to view a document hosted by the user, or more complex writes to add
comments or send encrypted messages.

Running your own identity server is a great first step towards self-sovereignity within The Wired.
DWNs are built using [CRDT](https://en.wikipedia.org/wiki/Conflict-free_replicated_data_type)s and will sync their data
with other DWNs.
This allows you to make use of a public cloud-hosted DWN, while at the same time running your own
local DWN to keep a backup of your data.

## Moderation

Expand Down
1 change: 1 addition & 0 deletions social/did-host/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# DID Host
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 comments on commit 7e187c1

Please sign in to comment.