Important Changes to the Matrix Server

The Matrix server for FreeTube has become a valuable source of discussion when it comes to the development of FreeTube as well as general privacy discussion. When I created the server, I enabled the experimental end-to-end encryption in an effort to promote and encourage private practice. While I still believe that communications should be encrypted when at all possible, the encryption has become troublesome for users. Because of this, I will be making some changes to the way the Matrix server is structured.

Why Is This a Problem?

When E2EE is enabled in a Matrix server, each user is notified when a new device joins the server. Notice how I said every new device and not every new user. Any new device that joins in on the conversation forces a scary looking error message wanting users to verify the new device that has joined. As we are a public server, this can get very annoying very quickly to active users. On top of it, the user then has to re-send their encryption keys to everyone on the server, which causes messages to be delayed up to a couple of minutes.

Those that do not send their keys properly are greeted with other users unable to read their messages or vice versa. This approach is good for private communities with only a few users, but is very flawed when in use by a public community.

What's the fix?

The obvious solution that you've probably thought of already, is to disable the encryption. Like I mentioned, it cannot be disabled, but I can create a new room. I have opened up a non-encrypted Matrix server at freetubegeneral:matrix.org. As a privacy community, we shouldn't suggest anything to new advocates and turn around and not do it ourselves. Because of this, the current encrypted room will still be supported, being rebranded as freetubesecure:matrix.org. As you may have guessed, this will cause discussion to be fractured a little bit, but there is something else that can be done to help with that.

FreeTube Communities

One feature of Matrix is the ability to create communities. A community allows you to associate multiple rooms together. Any person that is invited to the community will automatically have access to all rooms. This should make it easier to join the room that you prefer while still not missing out on discussions from the other. You can join the community at +freetube:matrix.org. All links on the website and on GitHub will link to the community instead of an individual chat room.

Hopefully, this helps everyone out for future discussions. This opens up the possibility of bridging with an IRC channel as well if there's enough demand for one. Let me know what you'd like to see over at the new FreeTube Community.