4 ms·
It may be a bad start, but if we want to see this implemented in many products at a large scale, you'll have to expect that not everyone is a security expert.
by wmccullough 10y ago
It may be a bad start, but if we want to see this implemented in many products at a large scale, you'll have to expect that not everyone is a security expert.
I swear HN has become riddled with people who want to be contrarian for the sake of being so.
- niftich 10y agoNo, I'm just repeating the oft-said maxim of 'Don't Roll Your Own Crypto' [1] (which applies in the form of know-what-you're-doing-while-implementing-someone-else's-crypto) while emphasizing that you should probably be a domain expert in the domain you're developing in. If I know nothing about High Frequency Trading or Oil Exploration, I wouldn't want to be coding for it at all, and nor would my employer. I believe it's a reasonable expectation that people who implement secure messaging be domain experts in crypto AND messaging. [1] http://security.stackexchange.com/questions/18197/why-shouldnt-we-roll-our-own http://security.stackexchange.com/questions/18197/why-should...
- Ar-Curunir 10y agoYou shouldn't have many different people implementing critical crypto code; that'll lead to horrible broken implementations and compromise of security.
- bostik 10y agoGetting high-grade security right is exceptionally hard. There's a saying about sex: make one mistake and you have to support it for the rest of your life. Security and cryptography are orders of magnitude worse. It's bad enough that errors compound, but it doesn't end there. You can have subtle and counter-intuitive failure modes where a single step outside the happy path is enough to completely annihilate the security of your system. I feel there is no analogy that could capture the absurd complexity and catastrophic failure potential. To give some background - I've been working with applied crypto since 90's, and professionally (on and off) since early 2000's. That experience is still next to worthless: I know for a fact that I am not good enough to actually implement anything that could withstand the attacks of a motivated and well-funded adversary. (Or even that of a bored PhD student.) The best I can do is find tools and components that have been battle hardened by the handful few exceptional professionals. At least that way my hubris shouldn't amount to too much damage.