From edf2d02a0dfa97c5e056adb97192ed7760258090 Mon Sep 17 00:00:00 2001
From: Evgeny Poberezkin <2769109+epoberezkin@users.noreply.github.com>
Date: Tue, 6 Dec 2022 12:53:14 +0000
Subject: [PATCH] blog: v4.3 release announcement (#1510)
* blog: v4.3 release announcement
* add images
* update image URIs
* update post
* typos
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
* correction
* website preview, readme update
Co-authored-by: JRoberts <8711996+jr-simplex@users.noreply.github.com>
---
README.md | 24 ++--
...221206-simplex-chat-v4.3-voice-messages.md | 136 +++++++++++++++++-
blog/README.md | 16 +++
blog/images/20221206-deleted1.png | Bin 0 -> 340888 bytes
blog/images/20221206-deleted2.png | Bin 0 -> 145503 bytes
blog/images/20221206-protect.png | Bin 0 -> 347045 bytes
blog/images/20221206-server1.png | Bin 0 -> 117403 bytes
blog/images/20221206-server2.png | Bin 0 -> 101244 bytes
blog/images/20221206-server3.png | Bin 0 -> 134076 bytes
blog/images/20221206-voice.png | Bin 0 -> 115231 bytes
.../src/_includes/blog_previews/20221206.html | 15 ++
11 files changed, 175 insertions(+), 16 deletions(-)
create mode 100644 blog/images/20221206-deleted1.png
create mode 100644 blog/images/20221206-deleted2.png
create mode 100644 blog/images/20221206-protect.png
create mode 100644 blog/images/20221206-server1.png
create mode 100644 blog/images/20221206-server2.png
create mode 100644 blog/images/20221206-server3.png
create mode 100644 blog/images/20221206-voice.png
create mode 100644 website/src/_includes/blog_previews/20221206.html
diff --git a/README.md b/README.md
index c2a68edf8e..c815d48879 100644
--- a/README.md
+++ b/README.md
@@ -85,16 +85,14 @@ You can use SimpleX with your own servers and still communicate with people usin
Recent updates:
+[Dec 06, 2022. November reviews and v4.3 released - with instant voice messages, irreversible deletion of sent messages and improved server configuration.](./blog/20221206-simplex-chat-v4.3-voice-messages.md)
+
[Nov 08, 2022. Security audit by Trail of Bits, the new website and v4.2 released](./blog/20221108-simplex-chat-v4.2-security-audit-new-website.md)
[Sep 28, 2022. v4.0: encrypted local chat database and many other changes](./blog/20220928-simplex-chat-v4-encrypted-database.md)
[Sep 1, 2022. v3.2: incognito mode, support .onion server hostnames, setting contact names, changing color scheme, etc. Implementation audit is arranged for October!](./blog/20220901-simplex-chat-v3.2-incognito-mode.md)
-[Aug 8, 2022. v3.1: secret chat groups, access via Tor, reduced battery and traffic usage, advanced network settings, etc.](./blog/20220808-simplex-chat-v3.1-chat-groups.md)
-
-[Jul 11, 2022. v3.0: instant push notifications for iOS, e2e encrypted WebRTC audio/video calls, chat database export/import, privacy and performance improvements](./blog/20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md)
-
[All updates](./blog)
## Make a private connection
@@ -187,19 +185,20 @@ If you are considering developing with SimpleX platform please get in touch for
- ✅ Chat database encryption.
- ✅ Automatic chat history deletion.
- ✅ Links to join groups and improve groups stability.
+- ✅ Voice messages (with recipient opt-out per contact).
+- ✅ Basic authentication for SMP servers (to authorize creating new queues).
+- ✅ View deleted messages, full message deletion by sender (with recipient opt-in per contact).
+- ✅ Block screenshots and view in recent apps.
+- ✅ Advanced server configuration.
- 🏗 SMP queue redundancy and rotation (manual is supported).
-- 🏗 Voice messages (with recipient opt-out per contact).
-- 🏗 Basic authentication for SMP servers (to authorize creating new queues).
-- View deleted messages, full message deletion by sender (with recipient opt-in per contact).
-- Block screenshots and view in recent apps.
+- 🏗 Contact verification via a separate out-of-band channel.
+- 🏗 Ephemeral/disappearing/OTR conversations with the existing contacts.
- Optionally avoid re-using the same TCP session for multiple connections.
- Access password/pin (with optional alternative access password).
-- Ephemeral/disappearing/OTR conversations with the existing contacts.
- Media server to optimize sending large files to groups.
- Video messages.
- Message delivery confirmation (with sender opt-in or opt-out per contact, TBC).
- Multiple user profiles in the same chat database.
-- Advanced server configuration.
- Feeds/broadcasts.
- Unconfirmed: disappearing messages (with recipient opt-in per-contact).
- Web widgets for custom interactivity in the chats.
@@ -246,8 +245,9 @@ It is possible to donate via:
- [GitHub](https://github.com/sponsors/simplex-chat) - it is commission-free for us.
- [OpenCollective](https://opencollective.com/simplex-chat) - it charges a commission, and also accepts donations in crypto-currencies.
-- Monero wallet: 8568eeVjaJ1RQ65ZUn9PRQ8ENtqeX9VVhcCYYhnVLxhV4JtBqw42so2VEUDQZNkFfsH5sXCuV7FN8VhRQ21DkNibTZP57Qt
-- Bitcoin wallet: 1bpefFkzuRoMY3ZuBbZNZxycbg7NYPYTG
+- Monero address: 8568eeVjaJ1RQ65ZUn9PRQ8ENtqeX9VVhcCYYhnVLxhV4JtBqw42so2VEUDQZNkFfsH5sXCuV7FN8VhRQ21DkNibTZP57Qt
+- Bitcoin address: 1bpefFkzuRoMY3ZuBbZNZxycbg7NYPYTG
+- Ethereum address: 0x83fd788f7241a2be61780ea9dc72d2151e6843e2
- please let us know, via GitHub issue or chat, if you want to create a donation in some other cryptocurrency - we will add the address to the list.
Thank you,
diff --git a/blog/20221206-simplex-chat-v4.3-voice-messages.md b/blog/20221206-simplex-chat-v4.3-voice-messages.md
index 0e6e9fd771..32bbe058e5 100644
--- a/blog/20221206-simplex-chat-v4.3-voice-messages.md
+++ b/blog/20221206-simplex-chat-v4.3-voice-messages.md
@@ -1,11 +1,139 @@
---
layout: layouts/article.html
-title: "SimpleX Chat v4.3 – voice messages, improved server management and conversation preferences"
+title: "SimpleX Chat reviews and v4.3 released – with instant voice messages, irreversible deletion of sent messages and improved server configuration."
date: 2022-12-06
-preview: Voice messages are released!
+image: images/20221206-voice.png
+imageBottom: true
+previewBody: blog_previews/20221206.html
permalink: "/blog/20221206-simplex-chat-v4.3-voice-messages.html"
---
-# SimpleX Chat v4.3 – voice messages, improved server management and conversation preferences
+# SimpleX Chat reviews and v4.3 released – with instant voice messages, irreversible deletion of sent messages and improved server configuration.
-TODO This is a permalink for the release announcement
+**Published:** Dec 6, 2022
+
+## SimpleX Chat reviews
+
+Since we published [the security assessment of SimpleX Chat](https://simplex.chat/blog/20221108-simplex-chat-v4.2-security-audit-new-website.html) completed by Trail of Bits in November, several sites published the reviews and included it in their recommendations:
+
+- Privacy Guides added SimpleX Chat to [the recommended private and secure messengers](https://www.privacyguides.org/real-time-communication/#simplex-chat).
+- Mike Kuketz – a well-known security expert – published [the review of SimpleX Chat](https://www.kuketz-blog.de/simplex-eindruecke-vom-messenger-ohne-identifier/) and added it to [the messenger matrix](https://www.messenger-matrix.de).
+- Supernova published [the review](https://supernova.tilde.team/detailed_reviews.html#simplex) and increased [SimpleX Chat recommendation ratings](https://supernova.tilde.team/messengers.html).
+
+## What's new in v4.3
+
+- [instant voice messages!](#instant-voice-messages)
+- [irreversible deletion of sent messages for all recipients](#irreversible-message-deletion)
+- [improved SMP server configuration and support for server passwords](#smp-servers-configuration-and-password)
+- [privacy and security improvements](#privacy-and-security-improvements):
+ - protect app screen in recent apps and prevent screenshots
+ - improved privacy and security of SimpleX invitation links in the app
+ - optional Android app data backup
+ - optionally allow direct messages between group members
+
+### Instant voice messages
+
+
+
+Voice messages, unlike normal files, are sent instantly, in the existing connection with your contact and without acceptance from the recipient. For this reason we limited the size of voice messages to ~92.5kb (an equivalent of 6 messages), that limits the duration to 30 seconds on iOS and to ~42 seconds on Android (the size is different because of different encoders), with an average sound quality. The voice messages are sent in MP4AAC format that is natively supported both on iOS and on Android, and you can play voice message files outside of SimpleX Chat app.
+
+Users who do not want to receive voice messages can disable them, either globally, for all contacts, or for each contact independently. Please note that the global preference change will only affect the contacts where you shared your main profile (not incognito contacts) and where you didn't change the preference for the particular contact. Groups have a separate policy that allows disabling voice messages for all members (they are allowed by default). The owner can set this policy when creating a group or later, via Group preferences page.
+
+### Irreversible message deletion
+
+
+
+When you receive email, you have full confidence that the sender cannot delete their email from your mailbox after you received it. And it seems correct – in the end, this is your device, and nobody should be able to delete any data from it.
+
+Most existing messengers made an opposite decision – the senders can irreversibly delete their messages from the recipients' devices after they were delivered, whether recipients agree to that or not. And it seems correct too - this is your message, you should be able to delete it, at least for a limited time; that the message is on the recipient device doesn't change your ownership of this message.
+
+While both these statements appear correct, at least to some people, they simply cannot both be correct at the same time, as they contradict each other - either one or both of them must be wrong. This appears to be a very polarising subject, and [the polls](https://mastodon.social/@simplex/109461879089268041) [I made](https://www.reddit.com/r/SimpleXChat/comments/zdam11/poll_irreversible_message_deletion_by_sender_what/) [yesterday](https://twitter.com/epoberezkin/status/1599797374389727233) [show it](https://www.linkedin.com/feed/update/urn:li:activity:7005564342502842368/) - the votes are split evenly.
+
+You may want to be able to delete your messages even after they are received to protect your privacy and security, and you want the communication product you use to enforce it. But you may also have many reason to disagree to the deletion of messages on your device for several different reasons:
+
+- it may be a business context, and either your organisation policy or a compliance requirement is that every message you receive must be preserved for some time.
+- these messages may contain threat or abuse and you want to keep them as a proof.
+- you may have paid for the the message (e.g., it can be a consulting report), and you don't want it to suddenly disappear before you had a chance to store it outside of the conversation.
+
+Instead of taking any side in this choice, we decided to allow to change this behaviour either globally or separately for each contact or group. That makes SimpleX Chat unique, being suitable both for the communication contexts where email is traditionally used and in informal or privacy sensitive contexts, that would allow the senders to delete messages irreversibly, provided that the recipients agree to that.
+
+In any case, the senders can never be 100% certain that the message is deleted from the recipient's device - recipient can be running a modified client that does not honour the conversation setting, and there is no way to ascertain which code your contact runs on their device.
+
+If irreversible message deletion is not allowed in the conversation, the senders can still mark their messages as deleted, and it would show "mark deleted" placeholder in the conversation. The recipients can then both reveal the content of the original message and fully delete it on their devices.
+
+### SMP servers configuration and password
+
+
+
+When you self-host your own SMP server you may want to make it public so that anybody can use it to receive messages. But many users want to host their private servers, so that only they and their friends can use them to receive the messages.
+
+v4.0 of SMP server and the new version of the apps adds support for server passwords. It is chosen randomly when you initialize the new server, and if you already have a server you can change it. Anybody can still message you, it doesn't require knowing the password, and the links you share do not include it, but to be able to receive the messages you need to know a server address that includes the password. In a way, it is similar to how basic authentication works in HTTP, and how browsers support the URIs with included credentials.
+
+The new server configuration section now allows to test your servers before you start using them, and you can also share your server address via QR code, so that your friends or your team can use them too, without the need to copy paste the addresses.
+
+You can read how to install and configure SMP servers in [this guide](https://github.com/simplex-chat/simplex-chat/blob/stable/docs/SERVER.md).
+
+### Privacy and security improvements
+
+#### Protect app screen
+
+
+
+It is now enabled by default, but you can disable it via settings.
+
+iOS app only hides the app screen in the recent apps, Android app in addition to that also prevents the screenshots.
+
+This is not the security measure for the senders, and we made it optional, as the recipient could circumvent it anyway – this is for you to protect your app screen when you give your phone to somebody.
+
+#### Privacy and security of SimpleX invitation links
+
+Previously, when you sent somebody an invitation link, a contact address or a group link, they would take half a screen in the chat and they could open in the browser in some cases. Also, as these links are quire large, it is not easy to see if the page domain is maliciously replaced, what SMP server the connection would go through or what kind of link it is.
+
+This version instead of showing the full link shows a short description, and it replaces a public web address with an internal URI scheme that the app uses (simplex:/) – such links open directly in the app. There is an option to show the full link, if you need it, and even to open it in the browser from the app, but in this case if this link is not using https://simplex.chat website it will show as red to highlight it.
+
+### Optional Android app data backup
+
+The previous version always backed up app data in the way it was configured by the system. Now you can override it from inside the app, preventing the backup even if it's enabled by the system settings. This version requires disabling it manually, we will make it disabled by default in the next release (v4.3.1).
+
+### Direct messages between group members
+
+The new version does not allow them by default, but it can be enabled by group owners in the group settings when the group is created or at any later moment.
+
+## SimpleX platform
+
+Some links to answer the most common questions:
+
+[How can SimpleX deliver messages without user identifiers](./20220511-simplex-chat-v2-images-files.md#the-first-messaging-platform-without-user-identifiers).
+
+[What are the risks to have identifiers assigned to the users](./20220711-simplex-chat-v3-released-ios-notifications-audio-video-calls-database-export-import-protocol-improvements.md#why-having-users-identifiers-is-bad-for-the-users).
+
+[Technical details and limitations](./20220723-simplex-chat-v3.1-tor-groups-efficiency.md#privacy-technical-details-and-limitations).
+
+[How SimpleX is different from Session, Matrix, Signal, etc.](https://github.com/simplex-chat/simplex-chat/blob/stable/README.md#frequently-asked-questions).
+
+Please also see the information on our [new website](https://simplex.chat) - it also answers all these questions.
+
+## Help us with donations
+
+Huge thank you to everybody who donated to SimpleX Chat!
+
+We are prioritizing users privacy and security - it would be impossible without your support.
+
+Our pledge to our users is that SimpleX protocols are and will remain open, and in public domain, - so anybody can build the future implementations of the clients and the servers. We are building SimpleX platform based on the same principles as email and web, but much more private and secure.
+
+Your donations help us raise more funds – any amount, even the price of the cup of coffee, makes a big difference for us.
+
+It is possible to donate via:
+
+- [GitHub](https://github.com/sponsors/simplex-chat) - it is commission-free for us.
+- [OpenCollective](https://opencollective.com/simplex-chat) - it charges a commission, and also accepts donations in many crypto-currencies.
+- Monero address: 8568eeVjaJ1RQ65ZUn9PRQ8ENtqeX9VVhcCYYhnVLxhV4JtBqw42so2VEUDQZNkFfsH5sXCuV7FN8VhRQ21DkNibTZP57Qt
+- Bitcoin address: 1bpefFkzuRoMY3ZuBbZNZxycbg7NYPYTG
+- Ethereum address: 0x83fd788f7241a2be61780ea9dc72d2151e6843e2
+- please let us know, via GitHub issue or chat, if you want to make a donation in some other cryptocurrency - we will add the address to the list.
+
+Thank you,
+
+Evgeny
+
+SimpleX Chat founder
diff --git a/blog/README.md b/blog/README.md
index 9596ac066c..d509fa2057 100644
--- a/blog/README.md
+++ b/blog/README.md
@@ -1,5 +1,21 @@
# Blog
+Dec 12, 2022 [SimpleX Chat reviews and v4.3 released]
+
+November reviews:
+
+- [Privacy Guides](https://www.privacyguides.org/real-time-communication/#simplex-chat) recommendations.
+- [Review by Mike Kuketz](https://www.kuketz-blog.de/simplex-eindruecke-vom-messenger-ohne-identifier/).
+- [The messenger matrix](https://www.messenger-matrix.de).
+- [Supernova review](https://supernova.tilde.team/detailed_reviews.html#simplex) and [messenger ratings](https://supernova.tilde.team/messengers.html).
+
+v4.3 is released:
+
+- instant voice messages!
+- irreversible deletion of sent messages for all recipients
+- improved SMP server configuration and support for server passwords
+- privacy and security improvements: protect app screen, SimpleX links security, etc.
+
Nov 8, 2022 [Security audit by Trail of Bits, the new website and v4.2 released](./20221108-simplex-chat-v4.2-security-audit-new-website.md)
_"Have you been audited or should we just ignore you?"_
diff --git a/blog/images/20221206-deleted1.png b/blog/images/20221206-deleted1.png
new file mode 100644
index 0000000000000000000000000000000000000000..938ea3e2853186107d9d358428daa808c633aadf
GIT binary patch
literal 340888
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