diff --git a/README.md b/README.md index 575ddaf..0f6a5d4 100644 --- a/README.md +++ b/README.md @@ -64,29 +64,6 @@ We present a simplified set of social media features drawn from everything that' * Message securely with encrypted contents (e.g. Signal) ✔ * Message with untraceable metadata via Tor (new) ✔ -## How is this different from... - -### Comparison table - -| Other cool thing | What is it? | Kind of like... | Decentralized? | Anonymous? | Confidential? | Data persistence? | Identity verification? | Need invitation/server? | What data can user find? | -| --------------------------------------------- | ---------------- | ---------------- | ---------------------------- | ------------------------------------------- | ----------------------------------------- | ----------------------------------- | ------------------------------------- | -------------------------------- | ----------------------------------------- | -| *Komrade* | *Social network* | *Twitter* | *No (central server on Tor)* | ***Yes (everything routed via Tor)*** | ***Yes (100% E2EE)*** | *Minimal server (deleted ASAP)* | *Yes (central public key repository)* | ***No (works like twitter)*** | Mixed (global feed; hashtag search only) | -| [Secure Scuttlebutt](https://scuttlebutt.nz/) | Social network | Twitter/Facebook | **Fully (P2P)** | No (P2P reveals IP; friend networks public) | Partly (private E2EE, public unencrypted) | Distributed across friend networks? | Yes? (federated key exchange?) | Yes (need initial pub) | Limited (search friends-of-friends' data) | -| [Diaspora](https://diasporafoundation.org/) | Social network | Twitter | Partly (federated) | No (unless via Tor Browser) | No (unencrypted?) | ? | ? | Yes (need 'pod' server) | | -| [Mastodon](https://joinmastodon.org/) | Social network | Twitter | Partly (federated) | No (unless via Tor Browser) | No (unencrypted?) | ? | ? | Yes (need 'instance' server) | | -| [Matrix](https://matrix.org/) | Group chat | Slack | Partly (federated) | No? | **Yes? (100% E2EE)** | ? | Yes (?) | Yes (invited channels only?) | | -| [Briar Messenger](https://briarproject.org/) | Messenger | WhatsApp | **Fully (P2P)** | **Yes? (Tor)** | **Yes (100% E2EE)** | None (needs 24/7 listener) | Partly (public keys traded IRL) | Yes (need initial contact?) | | -| [Cabal Chat](https://cabal.chat/) | Chatrooms | IRC | **Fully (P2P)** | No (P2P reveals IP) 1 | Mostly (shared key, not E2EE) | Distributed Hash Table | No (?) | Not really (public chat is open) | | - -Sources: - -1. [Cabal FAQ: What kind of security is involved with Cabal?](https://cabal.chat/faq.html#:~:text=What%20kind%20of%20security%20does,is%20involved%20in%20a%20cabal) - -### In words - -1. Secure Scuttlebutt? SSB is probably the most impressive alternative social network out there. It's truly P2P, not just federated like Diaspora or Mastodon, so the content you see is coming to you via your friends and their friends: you download it directly from them. It has a great user base... - - ## Progress ### Animations from mobile/desktop app diff --git a/docs/comparisons.md b/docs/comparisons.md new file mode 100644 index 0000000..2f65dd2 --- /dev/null +++ b/docs/comparisons.md @@ -0,0 +1,35 @@ +*Please help edit this! I may be wrong about some of it:* + +## Comparison of their designs + +| Other cool thing | What is it? | Kind of like... | Decentralized? (P2P?) | Anonymous? (IP address undiscoverable?) | Confidential? (100% E2E encrypted?) | Data robustness? | Identity verification? | Need invitation/server? | What data can user find? | +| --------------------------------------------- | ----------------- | ------------------ | ------------------------------ | --------------------------------------------- | ------------------------------------------- | ----------------------------------- | ------------------------------------- | -------------------------------- | ----------------------------------------- | +| *[Komrade](http://komrade.app)* | *Social network* | *Twitter* | ❌ *No (central server on Tor)* | ✔️ *Yes (everything routed via Tor)* | ✔️ *Yes (100% E2EE)* | *Minimal server (deleted ASAP)* | *Yes (central public key repository)* | ***No (works like twitter)*** | Mixed (global feed; hashtag search only) | +| [Secure Scuttlebutt](https://scuttlebutt.nz/) | Social network | Twitter / Facebook | ✔️ Fully (P2P) | ❌ No (P2P reveals IP; friend networks public) | ⭕ Partly (private E2EE, public unencrypted) | Distributed across friend networks? | Yes? (federated key exchange?) | Yes (need initial pub) | Limited (search friends-of-friends' data) | +| [Diaspora](https://diasporafoundation.org/) | Social network | Twitter | ⭕ Halfway (federated) | ⭕ No (unless via Tor Browser) | ❌ No (unencrypted?) | ? | ? | Yes (need 'pod' server) | | +| [Mastodon](https://joinmastodon.org/) | Social network | Twitter | ⭕ Halfway (federated) | ⭕ No (unless via Tor Browser) | ❌ No (unencrypted?) | ? | ? | Yes (need 'instance' server) | | +| [Matrix](https://matrix.org/) | Co-working space | Slack | ⭕ Halfway (federated) | ❌ No? | ✔️ Yes? (100% E2EE) | ? | Yes (?) | Yes (invited channels only?) | | +| [Briar Messenger](https://briarproject.org/) | Messenger | WhatsApp | ✔️ Fully (P2P) | ✔️ Yes? (Tor) | ✔️ Yes (100% E2EE) | None (needs 24/7 listener) | Partly (public keys traded IRL) | Yes (need initial contact?) | | +| [Cabal Chat](https://cabal.chat/) | Private chatrooms | IRC | ✔️ Fully (P2P) | ❌ No (P2P reveals IP) 1 | ⭕ Mostly (shared key, not E2EE) | Distributed Hash Table | No (?) | Not really (public chat is open) | | +| [Signal](https://signal.org/) | Messenger | WhatsApp | ❌ No? | ❌ No | ✔️ Yes (E2EE, and audited) | ? | ? | No | Only what they send or are sent | + + +Sources: + +1. [Cabal FAQ: What kind of security is involved with Cabal?](https://cabal.chat/faq.html#:~:text=What%20kind%20of%20security%20does,is%20involved%20in%20a%20cabal) + +## Comparison of their features + + +| Other cool thing | DM users (E2EE) | Group chat (E2EE) | Post to world | Post to friends/ties | Symmetric ties ('friends') | Asymmetric ties ('followers) | Like posts | Repost posts | Feed of all posts | Feed of people you follow | +| --------------------------------------------- | --------------- | ----------------- | ------------- | -------------------- | -------------------------- | ---------------------------- | ---------- | ------------ | ----------------- | ------------------------- | +| *[Komrade](http://komrade.app)* | ✔️ | ❌? | ✔️ | ✔️ | ✔️ | ✔️ | ✔️? | ❌ | ✔️ | ✔️ | +| [Secure Scuttlebutt](https://scuttlebutt.nz/) | ✔️ | ❌? | ❌ | ✔️ | ✔️ | ✔️ | ✔️ | ❌? | ❌ | ✔️ | +| [Diaspora](https://diasporafoundation.org/) | ❌? | ❌? | ❌? | ✔️ | ❌ | ✔️ | ✔️ | ✔️? | ❌ | ✔️ | +| [Mastodon](https://joinmastodon.org/) | ❌? | ❌? | ❌? | ✔️ | ❌ | ✔️ | ✔️ | ✔️? | ❌ | ✔️ | +| [Matrix](https://matrix.org/) | ✔️ | ✔️ | ❌? | ✔️ | ✔️ | ❌ | ❌? | ❌? | ❌? | ❌? | +| [Briar Messenger](https://briarproject.org/) | ✔️ | ✔️ | ❌? | ✔️ | ✔️ | ❌ | ❌? | ❌? | ❌? | ❌? | +| [Cabal Chat](https://cabal.chat/) | ? | ✔️ | ❌? | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | +| [Signal](https://signal.org/) | ✔️ | ✔️ | ❌ | ❌ | ✔️ | ❌ | ❌ | ❌ | ❌ | ❌ | + + diff --git a/requirements.txt b/requirements.txt index 3e2f9a6..6847b15 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,6 +1,7 @@ art==4.7 as==0.1 astroid==2.4.2 +cachetools==4.1.1 certifi==2020.6.20 cffi==1.14.2 chardet==3.0.4 @@ -18,9 +19,11 @@ http3==0.6.7 hyperframe==5.2.0 idna==2.10 import==0.0.1 +ipinfo==3.0.0 isort==5.4.2 itsdangerous==1.1.0 Jinja2==2.11.2 +joblib==0.16.0 Kivy==2.0.0rc3 Kivy-Garden==0.1.4 kivymd==0.104.1 @@ -28,6 +31,7 @@ lazy-object-proxy==1.4.3 MarkupSafe==1.1.1 mccabe==0.6.1 numpy==1.19.1 +pandas==1.1.2 pathtools==0.1.2 Pillow==7.2.0 plyer==1.4.3 @@ -36,27 +40,38 @@ pyfiglet==0.8.post1 Pygments==2.6.1 pylint==2.6.0 pypng==0.0.20 +pyproj==2.6.1.post1 PyQRCode==1.2.1 PySocks==1.7.1 pythemis==0.13.0 +python-dateutil==2.8.1 +pytz==2020.1 pyzbar==0.1.8 qrcode==6.1 redis==3.5.3 requests==2.24.0 requests-async==0.6.2 +requests-futures==1.0.0 rfc3986==1.4.0 rpcudp==4.0.1 +Rtree==0.8.3 +scikit-learn==0.23.2 +scipy==1.5.2 +Shapely==1.7.1 simplekv==0.14.1 six==1.15.0 +sklearn==0.0 sqlitedict==1.6.0 termcolor==1.1.0 text2art==0.2.0 +threadpoolctl==2.1.0 toml==0.10.1 torpy==1.1.3 typed-ast==1.4.1 u-msgpack-python==2.7.0 ujson==3.1.0 urllib3==1.25.10 +utm==0.6.0 watchdog==0.10.3 Werkzeug==1.0.1 wrapt==1.12.1