back

by jasonpeacock·8y ago·view on hn ↗
Anyone who is serious about securing their keys is not going to rely on security through obscurity.

Any good design should be able to withstand public scrutiny.

1 comments
Who said anything about relying on it? But feel free to hand over your specific security details to someone you don't even know. And make sure to attach your email address as on the form. :)
From a risk management point of view (I'm over 40 so I can say that with a straight face), relying on obscurity for key management is an unbelievable shitshow. If you rely on nobody knowing how you store your keys to protect your keys, you might find yourself obligated to change how you store your keys every single time that someone quits.

Secret storage should really be solid enough that you could publish how you manage your secrets on a billboard without any meaningful impact to your probability of breach.

So your only argument is that if someone quits, the secrets will spill out ?

I am a big fan of security by obscurity actually. I mean, by announcing to the whole world how you store your secrets, you are telling all the hackers in the world what protocols, what algorithms should they target against. Then one day you suddenly have a 0-day vuln and boom, everything is gone.

Compare the risks of that to an employee leaving and leaking the secrets.

First, in practice, don't ever minimize the risks of an employee spilling secrets. Employees are a massive source of leaks. Some good research suggests that 60% of data breaches are caused by employees.

Maybe they're just being helpful, maybe they're outright malicious, or maybe they have no idea what they're doing, but insiders are always a massive source of breaches. Don't minimize that; accept it.

And second, I said "risk management". Risk management not only looks at probability of breach but at the probability of a judicial or (worse) a legislative response to the breach. If you rely upon security by obscurity, you have to assume that someday, you'll be deposed by an attorney who will want to find out how you protect those secrets.

That gets tough because protecting secrets is notoriously difficult, even for government organizations with massive budgets for employee screening and training. It's not impossible, but it's so difficult that you should assume that the probability of a secret remaining secret is close to zero.

And, this is where obscurity by obscurity get complicated. It's very hard to tell if a secret has leaked. So, when do you revoke a secret? There is always an organizational cost to changing a secret, yet there is potentially a massive organizational cost to holding onto a secret for too long. That looks too much like a coin toss to me and I don't like playing odds like that.

Instead, I like playing the odds by using trusted algorithms and protocols to protect secrets and backing those trusted algorithms and protocols up with some hardcore monitoring, solid policy and well drilled process.

Thanks. Good points.

I won't be rolling out my own crypto of course. I like to use existing known parts. But add some slight improvements of my own. Customizations to my use-case. It's a layered defense approach against attackers. The point is to make them work hard.

To be clear, the company name/email field is optional. It's included so that I can reach out to folks who may be interested in discussing this in more depth or want to improve their approach.

Unless you voluntarily submit your company/email, the responses are 100% anonymous and I have no way whatsoever of knowing who you are or what company you work for.