Hacker News new | ask | show | jobs
by ludbb 3856 days ago
Interestingly, looks like LibreSSL avoided the BN_mod_exp bug.

OpenSSL history for crypto/bn/asm/x86_64-mont5.pl can be seen at: https://github.com/openssl/openssl/commits/d73cc256c8e256c32...

LibreSSL is using an old version of that same file found at http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/lib/libssl/src/.... LibreSSL is using a version (possibly with patches on top of it) that is at least before https://github.com/openssl/openssl/commit/cf6d55961cfaa00eb1..., which introduced the bug reported.

BoringSSL patched it here: https://boringssl.googlesource.com/boringssl/+/e701f16bd69b6...

So, why LibreSSL went with a 2+ year old version of that file?

2 comments

So, why LibreSSL went with a 2+ year old version of that file?

The LibreSSL philosophy is to (at least initially) clean up the parts of OpenSSL that are "cruft". E.g. dropping support for long-dead computer architectures and protocols, removing homebrew malloc(). Stuff like that.

The LibreSSL guys have tried to stay away from the highly tricky crypto stuff. Messing with that could have serious security implications. They can address math and crypto later. For now there's still a lot of low hanging fruit they can pick.

I'm aware of that but it seems specially interesting that they decided to go with a specific old version of some files. I don't think this kind of decision was ever made public, was it?

The general clean up idea is mentioned all over, but selecting old versions of specific files is not.

I don't think this kind of decision was ever made public, was it?

Not that I'm aware of. I follow the misc, tech, and libressl mailing lists and there seems to be a lot of OpenBSD related stuff missing from there. I think the cabal uses other, more private, more informal, means of communication for a lot of their discussions and decisions.

selecting old versions of specific files

But did they really select an old version? Rather, perhaps they just declined to pull the changes that the OpenSSL people made.

libressl is based off openssl 1.0.1.