News for hackers. Stuff that matters.
Re:Matrix 2.0: The Future of Matrix by neilv on Thursday September 21, 2023 @01:25PM (#37600919)
Thoughts on how this will get us towards when libre software privacy&security type people are ready to advise friends to move to Matrix for personal communication?

(To be clear, the platform has to be all open source and open standards, actually decentralized, guided by those principles -- not an effectively proprietary play even if nominally open. For example, you should be able to get all the same functionality with Element, Fluffychat, Thunderbird, and other user agents, and with any home server, both now and on an ongoing basis. And the user agent implementation difficulty should become tractable enough, in terms of size&complexity and specification, that one person could write a new one -- not like Web browsers have become, where there's mainly only one, that company has been funding the runner-up, and that company can pretty much dictate 'standards'.)

Re:Matrix 2.0: The Future of Matrix by Arathorn on Thursday September 21, 2023 @01:39PM (#37601130)
Matrix 2.0 is a major step towards getting friends & family on Matrix.

Firstly, it's not introducing new features - it's just making the current featureset work super-efficiently (while retaining compatibility with today's Matrix). So there should be no fragmentation between Element/Fluffychat/Thunderbird, with the possible exception of the new scalable encrypted VoIP conferencing (but then very few Matrix clients implemented the old VoIP conferencing, plus you can always just embed an Element Call instance to get at it now - as Element X does today).

Secondly, we're explicitly working to protect Matrix from the commercial interests from Element (the company set up by the team who created Matrix, of which I'm ceo/cto as well as Matrix project lead). We already have The Matrix.org Foundation (https://matrix.org/foundation) as an independent non-profit to hold the Matrix IP and maintain its neutrality - but we also just hired Josh Simmons (former President of the OSI) as its independent Managing Director (https://matrix.org/blog/2023/09/introducing-josh-simmons-man...).

So: going forwards, the Foundation increasingly does not have to depend on Element not being evil, but instead has its own independent management to ensure the protocol exists to support everyone in the ecosystem, without fragmentation, as per the guiding principles at https://matrix.org/foundation - under its own autonomy.

I'd say this is is good news for libre software privacy & security type people, but then again I'm biased. Practically, the only thing getting in the way of getting friends & family on Matrix is that Element X requires fancy OIDC-native homeservers for registration, so newbies won't be able to use Element X to join Matrix yet. But the app itself should be an excellent way to get folks on board in the very near future.

Re:Matrix 2.0: The Future of Matrix by neilv on Thursday September 21, 2023 @01:58PM (#37601425)
Thank you for the comments. I'll keep my fingers crossed that this plays out well.

> plus you can always just embed an Element Call instance

That sounds like potentially a commercial embrace&extend&extinguish situation, which we need to avoid.

Re:Matrix 2.0: The Future of Matrix by Arathorn on Thursday September 21, 2023 @02:23PM (#37601773)
Yup, good call point, which is why we deliberately implemented two different independent group VoIP implementations - the one in Element Call (based on matrix-js-sdk) and the one in Hydrogen (based on hydrogen-web-sdk).

Admittedly the new livekit-based implementation takes us back down to a single implementation for now, but in its defense it’s only a few weeks old (with e2ee). Hopefully others will spin up independent implementations rapidly - although right now it does introduce a potential commercial EEE situation… but from on LiveKit rather than Element.

Eitherway, it’s something we’re painfully aware of… while also trying to ensure we find enough $ to pay for dev on Matrix (and Element) otherwise the whole thing collapses.

Re:Matrix 2.0: The Future of Matrix by em-bee on Thursday September 21, 2023 @02:10PM (#37601590)
element still has serious usability issues that need to be fixed before i can get friends or family on board.

the way threads are displayed in the browser versions makes them hard to follow. in our hackerspace, where many are tech minded people, i see regular complaints about that.

scrollback to unread messages often fails. i have never had another chat application where that was a problem. this should just work.

the handling of encryption keys is very confusing. there are to many moving parts, it's not clear what i must save so that i can restore the keys in a new client.

private rooms are also confusing. i want to have a private room be the name of my chat partner, and they want it to carry my name. being able to do that would be very helpful.

i am also missing the ability to use a different nickname in every room. different groups know me under different nicknames. discord and wechat can do it. it would be great if matrix/element could do that too.

Re:Matrix 2.0: The Future of Matrix by Arathorn on Thursday September 21, 2023 @02:28PM (#37601852)
Sounds like you’re talking about Element Web or Desktop here. On Mobile, we just rewrote the app as Element X and it addresses almost all your concerns (other than per-room nicks, although ironically Element Web does have that today - try the /roomnick command, from memory).

Having got Element X out the door, my attention at least is going to swing back to Element Web. In terms of encryption disasters, we are about to switch Element Web’s crypto to the same rust implementation as Element X, hopefully next week - you can track the progress at https://github.com/vector-im/element-web/issues/21972#issuec.... Hopefully this will make a much-needed massive improvement on encryption, while also speeding it up 5x or so. On Element X, encryption failures are almost unheard of (other than when talking to Element Web).

Re:Matrix 2.0: The Future of Matrix by _rs on Thursday September 21, 2023 @04:18PM (#37603673)
Element X is great except for the lack of history, once that's added it'll change to my daily driver. I very often search my chat history and reference things going back months
Re:Matrix 2.0: The Future of Matrix by mike-cardwell on Thursday September 21, 2023 @02:16PM (#37601671)
Encryption in Matrix is a nightmare. I set up Synapse and pulled half a dozen or so people onto it. We have a few chat rooms. Randomly different users clients are unable to decrypt the messages of other users clients. You click some button about syncing encryption keys, and nothing happens. Then randomly a week later you can start reading each others messages again. shrug This has been going on for years now.

This alone makes Matrix the worse chat platform out there from a users perspective IMO. I invested too much effort in getting things up and running and using it now though, so I'm just hoping that this gets fixed one day, or something better comes along that I can migrate to.

Re:Matrix 2.0: The Future of Matrix by Arathorn on Thursday September 21, 2023 @02:30PM (#37601897)
Sorry. As per the sibling comment to yours, we made a decision on Element Web/Desktop to rip out the old encryption implementation and replace it with matrix-rust-sdk’s crypto implementation about a year ago, and while it’s due to land next week, it means that some folks have had a miserable time in the interim.
Re:Matrix 2.0: The Future of Matrix by beanjuiceII on Thursday September 21, 2023 @05:22PM (#37604553)
so one hand says they are making things better for friends and family, and the other is ripping out things to make peoples lives miserable? and then letting them float in that misery for some period of time?
Re:Matrix 2.0: The Future of Matrix by dkasak on Thursday September 21, 2023 @05:40PM (#37604778)
A lot of the problems were caused by the legacy crypto implementations. The misery is not caused by ripping them out and replacing them with matrix-rust-sdk crypto, but by it (unavoidably) taking a while.
Re:Matrix 2.0: The Future of Matrix by dingnuts on Thursday September 21, 2023 @05:52PM (#37604924)
I'm curious and extremely skeptical as to how the UX is going to be made better regarding the terrible UX surrounding encryption. I used Matrix with a non-technical family member for about six months before giving up and going back to SMS because she frequently got messages about encryption that she was in no way equipped to deal with, and did not even begin to understand (yes, the "user-friendly" key fingerprint screen is one of those pain points) and I had to handhold her through the process, every time she got a new device or similar.

One time I had to manually export and import my own keys to be able to read old messages, which was a task that would have been too technical for most of the people I'd like to chat with, and was supremely annoying for me.

It's just a non-starter. I have a community I've been considering moving to Matrix for literal _years_ now and there are just so many sharp edges.

I've been confused about Matrix's priorities for a long, long time. I am not getting any less confused, to be honest.

Re:Matrix 2.0: The Future of Matrix by Arathorn on Thursday September 21, 2023 @06:50PM (#37605519)
Well, just as folks might be skeptical about Matrix clients ever being as performant as WhatsApp/iMessage/Telegram, and yet we eventually got there with Element X... I'm expecting a similar outcome with E2EE UX.

The high level plan is:

* Fix all the bugs which cause random undecryptable messages, which was the main thing causing frustration. This is (hopefully) done now by converging on the new Rust implementation.

* Generate a recovery key, rather than confuse the user by asking them to pick two passwords (one for their account, one for their encryption). Impress on the user that if they ever want to recover their history, they'll need it. Expect that most users will lose it.

* When logging in on a new device, scan a QR code on an existing device to transfer over the keys (and thus history). Users are used to this now thanks to WhatsApp and Discord, and empirically they can do it fine. The recovery key is used only as a worst-case scenario if the user has no other devices. The act of logging in (either via scanning another device, or via recovery key) signs that device as owned by you.

* Only accept messages from devices that a given user has signed (i.e. trust on first use for users). If you want to verify that user out of band, they get an green tick too, purely to help you keep track of which users you're sure are legit and which users you've assumed are legit.

* At any given point, encryption is either enabled on your device (i.e. you've signed that device; it can access your encrypted message history; it can store keys for your encrypted message history) or it's not (and you can't do any E2EE). There are no halfway states.

This may sound simple and obvious when written out like this, but each point is a major change from the supremely confusing system we have today. The thing stopping us from having implemented it sooner is the huge amount of effort which went into reimplementing the engine in Rust. But having now (almost) finished that project, next thing up is fixing the UX, at last. The rough timeline is hopefully end-of-year, but, again, timings are contingent on funding pressure.

Re:Matrix 2.0: The Future of Matrix by em-bee on Thursday September 21, 2023 @07:03PM (#37605647)
that sounds promising. looking forward to it.
Re:Matrix 2.0: The Future of Matrix by kevincox on Thursday September 21, 2023 @02:22PM (#37601761)
FWIW my partner and mother are using it. We have had the occasional key synchronization issue with Element but has been mostly smooth sailing. I did walk them both through the setup but they probably could have managed. However they have some basic tech skills. I suspect that others in my family with little tech literacy would need to have it set up for them but would probably be fine after that.
Re:Matrix 2.0: The Future of Matrix by sneak on Thursday September 21, 2023 @02:32PM (#37601944)
One of the big problems as I see it is that all notifications on iOS must be proxied via APNS and those can only be sent by the app publisher, so all home servers must send their iOS notifications to Vector (the Element publishers) to be sent to APNS and on to an iPhone or iPad.

This is a centralized point for surveillance of metadata. I also do not know how much information is actually contained in the notification itself. In any case Vector has knowledge of every home server with an iOS client, and their approximate traffic levels.

Re:Matrix 2.0: The Future of Matrix by Aerbil313 on Thursday September 21, 2023 @04:20PM (#37603702)
Then everyone should just roll out their own app… this seems like an EU-regulation-needed situation.
Re:Matrix 2.0: The Future of Matrix by sneak on Thursday September 21, 2023 @04:58PM (#37604243)
This requires paying about $10/month to Apple and doxxing yourself with a lot of PII.

It also requires that you as a homeserver sysadmin a) have a Mac, b) install Xcode, c) know how to modify and compile iOS applications, d) want to deal with rebuilding and reuploading and re-seeking app approval on major API changes because long-un-updated apps are not allowed in the App Store, etc...

Re:Matrix 2.0: The Future of Matrix by inhumantsar on Thursday September 21, 2023 @07:23PM (#37605819)
Security, Convenience, and Speed will always be in constant tension.

If you start by assuming that a perfect solution will always be unattainable, deciding on what tradeoffs are acceptable becomes easier.

Imho it almost always going to be worth trading the large PITA of self-managing APNS infra for the small surface area that routing push notifications through Elements systems.

Re:Matrix 2.0: The Future of Matrix by sneak on Thursday September 21, 2023 @08:22PM (#37606297)
This comment makes it seem like Apple's anticompetitive stance on sideloading is a basic force of nature instead of something dreamed up by control freak hippies and implemented deliberately in code.

The problem is iOS's privacy-hostile design (in service of their locked down revenue model), not some unbreakable iron triangle.

On Android, messaging apps can run in the background and periodically talk to their homeserver without an intermediary.

Re:Matrix 2.0: The Future of Matrix by brokenmachine on Sunday September 24, 2023 @11:46PM (#37639492)
Agree 100% about Apple being anti-consumer, but the Android thing is not quite that simple.

Background tasks on Android can pretty much be killed at any time. I believe only apps with a persistent notification and the native google notification service can remain active at all times. But yes, they can connect to any server while they are running.

Re:Matrix 2.0: The Future of Matrix by sneak on Friday September 22, 2023 @09:37AM (#37611909)
> Imho it almost always going to be worth trading the large PITA of self-managing APNS infra for the small surface area that routing push notifications through Elements systems.

Once you're going to push encrypted data through a centralized service, you might as well just run Signal and skip running the homeserver too.

Re:Matrix 2.0: The Future of Matrix by Arathorn on Friday September 22, 2023 @04:07PM (#37617075)
Push in Matrix doesn’t contain data; it’s just a wakeup to tell the client to sync a given room & message id.