7 ms·
Interesting to see BearSSL mentioned today because I have just started to replace OpenSSL with BearSSL in my webserver. The reason for that is that the server a
by robalni 4y ago
Interesting to see BearSSL mentioned today because I have just started to replace OpenSSL with BearSSL in my webserver.
The reason for that is that the server and the computer I develop on run different versions of Debian that have different versions of OpenSSL,
so the server suddenly stopped working because the program linked dynamically to a newer version of OpenSSL that the server didn't have.
I tried to link OpenSSL statically but at that point i thought it was better to move to BearSSL.
- yjftsjthsd-h 4y agoHow does that help? Unless bearssl has a perfectly stable api aren't you just trading one library for another?
- robalni 4y agoIf I'm going to link statically, I prefer a smaller library, both for size and security reasons. I was also getting some issues when linking OpenSSL statically and I think (or hope) that will be easier to do with BearSSL.
- nicce 4y agoIn this case, the size might not give better security. OpenSSL is one the most tested products on the planet.
- snvzz 4y agoEyes on the code help find bugs. Smaller code helps prevent bugs, as there's simply less code where bugs could be. Thus it is not as clear as you picture it. What is clear, however, is that it should be easier to make BearSSL's code bug-free, by virtue of having less code.
- nicce 4y agoThis is true. But BearSSL does not have so many eyes on looking it, nor haven’t had the same duration as OpenSLL have had. Which makes it complicated.
- raesene9 4y agoHowever, it is also complex and has been worked on by many people which increases the chances of bugs due to mis-understandings between team members. In contrast BearSSL is kept simple, and is primarily the work of a single author, who knows a lot about cryptography
- nicce 4y agoThere are pros and cons always. But it is not good either if there is only one primary developer. There is a high risk that single author becomes blind for is own bad coding practices, if there are some, and they will repeat. It is also difficult to understand every possible use-case alone.
- tremon 4y agoBeing "one the most tested products on the planet" (citation needed, btw) did not prevent Heartbleed.
- nicce 4y agoNo software can be quaranteed to be bug-free. And Heartbleed bug was in the extension, not in the core software. > (citation needed, btw) Not really. But if you insist, OpenSSL is defacto crypto library [1] , at least on server side. Browsers and OpenSSL takes the most burden for securing every-day use of internet in the world. There are billions testers every day. [1] : https://crocs.fi.muni.cz/public/papers/acsac2017 https://crocs.fi.muni.cz/public/papers/acsac2017)
- naasking 4y ago> No software can be quaranteed to be bug-free. Sure, this is done all the time via verification and other formal methods. It's not common in the industry, but not entirely uncommon either.
- ranger_danger 4y agogot any examples of this being used in popular FOSS software?
- naasking 4y agoDepends what you mean by "popular". seL4 [1] is formally verified, open source and is used as baseband firmware in millions of phones, among other uses. Google just recently started an embedded OS based on it as well. CompCert [2] is a formally verified optimizing C compiler. Most formal verification happens in compilers or low-level mission critical systems due to the cost. If you want to write some formally verified C, you can check out Frama-C [3]. [1] https://sel4.systems/ https://sel4.systems/ [2] https://github.com/AbsInt/CompCert https://github.com/AbsInt/CompCert [3] https://frama-c.com/ https://frama-c.com/
- raro11 4y agoI don't know anything, but chuckled because of today's news: https://news.ycombinator.com/item?id=33380500 https://news.ycombinator.com/item?id=33380500
- nicce 4y agoImpact of the bugs in OpenSSL are so significant, that they always end up in to the news. BearSSL is still a quite little project compared to it, and because of that no CVE:s are being made if the author finds a bug by themself from his own code. On the other hand, every bug in OpenSSL gets CVE mark and will end up into the news. It gives distorted view and comparison of the software quality between many projects.
- snvzz 4y agoWhich of course doesn't affect libressl. I still can't comprehend how the industry didn't simply move to libressl early on.
- rurban 4y agoFor example BearSSL uses constant-time algorithms, openssl not. BearSSL GHASH is still fast whilst secure, openssl AES not.
- blackflame7000 4y agoAES is used for encryption while GHASH is a hash(checksum) algorithm. Quite different. Also the algo time is a function of the input size. Not sure how you can encrypt 1byte and 2TB in constant time. You seem like you need to read more on this stuff.
- MarceColl 4y agoMaybe you need to read more on this stuff: https://www.bearssl.org/constanttime.html https://www.bearssl.org/constanttime.html
- blackflame7000 4y agoRSA has been deprecated for a while. It still has nothing to do with the fact that you compared a hashing algorithm with a symmetric encryption algorithm, a literal apple to orange comparison
- MarceColl 4y agoFirst, I'm not the parent, I didn't compare a thing. Second, that page has information on a lot of crypto algos and not only on RSA so I don't know what you are talking about.