Im Zusammenhang mit der Thematik der digitalen Souveränität fällt oftmals auch der Begriff Open Source. Dieser Verbindung werden wir nun detaillierter nachgehen.
Definitionen
Die Bedeutung des Begriffs „Open Source“ ist im Allgemeinen nicht besonders umstritten. Die verbreitetste Definition ist die der Open Source Initiative (OSI), welche drei Anforderungen an Open Source Software hat:
- Die Software liegt in einer für den Menschen lesbaren und verständlichen Form vor. Dies wird durch die Bereitstellung des Quelltextes realisiert. Software, die lediglich in Binärform verbreitet wird, erfüllt diese Anforderung jedoch nicht.
- Es gibt keine Einschränkungen zum Kopieren, Verbreiten und Nutzen der Software. Somit ist es jedem erlaubt, die Software (und deren Quelltext) unentgeltlich zu verbreiten. Weiterhin werden keine Lizenzgebühren für die Verwendung erhoben oder beispielsweise die Anzahl der Nutzer eingeschränkt.
- Die Veränderung der Software ist jedem erlaubt. Dieser Fakt ist nicht nur ein Recht, das man bei Open Source Software erhält, sondern ein elementarer Bestandteil: so wird es möglich, dass die Software von vielen Akteuren gepflegt und verbessert wird.
Open Source bedeutet jedoch nicht, dass sämtliche Rechte abgetreten werden. Das Urheberrecht bleibt beispielsweise bei den meisten Lizenzen beim Autor des jeweiligen Quellcodes.
Im Gegensatz zu Open Source Software steht proprietäre Software. Hier sind die eben aufgeführten Rechte an der Software durch deren Herausgeber limitiert. Die genaue Ausgestaltung der Rechte, wie die Software verwendet werden kann und welche Gegenleistungen (in der Regel eine Bezahlung) erbracht werden soll, wird in den Nutzungsbedingungen der Software geregelt.
Schwieriger ist die Definition des Begriffs der digitalen Souveränität, da dieser von vielen Akteuren sehr unterschiedlich genutzt wird. Was genau wir unter dem Begriff der digitalen Souveränität verstehen, haben wir bereits in einem früheren Artikel beschrieben. Als Kurzdefinition digitaler Souveränität sehen wir:
Digitale Souveränität ist die Fähigkeit digitale Dienste, Daten, Software, Hardware und Prozesse unabhängig und autonom integrieren, anpassen, verstehen, ersetzen, nutzen und damit vollständig kontrollieren zu können.
Open Source Software erfüllt digitale Souveränität
Anhand der gefundenen Definition lässt sich nun leicht nachvollziehen, dass Open Source Software die Anforderungen zur digitalen Souveränität erfüllt.
Detaillierte Kenntnisse des Open Source Codes: Durch den vorliegenden Quellcode ist es jederzeit möglich, vollständig zu verstehen wie auf Open Source basierende Systeme funktionieren. Bei proprietärer Software ist man hier zunächst auf die in der Anwenderdokumentation enthaltenen Informationen beschränkt und muss ansonsten auf zusätzliche Informationen des Herstellers vertrauen. Oftmals wird der Hersteller keine technischen Details herausgeben, da die genaue Implementierung der Software als Betriebsgeheimnis gilt.
Der Vorteil des einsehbaren Quellcodes mag zunächst etwas theoretisch klingen, wird jedoch schnell praktisch relevant: setzt man beispielsweise auf APIs (Schnittstellen) anderer Software, sind Entwickler, die gegen diese APIs entwickelen, d.h. ihren Code an diese APIs anpassen müssen, oftmals schneller wenn es sich um Open Soure Software handelt. Denn dann müssen sich die Entwickler bei Unklarheiten, die aus der Dokumentation nicht vollumfänglich hervorgehen, nur den Quellcode des API-Providers anschauen und keine Detailfragen an deren Hersteller senden und auf die Antwort warten.
Anpassbarkeit des Open Source Codes: Die freie Verfügbarkeit und die Möglichkeit die genaue Funktion von Open Source Software zu untersuchen und gegebenenfalls anzupassen, eröffnet auch die Möglichkeit, die Software perfekt an die eigene Systemlandschaft anzupassen und zu integrieren. Dadurch, dass Open Source Software oftmals auf standardisierte Dateiformate und Schnittstellen setzt, wird dieser Effekt verstärkt, wenn mehrere Teilsysteme auf Open Source basieren.
Flexibilität von Open Source Software: Auch das Ersetzen der Software ist bei Open Source leichter als bei proprietärer Software, da durch die Möglichkeit des vollständigen Verständnisses alle Abhängigkeiten eines solchen Wechsels untersucht und verstanden werden können.
Außerdem ist es auch möglich, durch die Verfügbarkeit des Quellcodes, nur einen Teil der eingesetzten Software durch eine andere Software zu ersetzen.
Wenn die Wechselmotivation aufgrund fehlender Funktionen besteht, kann eine interne Weiterentwicklung der bisher verwendeten Software (bzw. eine Beauftragung einer solchen Weiterentwicklung) ebenfalls eine Lösung sein. Bei proprietärer Software kann der Hersteller lediglich um eine entsprechende Anpassung gebeten werden — hat dieser jedoch kein Interesse, bleibt nur ein vollständiger Wechsel zu einer alternativen Software, sofern dies den Aufwand und die Kosten lohnt.
Erschwerend kommt bei einem Wechsel von proprietären Lösungen hinzu, dass diese oftmals auch auf eigene Datenformate setzen, deren Aufbau nicht öffentlich verfügbar ist. Somit können Daten, die bisher mit der alten Software gespeichert wurden nicht oder nur sehr schwer zu einer alternativen Software mitgenommen werden.
Durch die Agilität von Open Source Software können kleine, innovative Ideen oder Verbesserungen schrittweise je nach verfügbaren Ressourcen in den Code oder das System eingebaut werden. So profitieren die Nutzer von Open Source direkt von kreativen, innovativen Ideen und können stets die modernsten technischen Spitzenlösungen verwenden.
Uneingeschränkte Nutzung von Open Source Software: Die vollständig unabhängige Nutzung proprietärer Software lässt sich nicht allgemeingültig beschreiben. Es mag sicherlich proprietäre Software geben, die man nach dem einmaligen Erwerb vollständig unabhängig nutzen kann — oftmals enthalten die Lizenzen hier jedoch verschiedenste Einschränkungen. Die gebräuchlichsten dürften Einschränkungen auf eine bestimmte Anzahl von Installationen oder Nutzern und die zeitliche Limitierung der Bereitstellung von Updates darstellen. Andere Limitierungen können beispielsweise auch Beschränkung der erlaubten Installation auf genau einem Rechner sein, sodass bei einer Hardwareneuanschaffung die identische Software ebenfalls neu gekauft werden muss. In neuerer Zeit immer beliebter werden Abo-Modelle, bei denen die Nutzungserlaubnis sofort erlischt, wenn nicht weiter monatlich oder jährlich gezahlt wird.
Open Source Software hingegen kann auf beliebig vielen Rechnern, von beliebig vielen Anwendern für eine beliebig lange Zeit genutzt werden, ohne dass es zu Einschränkungen durch die Lizenz kommt. Die Verfügbarkeit von Updates ist ebenso nicht an bestimmte Lizenzklauseln geknüpft. Es besteht lediglich das Risiko, dass eine Software grundsätzlich nicht weiterentwickelt wird. Allerdings besteht dieses Risiko auch bei proprietärer Software. Open Source hat jedoch den Vorteil, dass ein Unternehmen selbst oder eine neue Community die Pflege der Software übernehmen kann — ermöglicht durch den verfügbaren Quellcode.
Ja, aber…
…ohne technisches Fachwissen komme ich doch nur in eine andere Abhängigkeit?
Nun könnte diesen Argumenten entgegnet werden, dass viele dieser Vorteile von Open Source Software nur unter Anwendung von technischem Wissen (vor allem in der Softwareentwicklung) zum Tragen kommen. Dabei wird oft übergangen, dass das Geld für Lizenzen proprietärer Software ebenso gut für unabhängige IT-Dienstleister, für eine Unterstützung der Open Source Community oder zur Beauftragung von Softwareentwicklern eingesetzt werden kann. Somit erhält man nicht nur deutlich mehr Entscheidungsmöglichkeiten, sondern hat den einen, unersetzbaren, Hersteller bei proprietärer Software gegen deutlich allgemeinere und damit von mehreren Akteuren angebotene Dienstleistungen ersetzt — eine Abhängigkeit von einem Single Point of Failure wurde aufgelöst. Die entstandene Dienstleistungsabhängigkeit ist nicht mehr kritisch, da sie von vielen einfach austauschbaren Anbietern oder durch den Aufbau von Kompetenzen erfüllt werden kann.
Bleiben wir beim Beispiel der eingekauften Softwareentwicklung für ein verwendetes Open Source Tool: hier gibt es viele Anbieter am Markt, die Softwareentwicklung anbieten, wodurch sich ehrliche Preise bilden. Der Anbieter einer proprietären Spezialsoftware ist nicht ersetzbar: Seine Kunden sind abhängig und müssen bei ihm einkaufen, sodass hier ein deutlich höheres Potenzial für überhöhte Preise entsteht.
…durch den offenen Quelltext ist Open Source doch unsicher?
Dieses Argument rührt daher, dass es Angreifern bei Open Source prinzipiell auch möglich ist, denn Quellcode zu verstehen und Sicherheitslücken zu finden. Möglicherweise auch gezielter als durch experimentelle Versuche an proprietärer Software. Dem entgegen steht, dass durch den offenen Quellcode deutlich mehr gutwillige Menschen die Chance haben, den Code zu prüfen und Sicherheitslücken zu schließen. Open Source Projekte großer Communities sind oftmals besser getestet als proprietäre Software. Neue Features stehen unter genauer Beobachtung der Community.
Proprietäre Software verfolgt hier den Ansatz „Security through Obscurity“, welcher in der Sicherheitsforschung als nicht akzeptabel gilt. Oder wie Shannon es formulierte: „The enemy knows the system“.1
…Open Source Projekte sind doch alle aus dem Hobbykeller?
Tatsächlich gibt es eine Vielzahl von Open Source Projekten, die aus Hobbyprojekten hervorgegangen sind oder auch heute noch Hobbyprojekte sind. Gleichzeitig gibt es aber auch eine große Anzahl an Projekten, die professionell entwickelt werden. Oftmals stehen Unternehmen hinter diesen Projekten, die die Software selbst nutzen oder entsprechende Supportleistungen vermarkten.
Aber auch die Projekte, die größtenteils in der Freizeit gepflegt werden, sind nicht zwangsweise unprofessionell: Viele der freiwillig tätigen Entwickler sind Experten und haben langjährige Erfahrung in der Softwareentwicklung.
Darf ich nur noch Open Source einsetzen?
Mit erneutem Blick auf die Definition der digitalen Souveränität kann diese durch Open Source Software vollständig erreicht werden. Beim Aufbau neuer Systeme kann deshalb Open Source eingesetzt werden, um nicht in Abhängigkeiten zu geraten, die später zu Schwierigkeiten führen können.
Die Realität ist jedoch bekanntlich komplizierter, sodass hier differenziert werden muss. Bei bereits bestehenden IT-Umgebungen kann es durchaus Gründe geben, um proprietäre Software weiterhin einzusetzen. In diesem Falle sollte jedoch ein genaues Bild über die Größe und Relevanz der dadurch vorhandenen Abhängigkeiten gemacht und Pläne ausarbeitet werden, wie mittel- bis langfristig mit diesen umgegangen werden kann. Für Abhängigkeiten, die bewusst eingegangen werden, sollte ein Notfallplan bestehen, wie diese aufgelöst werden können, wenn eine Weiternutzung durch beispielsweise plötzliche Preiserhöhungen keine Option mehr ist.
Mit unserer Quantifizierung digitaler Souveränität erhalten Sie eine detaillierte Analyse, welche Abhängigkeiten in Ihrer IT-Umgebung vorhanden sind, wie relevant diese sind und welche Maßnahmen zur Auflösung der Abhängigkeiten genutzt werden können.