10 ms·
Verifying your Matrix devices is becoming mandatory
- olivia-banks 11mo agoWhat exactly does this entail? I'm willing to be charitable in assuming that their use of "verify" isn't the modern usage of "give us your ID!" but I'm not enmeshed enough in the ecosystem anymore to know.
- ranger_danger 11mo agoMy understanding is that there's two different types of verification. Self-verification means that any new secondary devices you log into your account with will need to be verified by an existing login by way of an automatic popup that asks if you trust the device. It used to just be a Yes/No button but I think now they've added QR codes and/or emoji matching. The other kind is verification between two different people, like when starting a direct message conversation, you might get the same emoji matching window to verify each other.
- xethos 11mo agoRespectfully, not even close. Verification is when I sign in from a new device, I use an existing device or second passphrase (either-or) to ensure that yes, it is me on both devices. I never have to reveal my ID, name, phone number, or email address to anyone. Not to Element, the Matrix Foundation, or the person running my home server where all my [encrypted] messages live.
- josephcsible 11mo agoYeah, IMO "verify" was a poor choice of wording for what this is. It has nothing to do with remote attestation or any other form of Treacherous Computing, and it has nothing to do with your real-life identity. It's just "go on your old device and confirm that the new device is really yours."
- goku12 11mo agoIf you don't mind reading an essay, here is mine from the same discussion: https://news.ycombinator.com/item?id=45989744 https://news.ycombinator.com/item?id=45989744
- tripdout 11mo agoWhat is verification? What does it involve doing? A lot of information on why it's useful, but how is it implemented? I hope it's not something like the Play Integrity API, but with no information to go on, I can't say either way.
- olivia-banks 11mo agoYeah, I was wondering this as well. At the very least, this appears to be an Element requirement that was just enabled by a Matrix protocol update, so moving would be possible, but afaik Element is extremely popular as far as Matrix goes.
- ThePinion 11mo agoIn the current state, it's basically just a self verification. When you use a new device it shows a series of emoji on each device and asks you if they're the same, then the device is verified.
- mroche 11mo agoYou can also use a generated security key to verify as a type of second-factor.
- totetsu 11mo agohttps://element.io/en/help#encryption-device-verification https://element.io/en/help#encryption-device-verification > After Alice logs in on a new device, she uses her cryptographic identity to demonstrate to Bob that the new device genuinely belongs to her, rather than being added by someone else with access to her account. She can do this either by entering her recovery key (which gives the new device immediate access to her cryptographic identity ), or by carrying out an interactive verification from an existing verified device.
- navigate8310 11mo agoSo is this like the Signal PIN which is required when installing on a new device? If you forget, the cryptography changes and old contacts are warned that signatures are rotated, right?
- bfkwlfkjf 11mo agoIs this the ritual of getting together with a person and checking that their fingerprint match what you see on the app? If this is that case what will happen is that people will start verifying everyone (because they might want to text to strangers that they can't bother verifying because the stakes are so low) and so verification will lose all meaning.
- ranger_danger 11mo agoIsn't this how TLS itself already works? "trust on first use"?
- treyd 11mo agoWith PKI you're trusting a certificate chain up to a CA you already trust, by way of your OS or browser vendor. A domain can layer on HSTS to that, which directs clients to additionally refuse to trust a new cert for a domain until the one you currently trust has expired.
- scheub 11mo agoThat’s not what HSTS does. It asks the client to remember that you want to only use TLS for that domain and refuse to use unencrypted HTTP in the future.
- pavon 11mo agoNot in current practice. That is why you have to get a certificate from a trusted CA. If your CA isn't in the browser's cert database they will reject the connection even on the first time. If browsers allowed TOFU we would still be able to use self-issued certificates, without manually distributing certs to anyone that uses your service. SSH is an example of TOFU.
- majorchord 11mo ago> we would still be able to use self-issued certificates You still can... it just displays a warning message on first use, as does ssh.
- lousken 11mo ago"The authenticity of this encrypted message cant be guaranteed on this device" both sides verified, but this still randomly pops up, what happens then? will i lose those messages in the future?
- Arathorn 11mo agoNo, it's just a warning that your client can't prove that the message was really sent by that sender. These will eventually go away once https://github.com/matrix-org/matrix-spec-proposals/pull/4048 https://github.com/matrix-org/matrix-spec-proposals/pull/404... lands.
- jerrythegerbil 11mo agoAs someone whose devices randomly became unverified just a few months ago, signed out, and then tried to use my recovery keys: I was authenticated, but unverified. When attempting to verify iOS, Desktop linux didn’t work. When attempting to verify Desktop Linux, Desktop Windows didn’t work. When verifying Android, iOS didn’t work. Every verified official client for every platform was verified, tried a different verification method than expected, and failed. All of this to say, this isn’t the first time this has happened to myself and others. Forcing verification is otherwise known as unexpected “offboarding”. If some verification methods have problems, publish a blog about their deprecation instead. I love element, but this can’t be done without prior work to address.
- tcfhgj 11mo agoare you using your own server? I have never heard of such issue and not experienced it despite intensive use, so it's a bit strange that you and people you know have experienced this repeatedly.
- Aurornis 11mo agoI went through the same frustration recently. I only occasionally use it, but every second or third time I have to open it up to talk in some channel I lose 30 minutes chasing my tail trying to work through the latest set of problems. I like the idea, but the effort to reward ratio for using the product has not been good. It has caused visible churn and attrition in the few channels I’ve tried to participate in and it’s become a problem for the OSS projects I’m part of that try to use it for their communication. Of course, there are some people who like it that way and think making communication spaces difficult to access is a bonus, but that’s another topic.
- Groxx 11mo agoI've had constant problems with the verification ever since it was introduced. As far as I can tell it hasn't improved at all. Sometimes it works, sometimes it repeatedly kicks me out moments after succeeding, and it's still prompting me to verify some old devices that I removed Element from years ago and I can't find any way to make the constant pop-ups go away (when they feel like appearing again - sometimes they go away for a couple months). All this will do is make me lose EVERY profile.
- hedora 11mo agoI don’t use Matrix, but if it’s E2EE, then how is it possible in the current design for an unverified device to even exist? It has the keys, or it doesn’t, right?
- kevincox 11mo agoMatrix has E2EE support and many clients are pushing it as the default. But it also supports rooms that are only encrypted in transit.
- prophesi 11mo agoThat's correct, but E2EE also allows for unverified devices[0]. Key distribution and device verification are separate issues, and the former doesn't enforce the latter until April 2026 as they've announced in the HN article. [0] https://matrix.org/docs/matrix-concepts/end-to-end-encryption/ https://matrix.org/docs/matrix-concepts/end-to-end-encryptio...
- bigstrat2003 11mo agoYou don't have to use E2EE if you don't want to. I personally don't because I don't care about it, and it adds extra difficulties to the experience.
- throwaway290 11mo agoIf you don't need e2ee, are there features that make matrix better than xmpp?
- tcfhgj 11mo agodecentralized rooms, built in video conferencing, consistent chat history storage
- jeroenhd 11mo agoLots of open source projects have matrix servers and not XMPP servers. Some bridges don't have XMPP equivalents (and some bridges don't have Matrix equivalents either). XMPP also does E2EE of course, though I've found it to be a worse experience on most clients compared to Matrix.
- toastal 11mo agoI tried out an alpha client once & can’t get the stupid pop-up about unverified devices to go away now. Another client didn’t have the verification flow even set up—this will end up being yet another barrier to entry for new clients. With the clients (yes, multiple) crashing often, constantly syncing for ages, & feature sets not on parity + without graceful fallbacks, I do not like the Matrix client space (nor the server space, but that is a different topic). There has never been a better time to (re)embrace XMPP as your decentralized chat option. The clients are less buggy, handle missing features gracefully, & best part is, not being built on an eventual consistency model, you don’t have the constant syncing issue with delayed messages. If you wanted you could make an XMPP client in a day since the base spec is small/simple—& features like device verification would be seen as mandatory in the base specification.
- mxuribe 11mo agoI used to consider myself a HUUUGE matrix fanboy....while i still respect what the teams have done over time, I have been feeling a little, i don't know, deflated maybe? Maybe its the UX/UI aspect, i don;t know...i have not run a homeserver since like maybe 2019 or so? But nowadays, i have less interest in running a homeserver, and as far using the various clients: meh. Element feels bloated, and others either might be more snappier but might have an odd bug, or don't implement all features that might be expected, etc. So, last year i tried to play briefly with Prosody server to re-acquaint myself with xmpp...and it wasn't so bad. Not as great as i expected for this day ana age, bbut not terrible. The server setup felt like i needed to study a bunch of different docs...and ultimately was smoother than expected....so i think documentation is either outdated, or was written a little less clear than expected. That being said, the low resource usage was ridiculously pleasant compared to matrix homeserver! The fact that an xmpp server allows for such scalability on such low resources is a great testament! And, that was prosody, which some folks state is not even as performant, scalable as ejabbered....so they say...so wow, that's impressive if that's true. Regardless, xmpp servers that can run on such low resource hardware but enable so many users to chat...is quite awesome!!! The client side of xmpp was a different matter; i wasn't so happy. I blame myself because maybe there might have been plugins that maybe i didn't install correctly on server side, i don't know...but it felt not as easy as i expected. The clients were a little disappointing; again not terrible but not great. Maybe i'm spoiled? Or, maybe i did too much wrong? But if that's the case, the maybe there's an opportunity for better documentaiton? I don't know....i really like both matrix and xmpp because both live in the realm of free and open source software.....so i really want both or either to succeed. I want to live in a world where we are not beholden to only proprietary options, like whatsapp, crappy sms/text messaging, etc. I want to give props to all the folks who made and maintain all aspects of xmpp...as much as i am whining, i don't want to take away from all the hard work that they have freely given; super props to them!!! What i really want is a modern, free and open source version of IRC, with plenty of modern features (E2EE, file uploads, presence detection, etc.), decent desktop and mobile clients, easy server installation and management, and said server-side software would ideally not need such beefy hardware to run...Or, is my wish too far fetched?
- Bayaz 11mo agoI have a private matrix server for a few friends. Whenever someone logs on with a new device or client it lists them as being unverified. Eventually it goes away. I really have no idea at what point verification occurs.
- jeroenhd 11mo agoThey verify their device. Usually means opening Matrix on a other device, clicking the pop-up, and scanning a QR code or matching emoji. One device signs proof of verification of the other and exchanges encryption keys so the new device can read encrypted conversations. Unverified devices are indistinguishable from a hacker logging in through credential stuffing/password leaks until verification is done. It's a process similar to adding devices to Signal or WhatsApp, except with Matrix you can still log in without having physical access to another device. Useful if you only ever visit unencrypted rooms perhaps.
- iqihs 11mo agoI think Matrix as a protocol has been pretty ineffective, as their top priority seems to be keeping data permanent and duplicated. Both performance and privacy are at the bottom of their priority list. The one good thing I can say about it is that encryption of message contents is enabled by default in conversations and available in groups, but that's about it - nothing else is, or can be, encrypted. In other words, every participating server knows who is talking to who, and how much, and when, and in what rooms, and what those rooms' names are, and what those rooms' descriptions are, and who moderates them, etc. Meanwhile, an app like Signal can do none of that, and that's by design. If you're looking for a privacy oriented messaging system, you'd best look elsewhere. I'm new to Matrix and found this comment on reddit. How much of it is accurate and does it actually contribute to whether or not the future of the protocol is promising?
- kachapopopow 11mo agoit's pretty on point, it's mostly a "trusted" platform as long as you trust the host with the messages between two people (or more?) being (optionally) encrypted.
- xethos 11mo ago@Arathorn would be an objectively better person to discuss this, but the Redditor isn't completely off the mark: metadata is (currently) not nearly as well-guarded on Matrix compared to Signal. However, work is ongoing to improve the situation; more importantly, Matrix is a different threat model (in my opinion), and allows for different trade-offs. When I use Signal, I have to trust Signal's servers and their admin team. With Matrix, we get to keep trust circles smaller (friends and family on smaller servers, where we already trust the people running them). We have no hard requirement to federate either - if I want something just for people I know, we leak less data than Signal does to the outside world. We also get to host Matrix servers in areas we're comfortable with, whether that's our living room, or any nation that isn't America. Matrix isn't perfect, but I appreciate how quickly they're improving, and the areas they're focusing on.
- tptacek 11mo ago
- unbolted3032 11mo agoI decommissioned my server 3 months ago and migrated my community back to IRC. I still had the IRC Podman containers kicking around, so that was easy. I dealt with ~monthly issues around my devices not being correctly verified, messages not correctly decrypting, and various other rough UX edges. There seemed to be a lot of velocity in the beginning but the last couple of years have addressed approximately nothing in terms of the UX and it's a crying shame as Matrix/Element (I no longer fully understand the difference/relationship between these entities) had a lot of potential.
- colordrops 11mo agoThe rough edges are too much for even very technical users and admins, so there's no way we're going to get friends and family to adopt this.
- solarkraft 11mo ago> but the last couple of years have addressed approximately nothing in terms of the UX This sucks to hear. I thought they had made massive improvements in the last year or so (I don't know because I feel too burnt by past experience).
- OberstKrueger 11mo agoUnfortunately how I feel about it too. I gave an honest effort at getting into the ecosystem and tested it out with a few close friends. The rough edges brought the experience down compared to other stuff that “just works”, and losing community support for the IRC bridge took a huge use of my own away from it.
- Sanzig 11mo agoLet's not forget the shock image spam issue. Public Matrix channels are plagued with horrendous shock images (including CSAM). The development team seems to not care, they have a proposal for "policy servers" which is still incomplete and not supported by all server implementations.
- joecool1029 11mo ago
- solarkraft 11mo agoThis is a good thing. It is (was?) all too inviting to leave clients unverified because verification is (was?) hard and annoying. The code examples I'm aware of for clients using the first-party library also leave verification and E2EE out, FWIW.
- octoberfranklin 11mo agoThis is supposed to be what decentralization looks like?
- iamnothere 11mo agoIt’s still decentralized. If you read the article this is about cryptographic verification, not anything about ID.
- pkulak 11mo agoDespite all the gnashing of teeth in this thread, this seems reasonable. This seems to only prevent you from logging into your account, with only a password, NOT verifying it (by dismissing all the prompts asking you to do so), and then sending (and receiving new!) encrypted messages anyway. I've never used an unverified Matrix account in the 6 years that I've been an active user. Verification used to be a bit finicky, but it's pretty seamless now. And once the QR code login stuff is better supported, it will be dead easy.
- IlikeKitties 11mo ago> Despite all the gnashing of teeth in this thread, this seems reasonable I think it's not the requirement itself that's the crucible of discussion but the issues are rather that the blog post should have explicitly defined what verification is in it's second sentence and that matrix/element still is barely useable even for reasonably technical users.
- pkulak 11mo ago> barely useable even for reasonably technical users My entire family (including my elderly mother) would be very interested to learn how technical they are!
- IlikeKitties 11mo agoArgue with the people in this thread that made this argument.
- broken-kebab 11mo agoScale matters. Once you achieve over a hundred of users, you got all the random bugs, and glitches appearing, and you can't guide everyone personally across UX issues. This is when lack of decent documentation, unpolished UI, and even the fact that it uses its own terminology (like "spaces") starts to hurt. I don't mean Synapse/Element combination is bad, but so far it's not great either.
- Gigachad 11mo ago
- koreanguy 11mo ago[dead]
- ikkun 11mo agoseems like it's just that element (the official, and most popular client) will ignore messages from unverified devices, but since it's part of the spec, other clients that want to be spec-compliant will implement this too. I don't think most other clients follow the spec that closely though. I'm in favor of the change, the only downside I can think of is users with esoteric clients or simple bots that don't support verification won't be able to post to encrypted rooms with element users. I feel like I'm alone in having good luck with matrix. I've been self hosting for nearly a decade to a handful of users, and it was a bit rough troubleshooting the encryption problems back when element was still called riot, but it's been a number of years since any of us have had a single encryption issue, and we added a new user recently with no trouble. we're still on 'element classic' though, the new 'element x' is a bit of a mess and loses the background sync feature, you need to set up a unified push server which I'm not looking forward to.
- prurigro 11mo agoFor what it's worth, I've been using element x with unified push for a month or so now and I get notifications with message contents without any delay. Maybe they fixed the issue you're worrying about? Self hosting the call/video feature became a lot more complicated though (and it's incompatible with the old system).
- ikkun 11mo agomy issues with element x are with the client itself, mostly missing features and bad UX. the main reason I don't want unified push is, it's just yet another thing for me to install and maintain, plus all my users need the client app installed. the ntfy server app even defaults to having a full web interface, fortunately it's possible to disable but it's just so much stuff to replace what used to be built-in to the app, to supposedly solve a battery life problem that I've never experienced. I'm still going to get around to it, because element classic will be deprecated eventually. one of my users is on iOS and has a well-known bug with images not loading, which will probably never get fixed because they're focusing on the new client. and unfortunately I do have users that expect voice calls to work, so it sucks to hear that'll be annoying too.
- g-b-r 11mo agoOne of the super confusing things is that even if you only use a single client it can be verified or not. That's confusing even for very technical people; because, it simply doesn't make sense. Saying "verified or primary client with recovery keys generated" seems too long, so they should just say something like "less secure" on the "unverified" sessions.
- rabf 11mo agoDoes anyone have any experience with Keet as an alternative? https://keet.io/ https://keet.io/
- eTomte 11mo agoIs Keet Open Source? Last time I looked into it (admittedly a few years ago) it was not.
- grishka 11mo ago"Now the end-to-end encryption will leak into the UX even more and you better like it" I'll say it again: E2EE will never become mainstream unless someone somehow manages to implement it such that it's completely transparent to the user while keeping all the features that people have come to expect from IM apps, like server-stored conversation history or support for multiple devices. By "completely transparent" I mean that the user doesn't have to do any extra actions whatsoever to make it work.
- joecool1029 11mo agoI mean we’re there for Signal. The parts that suck still are regarding access/retention of old messages which is an area Matrix is ironically slightly better about. But Signal we don’t need to think about verification, at worst it says this asshole has a new identity and then I have to tell them I’ve reset my iPhone for the 4th time this week… Normal users do find retention important even if privacy/security minded users find value in ephemerality.
- BrenBarn 11mo agoCan you use Signal across multiple devices?
- joecool1029 11mo agoOfficially it supports linking other devices like their desktop app as a secondary. I currently use this to link into signal-mautrix on my matrix homeserver. This way I can access signal from multiple phones and multiple computers using a matrix client instead.
- BrenBarn 11mo agoBut you still need one "primary" device and it has to be a phone, right? That's different from Matrix where you can have arbitrary devices that are all on an equal footing.
- pfych 11mo agoI use Thunderbird as my main Matrix client since it's already always open on my PC and is Lightweight. Whenever I open Element or any other client (Nheko, etc.) they all complain about each-other being unverified. Clicking verify in any client does nothing. No popups in any other clients - doesn't ever seem to do anything. Sometimes Element will pop up a QR reader but there's no QR presented in the other clients. The UX around Matrix is a nightmare.
- beeflet 11mo agoI am in the same boat. It is ridiculous and shows no signs of improving.
- eredengrin 11mo agoNot sure how often they update these pages, but Thunderbird is still listed as beta on matrix.org clients page [0], and I remember trying it out some time back and it was indeed very beta (maybe not even beta). It didn't feel like it was getting much maintenance so I stopped using it. I think it's fair to expect bugs in beta releases.
- rclkrtrzckr 11mo agoI hope beeper will continue to work, as it's based on Matrix iirc.
- gayniggerlover 11mo ago[dead]
- cowhax 11mo agoThe problem with Matrix adaptation has always been E2EE, or rather, the annoying implementation of it
- kogasa240p 11mo agoHaven't used matrix for a few years now, last time I used it everything was a slow, buggy mess. >device verification Kinda weird because it's a protocol, but then again matrix is extremely centralized.
- teekert 11mo agoI love Martix/Element, and about the only thing I don't like is that I need moar features! We have a space with several rooms for our FOSDEM devroom, it's been working flawlessly, including for all our video calls with many participants. Thanx Element team!!
- mihaaly 11mo agoSo compromising identities might happen - this seems to be a leading reason to verify devices - but can device verification be compromised too?
- teekert 11mo agoI always use my master key, verifying using other devices does not always work optimally in my experience. Maybe I switched to ElementX too soon...
- crossroadsguy 11mo agoI am not sure the founder is reading this. I tried googling but couldn't find it - I recall the hn handle being something like Atheon. Not that hn sends mention notifications. Matrix is something that had my eyes lit after years or being burnt/disappointed by communication apps (Signal included). I had converted/migrated a lot of people to it (I mean of course they didn't "convert" but they had it and were replying to me) from a country where WhatsApp is essentially "basic need" today – along with water, air, food, and shelter and that too in an era when it was not even stable. After that I just didn't know what the hell happened. Matrix, Vector, Riot, Element – things just kept happening. App was never an end user app and it became very clear that it was not the intention either. To be honest it didn't look like a replacement for something like Slack or something like IRC either. It was trying to become something which it seemed/seems has no end goal or destination i.e a clear roadmap. As if the goal is to develop cool features and just put them haphazardly together which I am afraid often results in something Mary Shelley wrote. I still login from time to time and I don't understand what is happening. Something I see this notification, something that, sometimes I see there's a message pending, sometimes I see I have a chat recovered (old/stale; because there's no one I know uses it anymore), sometimes I see a certain chat is not recovered because some verification or decryption (or something) failed, sometimes I see (or understand it) that I might another active and verified device to recover certain messages. I had created some groups and of course they remain abandoned - but no, few og them were filled were porn and the kind of some was scary because that vector/riot/element account is connected to my real ID including the email and I was scared shitless. I tried deleting them but I couldn't. Next time I will try harder or just try to make it private after kicking everyone out. I will still keep the account. Never say never :) I sadly have moved from writing enthusiastic to sad to disappointing comments to not even paying attention to it when there's a Matrix/Element news now. I think I don't even notice it. I think that's the worse kind of eventuality in this context. Anyway, I wish you all luck and I am sure you all know what you are doing.
- tcfhgj 11mo ago> Matrix, Vector, Riot, Element – things just kept happening. App was never an end user app and it became very clear that it was not the intention either. Element X definitely is.
- adham-omran 11mo agoLast time I used Matrix for our internal team notifications were beyond broken and we moved to Zulip, verification and authentication were also very funky at the time, I don't dare to try it again.
- goku12 11mo agoThere seems to be a lot of confusion regarding what verification is all about. I'm going to list out what it means, based on my reading of their documentation[1] and on what worked for me. It includes some essential preparations that you MUST TAKE if you have access to your account. This is to ensure that all your devices are verified, that they all have access to all encrypted messages and that you don't ever get fully locked out. DISCLAIMER: I have no direct experience with Matrix or Element code base. I have no affiliation with them either. So this isn't official and a few errors can be expected. Please let me know if you notice any. I will keep this corrected for as long as I can. Otherwise I'll add the errata as child comments. 1. Matrix has TWO levels of authorized access. 2. The first level is where you enter your regular username and password, that's unique to your homeserver (like matrix.org). It looks like OIDC/OAuth2 to me. On being authenticated at this level, your client (Element, Fluffy, Cinny, etc) is able to access the messages meant for you. At this stage, you're able to read any unencrypted messages. Most community chatrooms are unencrypted by choice. 3. The encryption used for your encrypted messages is end-to-end. Their encryption keys are named 'room keys' in Element (there are several of them). They are not directly available to your homeserver (otherwise, it wouldn't be end-to-end). Similarly, there seems to be an 'Identity key' (presumably a cryptographic private key that makes you the owner of the account and is needed for some account operations). This key is also not directly available to the homeserver. 4. The client app just logged in and the server doesn't know your room keys or ID keys. They're known only to your other clients. So now you need to transfer them from those clients to the new client without divulging them to any servers in between. Once that's done, your new client will be able to decrypt all your encrypted messages and join those discussions. This process of transferring your room keys and the ID key to your new client is the second authorization step known as 'Verification'. (I presume it's called verification because your new client can now prove its authenticity using your ID key.) 5. Verification can be done in three different ways. The first two are manual methods and are rarely used. We will discuss these two later. The other is using a 'verification request'. This is straightforward. Your new client requests the already verified clients attached to your account for your room and ID keys. Any verified client can respond. However, it needs to first verify that your new client is really yours, and not someone who used your leaked password or hacked your account. To do this, the clients currently offer you two methods - one using a QR code and the other using a sequence of icons. If you select QR code, your verified client will show you a QR code that you need to scan with your new unverified client. Since it proves that both clients are in the possession of the same person, the verified client then proceeds to transfer the keys to the new client, finishing the verification. Now if you chose the Icon sequence instead, then the verified client creates a random sequence of icons that it sends to the new clients. Then both the clients display it to the user. If the user accepts on both device that the icon sequences are identical, it's the required proof that both clients are with same person. The rest of it is the same as before. 6. So far, so good. If you were able to complete till step 5, the new client is verified and now you can carry on with your business. Now we address the situation of what happens if you are not able to do any of these. Just assume that all your clients got logged out together for some reason (yes, it has happened before). Now none of your clients or the server has any of the room keys and the ID key needed to prove your ownership (crypto authn) or access your encrypted messages, even after you log back in. The only solution is to load the room keys and ID key from a backup. This is why it is IMPORTANT TO BACKUP your room and ID keys. 7. There are two ways to backup the room keys and the ID key. These two methods are also the two manual methods of verification that I mentioned above. The first method is to back up the keys on the homeserver itself. It's convenient because all your clients can access them at any time and keep the room keys updated as they change or new ones are added. This feature is called 'Key Storage' in Settings/Encryption tab of Element. It's enabled by default. ALWAYS keep it enabled. You may be wondering how it can be end-to-end encryption if the private keys are stored on the homeserver itself. If you're, then you're correct. They are stored in encrypted form on the server key storage. The decryption keys for that is available only to the clients. So while the server holds the keys, it cannot access any of them. 8. Here is your first opportunity to do something about accidental losses. The decryption key for the key storage can be downloaded and preserved in a secure manner. Perhaps write it down on a paper or put it in the password manager. This key is called the 'Recovery key'. You can download or change it from Element's Settings/Encryption tab. ALWAYS BACKUP YOUR RECOVERY KEY. You can use the recovery key instead of the QR code or the icon sequence to verify your new clients. There are two differences from the previous method. The first is that you can enter the recovery key directly into the new unverified client. The verified clients are not needed here. The second is that this is possible even if all your clients gets logged out. Again, this is why it's very important to BACKUP YOUR RECOVERY KEY!! 9. Besides setting up server key storage, you can take one additional step. This is the second manual method of verification. You can download and backup all the room keys and your ID key on your local system. This option is available as the 'Export keys' button on the Settings/Encryption tab. When you do so, you'll be asked for a password. This password is used to encrypt the file with all those keys, so that they don't sit unencrypted on your disk. This file can be backed up as such, but you can encrypt it again if you prefer. You can use these keys also to verify your account. You'll need the above password to decrypt the keys file. However, this method still has one big CAVEAT. I suspect that the keys file need to be updated regularly, since there will be new keys when you join rooms. So if you use this method to validate, it's likely that your client won't be able to decrypt the rooms/messages for which it doesn't have the copy of their key. But this is still worth doing, because it contains your ID key which can be used to verify all your devices again as a last ditch measure (if your homeserver happens to quit or something). 10. Now let's just say that you're a careless ### who didn't do any of the above. You still have the option to nuke it! That is to Reset your cryptographic identity from Settings/Encryption. I presume that this just discards all your previous keys and creates a new private ID key. Since all the clients can now access this key, your account is verified again. But you will not be able to access any of your previous encrypted conversations. And the homeserver helps you along by discarding all your previous conversations, room subscriptions and settings. So now you're left with a cleanly empty account. But hey! You have your verified account back! So, in summary: 1. Always verify all your clients 2. Setup server key storage (it is enabled by default, don't disable it) and backup the recovery key 3. Backup the room keys and ID keys on your local system. Use it for recovery/verification only in the worst case 4. Don't forget the password you used to encrypt the above file (just sayin) NOTE: I intentionally left out some crypto details from the above (like session keys) to avoid making it any more complex. If you're unhappy with those omissions, please just leave a comment. [1] https://element.io/en/help#encryption https://element.io/en/help#encryption
- Dilettante_ 11mo agoCan't wait for a bug to un-verify me on both my devices and lock me out of my account.
- lysp 11mo agoI'm pretty sure you get recovery keys with it also.
- sschueller 11mo agoI want to switch to SimpleX Chat[1] but at the moment there are issues with battery usage on android devices because of the way notifications are done. I hope this[2] or some other solution get merged soon even if there is a slight impact on anonymity. [1] https://simplex.chat/ https://simplex.chat/ [2] https://github.com/simplex-chat/simplex-chat/pull/6205 https://github.com/simplex-chat/simplex-chat/pull/6205
- jbaiter 11mo agoI tried implementing a Matrix bot a few months back, and it was an absolutely miserable experience, since Device Verification/E2EE was not working with any of the available open source Python implementations I found. I then stumbled upon their internal Rust SDK[1] that they use for Element X, which is actually quite nice, and even has FFI bindings for Python and Kotlin[2]. Unfortunately the documentation was really lacking at the time. I managed to put something together with the help of an LLM and the source code and examples to find my way around the various APIs, and it actually works with emoji verification and E2EE (although there are weird bugs around synchronization, but that's probably just an API misuse on my end). It seems they've improved the documentation since and even provide a reference client[3] to see how things work. [1] https://github.com/matrix-org/matrix-rust-sdk https://github.com/matrix-org/matrix-rust-sdk [2] https://github.com/matrix-org/matrix-rust-sdk/tree/main/bindings https://github.com/matrix-org/matrix-rust-sdk/tree/main/bind... [3] https://github.com/matrix-org/matrix-rust-sdk/tree/main/labs/multiverse https://github.com/matrix-org/matrix-rust-sdk/tree/main/labs...
- photios 11mo agoConspiracy theory time... Matrix is the Firefox of chat apps. Castrated on purpose and kept around as a "see how much worse than WhatsApp things can really be!"
- irusensei 11mo agoI had a more pleasant experience with SchildiChat hosted on a web server than the desktop Element clients. I don't like the way groups/chatrooms are displayed to be honest. Its confusing. It feels like its trying to get away from the "server room/#somechat" model that works well with IRC and even with trendy current products like Discord.
- pqs 11mo agoI've been using Delta Chat with a lot of success. It is easy, it works, bots are easy and the concept is improving. They even plan to have forward secrecy. So, give it a try. If you explored it a long time ago, try again, many things have improved in that ecosystem.
- josephb 11mo agoYeah it's a lot more "just works" than Matrix, still some limitations but improving quickly.
- kuon 11mo agoI really want to love matrix but it always turned bad/broken at some point. I switched to XMPP. No issue ever, but the clients are not very good.
- jones89176 11mo agoFYI: here are the videos of the latest matrix conference: [1]. I think there's a lot of interesting stuff going on! also, instead of hosting your own server or using some (more or less well-financed) public servers, you can simply throw some money at [2] to pay for hosting for your group of friends or family or whatever. (not affiliated, but I like the idea) [1] https://media.ccc.de/b/conferences/matrix-conf https://media.ccc.de/b/conferences/matrix-conf [2] https://etke.cc/ https://etke.cc/
- superkuh 11mo agoThis basically means that Matrix will stop working for my parents and other family: the only people I use matrix for. We started during the pandemic for the video chat element. But Riot.im/Element.io changes to the homeserver over these many years have made it so none of our accounts properly verify. I can't even get my account to properly verify and I'm a huge nerd. We put up with it because of inertia and chat still working fine. But this? I guess it's the end. Riot.im/Element.io really knows how to shoot themselves in the foot.
- chrisjj 11mo ago> This security update will give you assurance that when you receive a message from a contact, you can effortlessly assume it’s really from them. Here's the thing. You can already! Whether you should or not.
- nottorp 11mo agoFrom an outsider's point of view, what is this "verifying"? Because it sounds like "we'll put them in a database so we can sell it" to me...
- tcfhgj 11mo agocryptographic process to poof that the devices you use in fact belong to you (as cryptographic identity)
- nottorp 11mo agoTo poof to who? Where is that data stored? What happens if I'm on holiday in Paris and drop my phone, which is the only device I have with me, in the Seine? Sounds like more passkeys security theater/inconvenience to me.
- tcfhgj 11mo agoTo your contacts; if I understand correctly, the public keys are uploaded to the server > What happens if I'm on holiday in Paris and drop my phone, which is the only device I have with me, in the Seine? 1) use your recovery key (to recover your identity (prooven by private keys) from the server) - I believe it only works if you enabled server side key storage Or 2) create a new identity (contacts will be notified) Or 3) wait until you have access to another device again Source of truth: https://spec.matrix.org/v1.16/client-server-api/#cross-signing https://spec.matrix.org/v1.16/client-server-api/#cross-signi...
- wkat4242 11mo agoUgh.. I loved Matrix but I'm starting to hate the way they force these things through. Also last month they removed the categories (People, Rooms, Favourites) from Element Web just like that. Making it very hard to use as I use it. I had to roll back to an older version. They seem to be focused on whatever commercial or consumer experience but they are ruining it for power users. My matrix server isn't even publicly accessible and users can't sign up. I don't federate with the network. So these issues are irrelevant to me. There should still be a way to turn it off. Because many of the bridge bots I run can't verify.
- ALittleSlow 11mo ago[dead]
- jamieselena 11mo ago[dead]