What is the license that applies to ethereum?

This looks like a solution to a problem I have been working on for a long time. Now if only it can be licensed BSD or MIT...

I see a license here:
it says MIT License. Great!

But... every file here:
has a GNU license at the top of the file.


Why is this? Is there any complete BSD/MIT stack I can work with?


  • StephanTualStephanTual London, EnglandMember, Moderator Posts: 1,282 mod
    edited May 2014
    Hi! I don't know the answer from the top of my head - I've gone and checked with Gav.
  • JasperJasper Eindhoven, the NetherlandsMember Posts: 514 ✭✭✭
    I asked Gav Wood on skype, hopefully he sees it. Otherwise i'll ask him later. There is an issue on it.

    I vote GPL, to be honest. Tit for tat.
  • gavofyorkgavofyork Member Posts: 14 ✭✭
    Licence for all (my) code in cpp-ethereum is currently GPL - not sure why there's an MIT licence in there.

    Expect the licence to change to something more permissive down the line as the need for commercial integration becomes more pressing.
  • mquandallemquandalle FranceMember Posts: 50 ✭✭
    > Is there any complete BSD/MIT stack I can work with? — @oldprogrammer

    The Go client is MIT licensed [1].

    [1]: https://github.com/ethereum/go-ethereum/blob/master/LICENSE
  • oldprogrammeroldprogrammer Member Posts: 3
    Thanks for the reply. Looks like you have a very lively community here. I am not sure if ethereum is the right library for my project, but it could be. I am leveraging several million lines of BSD/MIT licensed code for my 3D application, and it needs a peer-to-peer library (in C/C++) with LGPL/BSD/MIT or Apache license. I have researched almost a dozen different P2P stacks, each with its own issues. P2P seems to be the next big emerging thing. I just found a P2P app called Twister that was hacked together from bitcoin and bittorrent code to create a secure P2P twitter clone! That got me thinking about using libtorrent for my P2P base. Then I found ethereum mentioned in some of my searches.
  • chris613chris613 Member Posts: 93 ✭✭
    @oldprogrammer‌ There are lots of simpler and more mature P2P protocols if that is all you need. Twister and Ethereum are both blockchain protocols, which you only need if you must cryptographically guarantee the consensus on the ordering and validity of your P2P events, for example to prevent double-spending. I haven't read a lot about twister's inner workings yet, but my impression is that it probably doesn't require a blockchain either (though they definitely use one). I'm not sure how one would "double spend" a tweet. ;)

    What does your 3D application do? Usually when I think of 3D I think of near-realtime applications, which don't seem well suited to a long-interval cryptographic consensus scheme.
  • oldprogrammeroldprogrammer Member Posts: 3
    My 3D application is a multi-player game with no central server. The block chain looks like a solution to the duplicate object problem, and would provide a chain of custody to prove ownership claims. I have studied WebRTC, libtorrent, openp2p, libswift, natcracker, libnice, libjingle, stunserver and openpeer. My "block chain" would get reset every month or so, to make sure players don't need more than a few gigabytes of data.
  • JasperJasper Eindhoven, the NetherlandsMember Posts: 514 ✭✭✭
    I read some of Twisters whitepaper. Looks generally good to me, but i think the mining incentive is a little weak. Just promotions..

    The advantage of using Ethereum is that other contracts can use the data, which may have (unforeseen) uses. It also promotes Ethereum :-p. Really though it would be nice if there was a way to have data sort-of available to Ethereum, but not weighing a lot on the blockchain.. That way all sorts of stuff can use ethereum-connected consensus systems without worrying too much about the cost of execution/storage of the corresponding contract. That said, clients will still need a Ethereum client of some sort, but getting people to use Ethereum is one thing we want :)
  • ethereumnickethereumnick Member Posts: 49
    The attraction of Ethereum, bitcoin et al as far as users like me are concerned is that (at least in theory) rentiers and profiteers can be disadvantaged by design. The GPL2 or 3 ensure the users freedom without risking a future enclosure of the code that the users have come to rely on.

    Listen to Red Hat founder Bob Young talk about Free-Software licences in this 4 minute segment, in which he lays out the commercial business case for using the GPL.

    In short please stick with licences that prevent propitiatory capture (like Apple OSX free riding on BSD).
Sign In or Register to comment.