With developers still struggling to plug vulnerabilities in the open source OpenSSL crypto library, Google has spun off a new fork of the project based on its own, internal work with the code, dubbed BoringSSL.
"We have used a number of patches on top of OpenSSL for many years," Google dev Adam Langley said in a blog post announcing the effort. "Some of them have been accepted into the main OpenSSL repository, but many of them don't mesh with OpenSSL's guarantee of API and ABI stability and many of them are a little too experimental."
Google uses its hacked-on version of OpenSSL in Chrome, Android, and various other things, but that has meant maintaining and patching multiple code bases. BoringSSL marks the beginning of an attempt to unify Google's code into a single, consistent library that can be shared across many projects.
Complicating matters, this isn't the first fork of OpenSSL to be announced since all of the Heartbleed mess. In April, the OpenBSD project's Theo de Raadt announced LibreSSL, which aims to be a thoroughly cleaned-up version of a project de Raadt has described as being "not developed by a responsible team."
But Langley says BoringSSL isn't meant to compete with LibreSSL. In fact, due to the nature of Google's patches, it won't even be a drop-in replacement for OpenSSL, as LibreSSL aims to be.
And for that matter, Google kicks in money to both the OpenBSD Foundation and the Core Infrastructure Initiative, which is one of the groups working to clean up the original OpenSSL code base, rather than forking it.
Instead, Langley said, switching to a new development model will make it easier for the Chocolate Factory to maintain its custom crypto code in the long run, and it will even make it easier for it to import changes from LibreSSL, when that seems like a good idea.
"The result of that will start to appear in the Chromium repository soon and, over time, we hope to use it in Android and internally too," Langley wrote.
He added that Google will continue to contribute bug fixes to OpenSSL when it finds them.
If you'd like to take a peek at what Google's code gremlins have done so far, the BoringSSL source code is available on the company's public Git repository, here. ®