From 78d02fd92facff4d02a4d0a7b62cccf9a75988a7 Mon Sep 17 00:00:00 2001 From: Jay Graber Date: Thu, 18 Jun 2020 10:39:46 -0700 Subject: [PATCH 1/4] Add iris to gun --- applications/iris.md | 51 -------------------------------------------- protocols/gun.md | 8 +++++++ 2 files changed, 8 insertions(+), 51 deletions(-) delete mode 100644 applications/iris.md diff --git a/applications/iris.md b/applications/iris.md deleted file mode 100644 index c1197ee..0000000 --- a/applications/iris.md +++ /dev/null @@ -1,51 +0,0 @@ -# IRIS - -## Overview -IRIS is a WoT (Web of Trust) based social networking app. It includes libraries for reading messages and indexes, and several demo applications for chat and microblogging. - -### Identity -Uses WoT attestations to link human readable names to key-pair and other identity attributes. - -### Networking/Message passing -Uses GUN for networking and data storage. (stores locally on users' machines without a server) - -### Data Storage/Message Persistance -Also uses IPFS for attachments and message backups. - -### Moderation/Reputation -Users only see messages in their WoT, that is, from users who have been upvoted by someone in a chain from someone they upvoted. Downvotes are also possible. - -### Social/Discovery -Real name search. - -### Privacy and Access Control -A keypair is created for each account. - -### Monetization -Donation supported. - -### User experience (if applies) -Similar to other microblogging platforms, with mobile & desktop clients. Relies on finding/knowing your contacts in order to see messages. It is necessary to reach out to contacts to ask them to add you to see your messages. - -### Interop with other systems -Provides a library for the message layer that could be reused. - -Also allows importing content from other sources, based on attestations of the author's identity. -"For example, a crawler can import and sign other people's messages from Twitter. Only the users who trust the crawler will see the messages." (not sure how to find the crawler in order to trust it?) - -### Scalability - -### Metrics -?? - -### In the wild -Demos: - [https://iris.to/](https://iris.to/) decentralized chat - [https://social.iris.to/](https://social.iris.to/) Angular version - -### Links - -Code: [github.com/irislib/iris](https://github.com/irislib/iris) - -[Learning to Trust Strangers](https://medium.com/@mmalmi/learning-to-trust-strangers-167b652a654f) - diff --git a/protocols/gun.md b/protocols/gun.md index 5bca0f1..6f3fb2a 100644 --- a/protocols/gun.md +++ b/protocols/gun.md @@ -66,6 +66,14 @@ GUN is used for p2p chat/social apps, encrypted video conferencing, realtime GPS - [Unstoppable Domains](https://unstoppabledomains.com/chat) and [DTube](https://d.tube/) use GUN for messaging - [Iris](https://irislib.github.io/), is a web-of-trust based social network built on GUN +# Iris + +[Iris-lib](https://github.com/irislib/iris-lib) is a library built on Gun that allows the integration of decentralized social networking features into applications. An experimental social network application, [Iris](https://github.com/irislib/iris), was built to demonstrate its features: public messaging, [private chats](<(https://iris.to/), web of trust, and contacts management. Iris-lib uses [Gun](../proocols/gun.md) for networking and data storage, and [IPFS](../protocols/ipfs.md) for attachments and message backups. The team is funded by Gun, and also accepts donations. + +Iris uses WoT (Web-of-Trust) attestations to link human readable names to key-pair and other identity attributes. Users only see messages in their WoT, from users who have been upvoted by someone in a chain from someone they upvoted. Downvotes are also possible. [Reputation](https://medium.com/@mmalmi/learning-to-trust-strangers-167b652a654f) is not represented by a static score, but by how a user's personal web of trust regards them. A percentage threshold of confidence in a person's identity is calculated by the number of attestations relative to the size of the network. + +For interoperability, Iris allows [importing content from other sources](https://porter.io/github.com/irislib/iris). "Message author and signer can be different entities, and only the signer needs to be on Iris. For example, a crawler can import and sign other people's messages from Twitter. Only the users who trust the crawler will see the messages." + ### Links - [Site](gun.eco) From 2eecc822fab5d0835c2848a12254ad928f19d55a Mon Sep 17 00:00:00 2001 From: Jay Graber Date: Thu, 18 Jun 2020 10:39:53 -0700 Subject: [PATCH 2/4] Rename IPFS file --- protocols/{IPFS.md => ipfs.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename protocols/{IPFS.md => ipfs.md} (100%) diff --git a/protocols/IPFS.md b/protocols/ipfs.md similarity index 100% rename from protocols/IPFS.md rename to protocols/ipfs.md From 9181c8286981d32fc213b95339d182b63217addb Mon Sep 17 00:00:00 2001 From: Jay Graber Date: Tue, 23 Jun 2020 10:40:24 -0700 Subject: [PATCH 3/4] Add ssb-social stub, update overview wording --- applications/ssb-social.md | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 applications/ssb-social.md diff --git a/applications/ssb-social.md b/applications/ssb-social.md new file mode 100644 index 0000000..eda0076 --- /dev/null +++ b/applications/ssb-social.md @@ -0,0 +1,9 @@ +# Ssb Social Applications + +### User Experience + +Key management is one of the biggest challenges of ssb, as users often lose and forget their passwords. Users are in complete control of their identity. That means if they lose their cryptographic key, they can permanently lose access to their account. To address the problem of key management in a decentralized manner, a project in the ssb ecosystem, [Dark Crystal](https://darkcrystal.pw), has implemented a social key recovery system. It splits keys into shards to store with family and friends who can be trusted to help reconstruct a lost key. + +The p2p bootstrapping process introduces frictions for new users. First, new users typically join a pub to get connected to the network after they download an ssb application. Then, there is a period of waiting time during the initial sync when logs are being downloaded, like the syncing time of a blockchain. A user that has not opened an ssb application in awhile will encounter this synchronization delay again while their node catches up to the state of the network. + +The inability to edit or delete content also runs contrary to user expectations. Because of the append-only nature of ssb feeds, there is no ability to permanently delete a piece of content. Applications can work around this by honoring edit or delete messages appended to the feed, but the original content stays in the append-only log that is shared among all nodes, and other applications could choose not to honor such messages. An example of a workaround is [ssb-revisions](https://github.com/regular/ssb-revisions), a basic API that enables applications to use mutable messages by displaying the updated version. From 92fd0ed27980f6b6af03ac7c8645e591869effb1 Mon Sep 17 00:00:00 2001 From: rahul-ki Date: Tue, 30 Jun 2020 00:20:09 +0000 Subject: [PATCH 4/4] More details in governance.md --- topics/governance.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/topics/governance.md b/topics/governance.md index 4bbcefd..151fb37 100644 --- a/topics/governance.md +++ b/topics/governance.md @@ -12,12 +12,18 @@ Matrix was [initially developed within Amdocs](