Licensing

The following core Safe Network libraries are available under the General Public Licence Version 3 (GPLv3).

  • sn_routing
  • parsec
  • sn_node
  • sn_client
  • safe_authenticator
  • self_encryption

By doing this, we are ensuring that the fundamental aspects of the Safe Network will be locked open and accessible to all. In practice, this means that developers building on (forking) MaidSafe’s core libraries must use the GPLv3 and publish all their source code.

There is one exception to this approach for the core libraries: qp2p, a P2P network connections library, is licensed using either MIT or BSD (Modified). This library is potentially very useful to any project that needs a network connections library for a server-less, decentralised project. Therefore, in order to ensure that this library is used as widely as possible, we’ve chosen these permissive licences as they ensure that developers building on qp2p receive the maximum flexibility in the sense that they can then select whatever licence they choose.

Use of APIs

All other Safe libraries, including the APIs and bindings, are licensed using both the MIT and BSD (Modified) licence. In addition, any app that uses the bindings is allowed to choose any licence for their app/product. The reason for this is that the app is only making API calls on the network as opposed to integrating directly with the libraries.

Core contributions

There is no Contributor Licence Agreement (CLA) for any developer wishing to make code contributions to the Safe Network. This is because we want to minimise complexity and avoid confusion through additional legal agreements. Any contributions made to the Safe Network assumes the contributor is contributing under the licence(s) of the library they are contributing to.

The logic here is that if code is submitted to be incorporated into an open source project, with the knowledge that it will be distributed under a certain licence, the developer must intend that code to be licensed similarly. In fact, GitHub has now made this point explicit in Section Six in their Terms of Service.

Patents

Patents are often used in malicious ways that stifle innovation. We strongly believe that an alternative to the patent system is clearly required. However, we can’t ignore that it exists and simply shouting our disagreement from the sidelines won’t help either as it may leave Safe developers open to others that are looking to smother their work.

At MaidSafe our primary goal is open innovation. To achieve this, we must ensure that the technologies that build on top of, or around, Safe Network code are protected. For this purpose, we have filed a number of defensive patents. These patents are owned by The MaidSafe Foundation, a registered Scottish charity (reg SC042030) set up by MaidSafe founder David Irvine (who gave away his shares in the process) to foster education and innovation. The Foundation has granted MaidSafe a licence to these patents royalty-free and in perpetuity.

    These worldwide patents cover a range of technologies including:

  • Distributed File Systems
  • Communication System and Method
  • Distributed Network System
  • MaidSafe.net
  • Data system and method
  • Apparatus for implementing a method of creating a data chain, which can be cryptographically proven to contain valid data
  • Self Encryption Process
  • File System Authentication
  • Managed Authentication on a distributed network

We firmly believe that under the current system, this structure that we have built will provide Safe Network developers and partners freedom to operate freely and mitigate some of the risks associated with modern software development.