4 ms·
I wonder how that can be "surveillance-proof". Even with e2e-encryption any product using central servers can still see who is chatting with whom, who's in your
by xnyhps 13y ago
I wonder how that can be "surveillance-proof". Even with e2e-encryption any product using central servers can still see who is chatting with whom, who's in your address book and what IP address your phone is connecting from. That's exactly the meta-data Verizon got accused of sharing. They might be of The Pirate Bay-fame and not share this with the NSA voluntarily, but they're not immune to being hacked or infiltrated.
- mike-cardwell 13y agoOrbot (Tor for Android) allows you to host hidden services on your phone. My ideal IM app would be one which uses Tor to enable peer to peer delivery of messages over Tor hidden services directly between phones. This way, not only would the message content be safe from pyring eyes, but nobody would be able to see who is talking to who or when.
- xnyhps 13y agoI totally agree! I've been working on federating XMPP over hidden services (https://blog.thijsalkema.de/blog/2013/06/11/xmpp-federation-over-tor-hidden-services/ https://blog.thijsalkema.de/blog/2013/06/11/xmpp-federation-...), but I don't give a setup like that any chance to be possible on iOS.
- mike-cardwell 13y agoThat sounds cool. Although it's not exactly what I was talking about. In my ideal scenario phones would communicate directly with each other without having to rely on a third party server.
- xnyhps 13y agoThe end goal is to package Tor + this + an XMPP server (Prosody) into plugins for clients. It'd be a federated network running through Tor, but any XMPP-capable client will be able to use it. Sure, you need to rely on Tor, but aside from that anybody could set up their own server easily (no hassle with DNS and SSL certs).
- rdl 13y agoWhat I'd probably do is split the problem -- confidentiality of messages can be ensured locally, and directory services, persistence, and foiling traffic analysis on a network service. Network service is long-lived and has much more bandwidth. It can do cool stuff like autorespond, format-convert, etc. for you. If it gets compromised, you lose traffic analysis protection, but not message confidentiality (which is end to end). You could self host the server portion or pick from a bunch of different providers. Do traffic-analysis-resistant wasteful routing among "servers". Run constant-bandwidth from the server to the client to foil traffic analysis if you really care about that (say, messages delivered only every polling window, and every polling window, a communications of the same size/direction. That seems pretty impractical on mobile, though, so maybe use some kind of push protocol for "you have a new chat request" and then foiling traffic analysis within the chat session (when you're actively using the device). Unfortunately if you can monitor all of the network, an attacker could identify a recipient just by initiating a request and watching for a new chat opening. You could also do things like block off known travel times or other times when someone won't be in contact, correlate with message response times, and at least be able to rule in or out certain suspects (it won't help in fishing expeditions, but if you have 10k people it might be, you could probably identify a person in a few months of passive analysis). In short, low-latency is the enemy of traffic analysis protection. A true surveillance proof system looks more like anonymous remailers and less like Tor. But, people want realtime.