mimblewimble / grin

Minimal implementation of the Mimblewimble protocol.
https://grin.mw/
Apache License 2.0
5.04k stars 989 forks source link

Grin is Apache 2.0, but published article says it's built over patented (but not yet granted) tech #68

Closed SergioDemianLerner closed 7 years ago

SergioDemianLerner commented 7 years ago

In this article http://www.ibtimes.co.uk/mimblewimble-scriptless-scripts-magicking-blockchain-signatures-1626375

It seems that Andrew has said several times (mentioned in the article) that Grin builds on Blockstream Confidential Transactions (which it seems was invented by Gregory Maxwell and patented, even though the patent has not been granted yet) See: https://www.google.com/patents/WO2016200885A1

Apache 2.0 license gives full perpetual free patent grants to all users. (http://en.swpat.org/wiki/Patent_clauses_in_software_licences#Apache_License_2.0)

Can you clarify this on Grin's license doc or readme ?

Best regards and keep working on this incredible technology!

ignopeverell commented 7 years ago

Each contributor grants a patent license, and in this context a contributor is specifically someone who has signed an Individual Contributor License Agreement [1] or represents of a company that has signed a Corporate Contributor License Agreement [2]. At this point we have no such thing, so if the patent was granted and Blockstream decided to use it, we might, maybe, have a small problem.

However, given the setup of this project ([3] FTW) and that this only applies to US patent law, I'm not overly worried. Also note that Blockstream has published a pledge of non-aggression [4]. In addition, we're relying on the zkp branch of secp256k1 published under Elements and licensed under MIT [5]. While the MIT license has no patent clause (which is the main reason ASL v2 was created), one can argue it amounts to an implicit grant [6]. And of course, none of this has ever been tried in court and I'm sure none of the parties involved would want to be among the first to do so.

So clearing that up completely for this project would be nice, but for now I have more pressing concerns (like shipping something that works). I'm not closing this, but I'm not going to spend much more time on it for a while.

[1] https://www.apache.org/licenses/icla.pdf [2] https://www.apache.org/licenses/cla-corporate.pdf [3] https://www.activism.net/cypherpunk/manifesto.html [4] https://blockstream.com/about/patent_pledge/ [5] https://github.com/ElementsProject/secp256k1-zkp/blob/0a433ea23c3e1becf99aca61bcf70be49c7bafdb/COPYING [6] http://en.swpat.org/wiki/Patent_clauses_in_software_licences#Implicit_grants

SergioDemianLerner commented 7 years ago

+1

ignopeverell commented 7 years ago

Doing some triage and will close this for now. If it becomes a concern again, can always be reopened.