There are too many places, even on a phone, where anything at all can be hiding and we don't really have any way of ever knowing what's there without stepping through the binaries.. That's even more difficult when we've got dalvik and VM's involved. How many people alive do you think could work out exactly what your mobile does in any one second within say, 6 months? ..
For all we know the thompson compiler backdoor really happens, and so how can you even trust the binaries you're producing?
Do you know anyone who built, for instance the openssl.so on their phone personally? Did that person build it on a machine they trust? How can they trust that machine? A single lib with a nefarious function on the few GB of binaries which ship with your phone is enough to completely negate any 'security' these sorts of apps could provide; even if they were trustworthy to begin with which they're obviously not.
It's a charade, assume everything you do is completely observed, regardless of crypto/apps you use.
Even if you have a fully audited and trustworthy (in your view) OS -- then what about IME? Who says that the CA that issued the certs you trust and talk to isn't also feeding them out to the gov or whatever? Who says your HDD isn't talking to the zigbee thermostat in your house and sending your rsa keys to the pentagon? Who says yo home wifi point isn't acting as a decrypting proxy?
We cant tell, and that's the point. There is no way to ever observe these levels complexity and verify security and we don't admit it.
We will never know if the code we are running on our various devices is doing anything extra or not, and so rationally, we should never trust it at all.
Not to say all sec is pointless, you don't want to be low hanging fruit, but above 'insta-pwn' levels of stupid there isn't much more available, even if you're told there is and we keep pretending like we have any control over what's going on anymore...
But regardless of that point, your other argument feels to me like a discussion against the problems of mono-culture: we should all endeavor to have diversity of implementation, if possible. The more we can work towards federated standards and the ability to quickly pivot when someone loses our trust, the more capable we are of defeating attempts to undermine that trust. If we only have 1 implementation of signal and everyone uses it, then all an "evil" party has to do is find flaws in that 1 implementation. If we have 2 implementations, then some users are protected. If we have 1,000 implementations, and they all inter-communicate, then we have some hope that only some users are affected by each compromise. I'm digging matrix.org as a federated protocol, and I'm hoping that it takes root because it has many clients; an open, federated protocol; and the ability for me to run my own server.
I would advocate that even though we're relatively mono-culture on linux, supporting it at least gives linux access to the source code which would allow other implementations (anyone else keeping a close eye on Redox [1]? I know I am!). Support open protocols! Support federated protocols! I'll advocate that signal is a great, easy-to-use system for secure communication, and that the ideas of Signal are percolating elsewhere (see "olm" [2] the implementation of Signal's crypto protocol for matrix). But I would like to see stabilization in Signal leading to federation.
Basically we are in Intelligence vs Counter Intelligence game with the state.
You suspect your phone or device is listening? I know that Facebook is listening/monitoring, so I let it hear. Yes, I did go to school in Zimbabwe and have my Zimbabwian friends confirm it, and I did visit it look the GPS data in the pictures show it.
The data that facebook has about me is worthless shit in disguise as marvelous worthy data, but they do sell it well, if everyone did this, it would be obvious their data is not worth the ads they sell, facebook would crumble like a stomped on paper plane.
* The "everything is fucked and will never get better" group, which I'd put your message into
* The "everything is fucked but you're not being targetted by Mossad" group - at least these people do threat modelling.
* People who are actively helping journalists in dangerous areas (see my first point)
I agree with lots of things in your message but I don't think it's helpful. Would you say we should drop back to HTTP because there are lots of ways to break HTTPS?
There are people doing fantastic work even on closed platforms like Android and iOS. People are looking in detail at what's running on it - mostly thanks to the jailbreaking and rooting communities. Everything will be OK, it's just going to take a lot longer than you'd like it to.
We dont have to set the bar that high. Just lower it slightly and we can achieve great success.
Can we make the job of NSA and CIA harder? Not necessarily impossible, just to increase the costs they have to spend on whatever it is they are doing, much higher than it is now.
That would be nice.
We can do that with bitmessage, avoid Signal, use Telegram which means outsource to Russia/KGB - so NSA will for sure need to spend more resources if they want to access your "secure chat" on Telegram.
EDIT: but of course, as you say, the problem is socio systematic - any technical system which can or would be used to subvert the state is a threat to the state and will be neutrialized, by takeover, sabotage, lack of funding, the means the state has are enormous. The list we have of secure or safe systems are still zero. Only another state can go against the state.
For example, it was mandated that GSM had backdoors. Any system used for communication, especially mass/group communication, is not free and not allowed to exist. So simple is that. They even tried to go after the creators of secure systems, wasnt the PGP guy scrutinized?