Hacker News new | ask | show | jobs
by slg 3836 days ago
If we can make encryption that is nearly foolproof, why can't we make a backdoor that is nearly foolproof? Why is a Manhattan Project of backdoors not a possible solution?

Also can't the role of the good guy be split up among a group? Similar to the two man rule to prevent rogue agents from launching missiles, can't we have some sort of process that requires agreement among a majority of a few parties including the end user, the company who owns the software, law enforcement, and the (public) judicial system. If all it takes to break down the door to my home are a judge and law enforcement to agree, why can't we accept similar when it comes to data?

3 comments

You seem to be under the impression that if you just work hard enough you can violate the fundamental constraints of reality.

I can't comment on the mathematics involved but let us assume it's mathematically possible. You engineer this mythical nearly foolproof backdoor. You can decrypt this text with any of two keys. (It's my understanding that such algorithms actually exist already.) Congratulations you have achieved your goal. You have a working algorithm.

Now let's examine the results of actually using this algorithm:

You now have twice the opsec problem you had before. You have transmit this second key to a Government agency securely. You have to trust that Government agency to securely store, use, and dispose? of this key when they obtain it.

And what is the number one threat to secure systems? Operational Security. In fact many security professionals will tell you that the hardest part of security isn't the math behind the encryption. It's the opsec. In one fell swoop you double the threat in the most fragile part of your security.

You are correct in that the more keys that exist, the harder it will be to secure all of them. However, the more keys that are required the less valuable any one key becomes. Multiple keys means there is no longer a single point a failure. If you need 3 keys to get data, you can have an entire database of keys leak and the information is still safe.

I would also love a more detailed description of just "it is impossible because math" that everyone seems to be giving.

If you want a more detailed description, go to Wikipedia and read up on the difference between public and private key cryptography. What politicians are arguing for isn't just adding another private key to private key cryptosystems; a backdoor eliminates the biggest advantage of public key systems by adding a private key that could crack any of them. Once you add that, it's just a matter of time before someone cracks it.

Really, it's inevitable. Someone doesn't even need to crack it, you just need a single careless or corrupt government employee to compromise the whole system for everyone for all time. People are proposing adding a single point of failure to systems whose usefulness is currently defined by their lack of such a single point of failure. Put that in there and we may as well all go back to using DES for everything.

But you are simply pointing out problems with our current techniques and not why we can't come up with new and better approaches. That is the problem we should be working on. Politicians don't understand it, but that is why we need people from our community to work with them. Our response shouldn't be "no, you are an idiot, that is impossible, you are a fascist for even suggesting it". It should be "I know what you are looking to do, here is why it is not currently possible, lets see if we can work together on a solution."

Nothing anyone posted here has said why there can't be a multikey solution that allows access to data in a reliable way that would not be susceptible to a single point of failure or abuse. That sounds like a very hard problem, but I'm not convinced it is an impossible problem.

Again, no one is arguing that it isn't impossible. Like I said, in my original post, look at Dual_EC_DRBG - it was a cryptographic solution used by the NSA, that purposely had a backdoor - it was discovered by an outdoor party and now its worthless. (Look at Juniper systems (used by the USG), a very recent example of how this backdoor has failed).

I'm not a cryptographer, but lets assume a multikey solution is 100% possible.

The very notion that you can trust the government with a global key to all encryption is the crux of the issue. How do you know that Donald Trump won't wake up tomorrow and sell that key China? What do you then do if Germany then demands that key? What if Congress decides that giving Israel he private key is important to stability in the middle east? Then what do you do is some nationstate sells this key to a blackhat organization? Welp, all of Google's encryption is now worthless because this "multikey" that was supposed to be for the USG ended up in the hands of a blackhat - and now we have another Fappening 3.0 on our hands.

Great now the whole world has this "multikey" making it virtually worthless because the entire world can decrypt it. If you as an end user cannot control who can and cannot decrypt your messages, then its worthless as an encryption scheme.

Its not a technical issue, and the solution isn't limited because we aren't smart enough. The fundamental problem is that you cannot trust any third party with such a multikey.

We aren't talking about a system that requires 3 keys to get the data though. In order to be useful to the government they need a system whereby they can decrypt without my key. That means conceptually they need a second key that works all by itself.

You could split the second key so no single party has the whole key which would mitigate but you still have the same problem where you have effectively doubled your opsec problem.

Additionally if half the key is compromised that still greatly reduces the work required to decrypt the text.

The answer is in the complexity in creating secret technology that is also foolproof.

To make a car analogy, we can make a submarines that are waterproof, and we can make cars which looks like a car and you can drive on the road. However, to make a car that is also a submarine is quite hard, and close to impossible if you also had to make it look like a normal car. It would even be harder if it need perfect obscurity so that you couldn't even tell if you opened up the hood or started to disassemble the car.

So the answer is "we should give up because it is hard"?
You seem to be of the belief that engineering is constrained not by reality, but by imagination. Are you a product manager, by chance?
No, we should give up because the goal is bad.
Well, more that we should give up because it's hard, and the benefits are almost non-existent.
It's not impossible, just as how requiring registration of all typewriters is not impossible. It's just that the mechanics of doing either are so invasive that we characterize governments attempting them as totalitarian, and they tend to end poorly.