5 ms·
OpenSSL is the dependency for doing TLS and a lot more. It’s effectively one of the only options. Crypto is hard, and crypto in C is fucking awful. Hence the p
by aaomidi 3y ago
OpenSSL is the dependency for doing TLS and a lot more. It’s effectively one of the only options.
Crypto is hard, and crypto in C is fucking awful. Hence the pricing.
- dharmab 3y agoBoringSSL, wolfSSL, LibreSSL, not to mention the various FIPS options.
- aaronmdjones 3y agoARM mbedTLS is one of my favourites. Excellent documentation.
- TheDong 3y agoI think GnuTLS is probably the second most popular TLS library, after openssl. Though actually, maybe, firefox's NSS is now that I think about it a second more. Firefox is at least some fraction of C-library-based ssl traffic out there. I'll also mentions s2n and rustls-ffi for completeness as C libraries, though the former isn't widely used, and the latter is very experimental still. https://github.com/aws/s2n-tls https://github.com/aws/s2n-tls and https://github.com/rustls/rustls-ffi https://github.com/rustls/rustls-ffi respectively.
- snvzz 3y agowolfSSL is an excellent clean implementation. LibreSSL is the drop-in replacement for openssl that everybody should have embraced back when heartbleed happened.
- rollcat 3y ago> LibreSSL is the drop-in replacement for openssl that everybody should have embraced back when heartbleed happened. 100% and 1000x times this. LibreSSL does have some minor incompatibilities, but those were mostly about removing obscure and very rarely useful APIs that were badly designed in the first place. It was quite likely that if your program used these APIs, it had security issues that OpenSSL couldn't solve with an update. (Usability is security. If it's hard to use correctly, then it's easy to create a security hole.) Remember folks, LibreSSL comes from the same people who made OpenSSH, and that "other" OS that had 2 remote holes in almost 30 years. You already trust them, you maybe just don't know it.
- jmclnx 3y agoI was a bit surprise Linux did not move to LibreSSL when it became stable. IIRC, there was a Linux distro using LibreSSL, but a year or 2 ago the went back to OpenSSL for some reason which I did not fully understand.
- konimex 3y ago> but a year or 2 ago the went back to OpenSSL for some reason which I did not fully understand. That would be Void Linux [1]. One of the reasons iirc, is PEP 644 [2], in which CPython drops support for LibreSSL due to it not being fully compatible with OpenSSL 1.1.1 APIs. [1] https://github.com/void-linux/void-packages/issues/20935 https://github.com/void-linux/void-packages/issues/20935 [2] https://peps.python.org/pep-0644 https://peps.python.org/pep-0644
- throw_a_grenade 3y agoThat was either Void Linux (see sibling comment) or Alpine Linux. You might also have read Gentoo Linux announcement (https://www.gentoo.org/support/news-items/2021-01-05-libressl-support-discontinued.html https://www.gentoo.org/support/news-items/2021-01-05-libress... ); technically doesn't fit your description since Gentoo never "switched" or "went back", but rather supported them simultaneously, and just pulled support for LibreSSL at some point.
- crest 3y agoMost applications switching to LibreSSL should seriously consider to go one step further and check if the libtls can replace their existing libssl usage: https://github.com/bob-beck/libtls/blob/master/TUTORIAL.md https://github.com/bob-beck/libtls/blob/master/TUTORIAL.md.
- wbl 3y agoOpenSSL is very much part of the problem set here with a long history of dubious API choices, a performance sapping rewrite in 3.0, and many things retained for far too long like VMS support. The problem is that killing it requires a lot of buy-in and dealing with FIPS 140-2 and no one was willing to do that last time.
- ilyt 3y agoThe vast majority doesn't need to deal with FIPS garbage. Those can do can make their own security holes for it.
- wbl 3y agoThe problem is that if you want Red Hat or Canonical to support integrating your new library across all the applications that need it, it has to support FIPS. If it doesn't people who need FIPS and have the money to support maintenance will avoid integrating it.
- deleted 3y ago[deleted]
- stonogo 3y ago> It’s effectively one of the only options. Aren't they all one of the only options?
- _V_ 3y agoOh yes, crypto/OpenSSL in C has to be the tenth circle of hell, the one even Dante himself would not dream of in his worst nightmares.