add blog (#187)
* blog: v1 release notes * Update 20220112-simplex-chat-v1-released.md (#181) * Update 20220112-simplex-chat-v1-released.md (#183) updated intro and "journalist" description. * add blog posts * make corrections to v1 blog (#188) * update 20210512-simplex-chat-terminal-ui.md (#192) * Update 20210512-simplex-chat-terminal-ui.md * Update 20210914-simplex-chat-v0.4-released.md * Update 20210914-simplex-chat-v0.4-released.md * update blog post * add blog toc and old post Co-authored-by: Mark Aleksander Hil <32651095+markaleksanderh@users.noreply.github.com> Co-authored-by: Rob Chandhok <rob@chandhok.net> Co-authored-by: Efim Poberezkin <8711996+efim-poberezkin@users.noreply.github.com>
This commit is contained in:
parent
eebc24086b
commit
b2556e3306
19
blog/20201022-simplex-chat.md
Normal file
19
blog/20201022-simplex-chat.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Simplex chat
|
||||
|
||||
**Published:** Oct 22, 2020
|
||||
|
||||
https://simplex.chat
|
||||
|
||||
I'd really appreciate your feedback, criticism and suggestions on the open-source idea I was slowly working on since early 2020. I recently made the demo server for the low-level message queue protocol ("simplex messaging protocol") and the website to try to explain the chat idea that would use this protocol.
|
||||
|
||||
Haskell protocol implementation: https://github.com/simplex-chat/simplexmq
|
||||
|
||||
In short, the protocol defines a minimalist set of commands and server responses (just 7 commands and 5 responses sent over TCP) to operate encrypted message queues with in-memory persistence - the implementation uses STM.
|
||||
|
||||
If anything, it was definitely helping to get to know Haskell types etc. much deeper than before :)
|
||||
|
||||
Any criticism would be great - thank you in advance!
|
||||
|
||||
---
|
||||
|
||||
Originally published at https://www.reddit.com/r/haskell/comments/jg6uh4/simplex_chat/
|
25
blog/20210512-simplex-chat-terminal-ui.md
Normal file
25
blog/20210512-simplex-chat-terminal-ui.md
Normal file
@ -0,0 +1,25 @@
|
||||
## Announcing SimpleX Chat Prototype!
|
||||
|
||||
**Published:** May 12, 2021
|
||||
|
||||
For the last six months [me](https://github.com/epoberezkin) and my son [Efim](https://github.com/efim-poberezkin) have been working to bring you a working prototype of SimpleX Chat. We're excited to announce SimpleX Chat terminal client is now available [here](https://github.com/simplex-chat/simplex-chat) on Linux, Windows and Mac (you can either build from source or download the binary for Linux, Windows or Mac from the latest release).
|
||||
|
||||
We’ve been using the terminal client between us and a few other people for a couple of months now, eating our own “dog food”, and have developed up to version 0.3.1, with most of the messaging protocol features we originally planned
|
||||
|
||||
### Features
|
||||
|
||||
- End-to-end encryption with protection from man in the middle attack. The connection invitation must be passed out-of-band (see [how to use SimpleX Chat](https://github.com/simplex-chat/simplex-chat#how-to-use-simplex-chat) in the repo).
|
||||
- No global identity or any usernames visible to the server(s), ensuring full privacy of your contacts and conversations.
|
||||
- Message signing and verification with automatically generated RSA keys, with keys being unique per each connection.
|
||||
- Authorization of each command/message by the servers with automatically generated RSA key pairs, also unique per connection.
|
||||
- Message integrity validation (via passing the digests of the previous messages).
|
||||
- Encrypted TCP transport, independent of certificates.
|
||||
- You can deploy your own server, but you don’t have to - the demo SMP server to relay your messages is available at smp1.simplex.im:5223 (pre-configured in the client).
|
||||
|
||||
### We need your help!
|
||||
|
||||
We're building a new kind of chat network - the only network that lets you control your chat. We'd really appreciate your feedback, criticism and support - a star on the github repo, signing up to the mailing list or any contribution to the project will help. There is so much more to do!
|
||||
|
||||
---
|
||||
|
||||
Originally published at https://www.reddit.com/r/haskell/comments/naw6lz/simplex_chat_prototype_terminal_ui_made_in_haskell/
|
44
blog/20210914-simplex-chat-v0.4-released.md
Normal file
44
blog/20210914-simplex-chat-v0.4-released.md
Normal file
@ -0,0 +1,44 @@
|
||||
# SimpleX announces SimpleX Chat v0.4
|
||||
|
||||
## Open-source decentralized chat that uses privacy-preserving message routing protocol
|
||||
|
||||
**Published:** Sep 14, 2021
|
||||
|
||||
We are building a new platform for distributed Internet applications where privacy of the messages _and_ the network matter. [SimpleX Chat](https://github.com/simplex-chat/simplex-chat) is our first application, a chat application built on the SimpleX platform that serves as an example of the power of the platform and as a reference application.
|
||||
|
||||
## What is SimpleX?
|
||||
|
||||
We recognised that there is currently no messaging application which respects user privacy and guarantees metadata privacy -- in other words, messages could be private, but a third party can always see who is communicating with whom by examining a central service and the connection graph. SimpleX, at it's core, is designed to be truly distributed with no central server. This allows for enormous scalability at low cost, and also makes it virtually impossible to snoop on the network graph.
|
||||
|
||||
The first application built on the platform is Simplex Chat, which for now is terminal (command line) based with mobile apps in the pipeline. The platform can easily support a private social network feed and a multitude of other services, which can be developed by the Simplex team or third party developers.
|
||||
|
||||
|
||||
## What's new in v0.5?
|
||||
|
||||
We're exicted to announce that SimpleX Chat now supports group chat and file transfer!
|
||||
|
||||
### Chat groups
|
||||
|
||||
To create a group use the `/g <group>` command. You can then invite contacts to the group by entering the `/a <group> <name>` command. Your contact(s) will need to use the `/j accept` command to accept the invitation to the group. To send messages to the group, simply enter `#<group> <message>`.
|
||||
|
||||
**Please note:** Groups are not stored on any server; they are maintained as a list of members in the app database. Sending a message to the group sends a message to each member of the group.
|
||||
|
||||

|
||||
|
||||
### File transfer
|
||||
|
||||
Sharing files is simple! To send a file to a contact, use the `/f @<contact> <file_path>` command. The recipient will have to accept before the file is sent.
|
||||
|
||||

|
||||
|
||||
## We're always looking for help!
|
||||
|
||||
We'd really appreciate your comments, criticism and support - a star on the GitHub repo, downloading and testing the chat or any contribution to the project will help a lot – thank you for all your support!
|
||||
|
||||
**Please note:** SimpleX Chat is in early stage development: we are still iterating protocols, improving privacy and security, so if you have communication scenarios requiring high security, you should consider some other options for now.
|
||||
|
||||
Our goal is to create a new kind of chat platform that lets you control your chat!
|
||||
|
||||
---
|
||||
|
||||
Originally published at https://www.reddit.com/r/selfhosted/comments/poal79/simplex_chat_an_opensource_decentralized_chat/
|
32
blog/20211208-simplex-chat-v0.5-released.md
Normal file
32
blog/20211208-simplex-chat-v0.5-released.md
Normal file
@ -0,0 +1,32 @@
|
||||
# SimpleX announces SimpleX Chat v0.5
|
||||
|
||||
## Simplex Chat is the first chat platform that is 100% private by design - SimpleX no access to your connections graph
|
||||
|
||||
**Published:** Dec 08, 2021
|
||||
|
||||
We are building a new platform for distributed Internet applications where privacy of the messages _and_ the network matter. [SimpleX Chat](https://github.com/simplex-chat/simplex-chat) is our first application, a chat application built on the SimpleX platform that serves as an example of the power of the platform and as a reference application.
|
||||
|
||||
## What is SimpleX?
|
||||
|
||||
We recognised that there is currently no messaging application which respects user privacy and guarantees metadata privacy -- in other words, messages could be private, but a third party can always see who is communicating with whom by examining a central service and the connection graph. SimpleX, at it's core, is designed to be truly distributed with no central server. This allows for enormous scalability at low cost, and also makes it virtually impossible to snoop on the network graph.
|
||||
|
||||
The first application built on the platform is Simplex Chat, which for now is terminal (command line) based with mobile apps in the pipeline. The platform can easily support a private social network feed and a multitude of other services, which can be developed by the Simplex team or third party developers.
|
||||
|
||||
## What's new in v0.5?
|
||||
|
||||
### Long-term chat addresses
|
||||
Users can now create long-term chat addresses that they can share with many people (e.g. in email signature, or online), so that any chat user can send them a connection request.
|
||||
|
||||
This is an ALPHA feature, and we have not yet added any protection against spam contact requests. However, if the address you created starts receiving spam connection requests, you can simply delete it without losing any of your accepted connections and create another address - as many times as you like!
|
||||
|
||||
## We need your help!
|
||||
|
||||
We'd really appreciate your comments, criticism and support - a star on the GitHub repo, downloading and testing the chat or any contribution to the project will help a lot – thank you for all your support!
|
||||
|
||||
**Please note:** SimpleX Chat is in early stage development: we are still iterating protocols, improving privacy and security, so if you have communication scenarios requiring high security, you should consider some other options for now.
|
||||
|
||||
Our goal is to create a new kind of chat platform that lets you control your chat!
|
||||
|
||||
---
|
||||
|
||||
Originally published at https://www.reddit.com/r/haskell/comments/rc0xkn/simplex_chat_the_first_chat_platform_that_is_100/
|
53
blog/20220112-simplex-chat-v1-released.md
Normal file
53
blog/20220112-simplex-chat-v1-released.md
Normal file
@ -0,0 +1,53 @@
|
||||
# SimpleX announces SimpleX Chat v1
|
||||
|
||||
**Published:** Jan 12, 2022
|
||||
|
||||
## The most private and secure chat and application platform
|
||||
|
||||
We are building a new platform for distributed Internet applications where privacy of the messages _and_ the network matter. [SimpleX Chat](https://github.com/simplex-chat/simplex-chat) is our first application, a messaging application built on the SimpleX platform.
|
||||
|
||||
## What is SimpleX?
|
||||
|
||||
There is currently no messaging application which respects user privacy and guarantees metadata privacy - in other words, messages could be private, but a third party can always see who is communicating with whom by examining a central service and the connection graph. SimpleX, at it's core, is designed to be truly distributed with no central server. This allows for enormous scalability at low cost, and also makes it virtually impossible to snoop on the network graph.
|
||||
|
||||
The first application built on the platform is Simplex Chat, which for now is terminal (command line) based with mobile apps in the pipeline. The platform can easily support a private social network feed and a multitude of other services, which can be developed by the Simplex team or third party developers.
|
||||
|
||||
## What's new in v1?
|
||||
|
||||
### Stable protocol implementation
|
||||
|
||||
All releases from v1 onwards will be forwards and backwards compatible.
|
||||
|
||||
### Message encryption has been completely re-engineered to provide forward secrecy and recovery from break-in.
|
||||
|
||||
SimpleX Chat v1 now uses:
|
||||
|
||||
- [double-ratchet](https://www.signal.org/docs/specifications/doubleratchet/) E2E encryption using AES-256-GCM cipher with [X3DH key agreement](https://www.signal.org/docs/specifications/x3dh/) using 2 ephemeral Curve448 keys to derive secrets for ratchet initialization. These keys and secrets are separate for each contact, group membership and file transfer.
|
||||
- in addition to double ratchet, there is a separate E2E encryption in each message queue with DH key exchange using Curve25519 and [NaCl crypto-box](https://nacl.cr.yp.to/index.html) - separate E2E encryption has been added to avoid having any cipher-text in common between message queues of a single contact (to prevent traffic correlation).
|
||||
- additional encryption of messages delivered from servers to recipients, also using Curve25519 DH exchange and NaCl crypto-box - to avoid shared cipher-text in sent and received traffic (also to prevent traffic correlation).
|
||||
|
||||
### Improved user and server authentication and transport
|
||||
|
||||
SimpleX now uses ephemeral Ed448 keys to sign and verify client commands to the servers. As before, these keys are different per message queue and do not represent a user's identity.
|
||||
|
||||
Instead of ad-hoc encrypted transport we now use TLS 1.2+ limited to the most performant and secure cipher with forward secrecy (ECDHE-ECDSA-CHACHA20POLY1305-SHA256), Curve448 groups and Ed448 keys.
|
||||
|
||||
Server identity is validated as part of TLS handshake - the fingerprint of offline server certificate is used as a permanent server identity which is included in server address, to protect against MITM attacks between clients and servers.
|
||||
|
||||
SimpleX also uses [tls-unique channel binding](https://datatracker.ietf.org/doc/html/rfc5929#section-3) in each signed client command to the server to protect against replay attacks.
|
||||
|
||||
### Changes in protocol encoding
|
||||
|
||||
We switched from inefficient text-based low level protocol encodings, that simplified early development, to space and performance efficient binary encodings, reducing protocol overhead from circa 15% to 3.7% of transmitted application message size.
|
||||
|
||||
## Learn more about Simplex
|
||||
|
||||
Further details on platform objectives and technical design are available [here](https://github.com/simplex-chat/simplexmq/blob/master/protocol/overview-tjr.md).
|
||||
|
||||
SimpleX Chat client can be used in the terminal on all major desktop platforms (Windows/Mac/Linux) and also on Android devices with [Termux](https://github.com/termux).
|
||||
|
||||
SimpleX also allows people to host their own servers and own their own chat data. SimpleX servers are exceptionally lightweight and require a single process with the initial memory footprint of under 20 Mb, which grows as the server adds in-memory queues (even with 10,000 queues it uses less than 50Mb, not accounting for messages).
|
||||
|
||||
## We look forward to you using it!
|
||||
|
||||
We look forward to your feedback and suggestions - via GitHub issues or via SimpleX Chat - you can connect to the team with `/simplex` command once you run the chat.
|
11
blog/README.md
Normal file
11
blog/README.md
Normal file
@ -0,0 +1,11 @@
|
||||
# Blog
|
||||
|
||||
Jan 12, 2022. [SimpleX Chat v1 released: the most private and secure chat and application platform](https://github.com/simplex-chat/simplex-chat/blob/master/blog/20220112-simplex-chat-v1-released.md)
|
||||
|
||||
Dec 08, 2021. [SimpleX Chat v0.5 released: the first chat platform that is 100% private by design - no access to your connections graph](https://github.com/simplex-chat/simplex-chat/blob/master/blog/20211208-simplex-chat-v0.5-released.md)
|
||||
|
||||
Sep 14, 2021. [SimpleX Chat v0.4 released: open-source chat that uses privacy-preserving message routing protocol](https://github.com/simplex-chat/simplex-chat/blob/master/blog/20210914-simplex-chat-v0.4-released.md)
|
||||
|
||||
May 12, 2021. [SimpleX Chat Prototype!](https://github.com/simplex-chat/simplex-chat/blob/master/blog/20210512-simplex-chat-terminal-ui.md)
|
||||
|
||||
Oct 22, 2020. [SimpleX Chat](https://github.com/simplex-chat/simplex-chat/blob/master/blog/20201022-simplex-chat)
|
Loading…
Reference in New Issue
Block a user