Published on: 2017-09-27T22:41:24+00:00
On September 27, 2017, concerns were raised on the bitcoin-dev mailing list regarding possible violations of the CC BY-SA license in some icons listed as "License: MIT" in the Bitcoin Core software. Tim Ruffing expressed these concerns and questioned the licensing of the icons. In response to this, Gregory Maxwell clarified that the icons had been re-licensed by the copyright holder and provided a link to the commit where this change was made. He also suggested using the `git log -p` command in the future to easily locate specific changes in files.In another discussion on the same mailing list, Cory Fields addressed the licensing of an alternative to the modulo reduction. He referenced a comment in cuckoocache.h, which explained a well-known technique used in fixed point signal processing. The purpose of the comment was to provide clarity for those who were confused by the code in another project. The link to the site was added after the code as it provided helpful information about the technique used.Cory Fields initiated a discussion on the bitcoin-dev mailing list regarding the licensing of bitcoin's GUI SVG icons. He pointed out that the default behavior of inkscape, the software used to create the icons, is to contain an XML tag with a link to creativecommons.org. This may have led to the mistaken belief that the icons were licensed under CC. It was clarified that all icons not created by the team are listed in contrib/debian/copyright and are actually public domain. There was also a mistake in the current documentation, which listed the icons as "Expat" while they were previously listed as "CC BY-SA". Additionally, some icons listed as "MIT" could potentially be a violation of the CC BY-SA license.Cory Fields reviewed the licenses used in various files for the Bitcoin Core project. The Apache License 2.0 is used by bindings that allow other applications to use libsecp256k1 from Java, while the Boost Software License 1.0 is used by Bitcoin Core. The BSD 2-clause "Simplified" License was not found in any files. The BSD 3-clause "New" or "Revised" License comes from leveldb, a database software used by Bitcoin Core. Some non-upstream files are used in the leveldb tree to provide Windows support. Creative Commons Attribution Share Alike 3.0 seems to be the default behavior of inkscape, which was used to create GUI svg icons. However, all icons not created by the team are listed in contrib/debian/copyright and are classified as expat/public domain. The Expat License is similar to the MIT License. Debian packaging resources are licensed gplv2+. The macdeploy script, used to create DMG files for macOS, is licensed under gplv3. Authproxy.py, a python script used in the test suite, is licensed lgpl v2.1+. There are two m4 files with a macro that builds code, but they are only used in the build process. Licenses for "A fast alternative to the modulo reduction" and atomic by Timm Kosse are referenced in comments but not actually used in the code. Finally, clang-format-diff.py, a python script optionally used by developers to clean up code changes, is licensed under the University of Illinois/NCSA Open Source License. The licensing of Bitcoin Core has been examined by Black Duck Software, who conducted a scan of the code for open source licenses. The scan revealed that the code base includes code licensed under various licenses, such as Apache License 2.0, Boost Software License 1.0, and MIT License, among others. It was noted that some of these licenses may be incompatible with each other, such as code licensed under the Apache Software License version 2 and GPLv2. Mark Radcliffe, a lawyer, has requested to communicate with the individuals who manage the Bitcoin Core codebase to gain insight into how contributions are managed. He will be presenting in a webinar with Black Duck Software on Blockchain on September 28. It is important to note that the components of the Bitcoin protocol (node, miner, wallet) can use different licenses as long as they are well structured and have well-defined and encapsulated APIs.In conclusion, there were concerns raised about the licensing of icons in the Bitcoin Core software, which were addressed by the copyright holder through re-licensing. Discussions also took place regarding the licensing of an alternative to the modulo reduction technique and the GUI SVG icons. Cory Fields provided information on the licenses used in various files within the Bitcoin Core project. Black Duck Software conducted a scan of the codebase and found that it includes code licensed under various licenses. A lawyer has expressed interest in discussing the management of contributions with the Bitcoin Core team and will be participating in a webinar on Blockchain with Black Duck Software.
Updated on: 2023-08-01T21:55:47.122548+00:00