10. November 2020

Open-Source-Lizenzen – Grundlagen und Entscheidungshilfen

Die zahlreichen Auswahlmöglichkeiten der Open-Source-Lizenzen stellen viele Entwickler vor eine Herausforderung. Dieser Artikel erläutert die wichtigsten Grundlagen und gibt eine Orientierung bei der Wahl der richtigen Open-Source-Lizenz.

Elena Di Gianvittorio

7 Minuten zum lesen

Die Nutzung von Open-Source-Software hat sich über die Jahre als Standard in der Softwareentwicklung etabliert. Bei den dazugehörigen Open-Source-Lizenzen ist das Angebot, ebenso wie die Abweichungen der unterschiedlichen Bestimmungen, groß.

Grafik über den prognostizierten Umsatz mit Open-Source-SoftwarePrognostizierter Umsatz mit Open-Source-Software weltweit (Quelle: PAC)

Was sind Open-Source-Lizenzen und wie funktionieren sie?

Open-Source-Software kennzeichnet sich durch einen frei zugänglichen Quellcode, den Entwickler nutzen und verändern können. Die Anbieter der Software legen Lizenzen mit Nutzungsbedingungen fest, an die sich die Entwickler halten müssen. Nach der Definition der Open Source Initiative (OSI) muss es eine Open-Source-Lizenz erlauben, die Software frei zu nutzen, zu modifizieren und weiterzugeben. Vor allem bei den Vorgaben zur Weitergabe der Software unterscheiden sich die Lizenzen stark voneinander.

Welche Merkmale und Arten gibt es bei Open-Source-Lizenzen?

Grundlegend unterscheiden sich die Berechtigungen in non-permissive und permissive Lizenzen. Zu den permissiven (auch freigiebig genannt) gehören unter anderem die MIT, BSD, Apache License und OpenLDAP Public License. Sie enthalten weniger Beschränkungen als non-permissive Lizenzen.

Zu der non-permissiven Sorte gehören zum Beispiel die GNU General Public License (GPL) und weitere Varianten dieser Lizenz. Bei Open-Source-Software, die unter einer solchen Lizenz steht, müssen die Nutzer strengere Auflagen beachten, wenn sie den Code weiterentwickeln oder mit anderen kombinieren wollen. Im Gegensatz zu permissiven Lizenzen müssen sie hier den Copyleft-Effekt berücksichtigen.

Corona Warn App als Beispiel für die Apache LicenceDie „Corona Warn App“ als Beispiel für Software unter der permissiven Apache License

Was ist der Copyleft-Effekt?

Das Ziel der Lizenzgeber, die ein strenges Copyleft verfolgen, ist es sicherzustellen, dass alle Entwickler, die die Software nutzen, von ihren Weiterentwicklungen und Verbesserungen profitieren. Es besteht die Pflicht, alle Weiterentwicklungen der Software ebenfalls unter den ursprünglichen Bedingungen zu lizenzieren. Dies gilt für alle Produkte, in die lizenzierter Code eingeflossen ist, sowie für alle Veränderungen des Quellcodes der Software. Für Weiterverarbeitungen der Software, die die Anwender privat oder firmenintern nutzen, gilt diese Bestimmung nicht. Die Ausprägung des Copyleft-Effekts ist je nach Lizenz unterschiedlich stark.

Non-Copyleft-Lizenzen geben den Nutzern mehr Freiheit bei der Verbreitung von Weiterentwicklungen. Sie können den Quellcode in neue Produkte einfließen lassen. Es steht ihnen offen, unter welcher Open-Source-Lizenz sie die Weiterentwicklung freigeben beziehungsweise ob sie diese proprietär (herstellergebunden) lizenzieren.

Lizenzen miteinander kombinieren – was ist zu beachten?

Tritt der Fall ein, dass Nutzer den Quellcode unterschiedlicher Open-Source-Softwares miteinander kombinieren möchten, müssen sie die Kompatibilität der verwendeten Lizenzen sicherstellen. Ist die gemeinsame Nutzung des Codes laut beteiligter Lizenzen nicht zulässig, können Anwender das Endprodukt nicht legal verwenden. Besonders bei Copyleft-Lizenzen müssen Entwickler auf die strengeren Vorgaben achten. Erlauben alle zugehörigen Lizenzen die Quellcodes zu kombinieren und gemeinsam zu nutzen, besteht Lizenz-Kompatibilität.

Die unten angeführte bekannte Grafik von David Wheeler hilft Ihnen, einen guten Überblick über die Kompatibilität gängiger Lizenzen zu bekommen. Die Pfeile zeigen, welche Lizenzen Sie miteinander kombinieren dürfen. Die Lizenz, auf die der Pfeil zeigt, müssen Sie für das Endprodukt der Code-Kombination verwenden.

Übersicht über die Kompatibilität unterschiedlicher LizenzenGrafik zu Kompatibilität der Lizenzen nach David Wheeler, 2017

Die gängigsten Open-Source-Lizenzen

Wer einen Einblick in das Angebot der Open-Source-Lizenzen bekommen möchte, kann sich verschiedene Sammlungen anschauen. Eine Auflistung bietet die Sammlung im Lizenz-Center des ifrOOS (Instituts für Rechtsfragen der Freien und Open Source Software). Die Open Source Initiative stellt eine Liste mit Lizenz-Kategorien zur Verfügung. Aus der Kategorie „Popular Licenses“ haben wir im Folgenden die Wichtigsten zusammengefasst.

GNU General Public License (GPL)

Allgemein als GPL License bekannt, ist sie mit einem Anteil von 60 Prozent aller Open-Source-Software die meistverbreitete Lizenz. Sie verfolgt ein striktes Copyleft und garantiert somit, dass freie Software frei bleibt. Alle Softwareprodukte, in die GPL lizenzierter Code eingeflossen ist, müssen ebenfalls unter der GPL stehen. Es gibt verschiedene Versionen der GPL. Die LGPL (Lesser General Public License) vertritt beispielsweise ein beschränktes Copyleft und ist für Programmbibliotheken gedacht. Das bedeutet, dass Verlinkungen in anderen Programmen auch möglich sind, ohne dieses unter der LGPL lizenzieren zu müssen.

BSD-Lizenz

Die BSD-Lizenz ist eine der bekanntesten Non-Copyleft-Lizenzen. Entwickler sind freier bei der Weitergabe der Software und nur an wenige Bedingungen gebunden. Den Quellcode müssen sie bei Veränderung nicht weitergeben und können die Software für kommerzielle sowie proprietäre Produkte nutzen.

Apache License

Die Apache Lizenz wird in der Version 2.0 genutzt und gehört ebenfalls zu den Non-Copyleft-Lizenzen. Das bekannteste Programm der Apache Software Foundation ist der Apache Webserver.

MIT License

Die MIT Lizenz, auch X-Lizenz oder X11-Lizenz genannt, hat ihren Ursprung im Massachusetts Institute of Technology. Auch sie gehört zu der Gruppe der permissiven Lizenzen und beinhaltet keinen Copyleft-Effekt.

Mozilla Public License (MPL)

Die MPL Lizenz der Mozilla Foundation enthält ein beschränktes Copyleft. Der Effekt greift nur bei Änderungen in den Ursprungsdateien der MPL. Grundsätzlich ähnelt die Lizenz der LGPL und ist mit vielen anderen Lizenzen kompatibel.

Was passiert mit einer Software, die nicht lizenziert ist?

Open-Source-Lizenzen geben ihren Anwendern viele Freiheiten. Entscheidet sich ein Software-Entwickler, keine Lizenz für seine Produkte auszuwählen, greifen die generellen Copyright-Bestimmungen. Die Rechte am Code hat allein der Entwickler der Software. Ohne Erlaubnis ist niemand anderes dazu berechtigt, den Code zu verwenden oder weiterzuentwickeln. Dadurch verlieren Nutzer ihre Freiheit, die entscheidend für Open-Source-Software ist.

Welche Lizenz sollten Sie wählen?

Entscheidungshilfe bei der Auswahl könne folgende Tools und Seiten bieten:

Welche Lizenz sich ein Entwickler aussuchen sollte, hängt davon ab, was ihm für die eigene Entwicklung wichtig ist. Copyleft Lizenzen kommen für die infrage, die den Open-Source-Gedanke unterstützen wollen. Die Weiterentwicklung der Software müssen sie ebenfalls als Open-Source-Software weitergeben. Wer bei der Weitergabe und Verwendung seiner Software mehr Freiheit haben möchte, sollte auf eine Non-Copyleft Lizenz zurückgreifen. Als Entwickler ist es möglich, seine Produkte beliebig zu lizenzieren (auch proprietär) und kommerziell zu nutzen.

Sie haben eine Software oder App-Idee und benötigen Unterstützung bei der Realisierung? Wir helfen Ihnen dabei, Ihr Projekt umzusetzen. Kontaktieren Sie uns telefonisch +49 711 21723730 oder per Mail hello@bitfactory.io.

Neuste Artikel

Zum Blog