I’m the Never Ending Pie Throwing Robot, aka NEPTR.

Linux enthusiast, programmer, and privacy advocate. I’m nearly done with an IT Security degree.

TL;DR I am a nerd.

  • 1 Post
  • 336 Comments
Joined 1 year ago
cake
Cake day: November 20th, 2024

help-circle
  • Disclaimer: I use systemd distros. I dont hate systemd, I just like the ability for alternatives to flourish without fighting an uphill battle.

    It has major project scope creep (does too many things that arent init or service management), isn’t modular or portable, only just gained support for muslc, it runs most of its init and management things in pid1 (which is a security and stability issue), it is a massive C program (large attack surface), it isnt very fast when compared to any other init (especially s6 or dinit which boot in under 4 seconds), it implements non-standard interfaces which just encourages further dependency, etc.

    Systemd is like the Walmart of Linux OS tools. It replaces many other options and does things good enough (not the best, good enough) to make it worth it to use them and their ecosystem, and they make things simple to use. But just like Walmart, they undercut other options, stifle adoption, until they are the only shop in town.

    Dinit does everything I need out of service manager, has similar command utilities and syntax to systemd, is much faster, simpler and cleaner code, avoids many of the pitfalls of systemd, supports user services. s6 is pretty good to but kinda terrible UX.

    The simplest answer to why I dislike systemd is that with all the major distros using systemd, it will become harder and harder to use most Linux software without systemd and its growing set of utilities. If systemd made an effort to work with the community to implement standard interfaces then alternatives could flourish without requiring large on-going patches to much of the Linux software ecosystem. It will only get worse from here. Systemd is (basically) the init of Linux and I think that is sad.



  • Where did you read that Signal uses MLS? I could not find any claims of using MLS on Signal’s specs page or their GitHub repo. Also MLS doesn’t mean anything on its own, see Soatok’s blog on MLS.

    Soatok is currently in the process of writing a blog post about another vulneribilty they found in Matrix’s encryption, and with Matrix’s history of numerous vulnerabilities, I would stay away from that shit. No matter how “good” the algorithm is in theory, it is all about implementation. Matrix also has very brittle encryption, often times many messages will become unrecoverable, which is terrible UX.

    You’d be better off just selfhosting XMPP+OMEMO, with the caveat that it is also flawed and leaks plenty of metadata.

    The best alternatives to Signal (but not Discord) are SimpleX and Briar. Both are significantly better than XMPP/Matrix for privacy and security.









  • From the OMEMO XEP specification under section 2.1 “Threat Model” https://xmpp.org/extensions/xep-0384.html#reqs-threat-model

    The OMEMO protocol does not protect against attackers who rely on metadata and traffic analysis.

    Off-topic, I would also like to add that the spec says " It has been demonstrated, that OMEMO provides only weak forward secrecy (it protects the session key only once both parties complete the key exchange).", citing https://www.cypherpunks.ca/~iang/pubs/dakez-popets18.pdf

    The specification only seems to say that message content are encrypted, making no mention of encrypting any other data than message content. Look under sections 1.2 and 4.4 to see what I mean about there being no mention encrypting other data (eg. recipients and room names). This means that sender/receiver are (most likely) not encrypted. I don’t think (though I don’t know for sure) that room names are encrypted either.

    What happens if you communicate/participate in an encrypted chat/user on another server? Could the server owner now see the other unencrypted data and metadata?

    Also, just because you self host it doesn’t make the unencrypted (meta)data any less dangerous. That just makes your server the point of failure. By your logic, why encrypt at all? It all lives on your server, it is only a problem if someone has access to your server. Networking is encrypted with TLS anyways, so why bother. /s



  • OMEMO leaks plenty of metadata; most things other than message contents are left unencrypted. Many of the mature XMPP use different OMEMO versions (which can be hard to tell when the client doesn’t clearly state the XEP versions, like Snikket). I spent 40 min scouring Snikkets website and source repo without any clear way to determine what version of OMEMO they bundle. I said OMEMO+XMPP because no matter how secure your protocol is, the actual implementation by your largest userbases determine real-world security.

    And lastly, just because “serious institutions and governments” use it doesn’t make it more secure. Many European governments use Matrix, and that has even worse security, breaks forward secrecy, doesn’t encrypt basically anything other than message content, etc. Many governments have critical systems that run unpatched Win 7 or older. My point is that security is independent of adoption.


  • Did that fix any of the underlining issues with OMEMO use across XMPP clients, such as odd/opaque choices by the OMEMO maintainer, or the fragmentation of OMEMO versions used by clients (most being very out-of-date)?

    Let me be clear: I am NOT anti-XMPP (or even OMEMO). I would love to see it succeed because I much prefer it over Matrix and other alternatives. My problem isn’t with the technology, just the implementation.







  • I hate how LLMs have made any talk about machine learning immediately cause a bad reaction for most people. ML isn’t inherently bad. LLMs are a neat technology, but it is hard for people to understand that when capitalism does what capitalism does best (extract and pervert). Now no one is excited to see anything related to ML.

    I remember when GAN images started to be shown around the internet (which looked like acid trips lol) and I was so excited to see the technology improve. Now no one is excited to see anything ML because it is being used to do the worst things: spy, replace workers, cheat, propagandize, steal from the commons, lie, destroy the environment, destroy the economy, and (of course) kill people.