Software Escrow als Bestandteil eines Softwarevertriebsvertrages
Software Escrow ist eine seit einigen Jahren in Deutschland etablierte Dienstleistung, der in aller Regel ein Vertragsverhältnis zwischen Softwarelieferant, Anwender und einem neutralen Dritten, in aller Regel einem Escrow-Agenten zugrunde liegt. Dabei hinterlegt der Softwarelieferant Quellcodes bei dem Escrow-Agenten. Dieser prüft die Sourcen auf Tauglichkeit und verwahrt sie sicher. Unter vorher zwischen den Parteien definierten Umständen gibt der Escrow-Agent die Sourcen an den Anwender heraus.
Im Bereich der Überlassung kommerzieller Standardsoftware ist es Standard (abgesehen vom Open-Source-Bereich) dem Kunden den Quellcode nicht mitzuliefern. Ob ein Anspruch auf Mitlieferung des Quellcodes bestehen kann, ist zumindest für Standardsoftware mangels ausdrücklicher Vereinbarung eher zu verneinen. Bei individueller Software-Erstellung verhält sich die Sache anders. Hier ist auf die Umstände des Einzelfalles abzustellen.
Im Falle der Softwareerstellung gewährt die Rechtsprechung nicht sicher, aber immerhin bei Vorliegen besonderen Voraussetzungen, einen Anspruch auf die Überlassung des Quellcodes auch ohne jegliche vertragliche Vereinbarung, wenn es der Zweck des Vertrages erfordert. Diese Rechtsprechung ist aber uneinheitlich und die Begründungen der vorliegenden Entscheidungen nicht eindeutig. Tritt ein solcher Fall ein, ist dies ein großer Faktor der Unsicherheit für den Anbieter. Schon von daher empfiehlt es sich, eine klare Regelung hinsichtlich des Quellcodes bei Softwareerstellungs- und Projektverträgen einzubauen. Bei Softwareüberlassungsverträgen kann eine solche Regelung zur Klarstellung aufgenommen werden.
Recht auf den Quellcode?
Wichtig ist diese Frage des „Rechts auf den Quellcode“, da der Kunde bei Standardsoftware-Überlassung grundsätzlich nur die in § 69 d UrhG beschriebenen Rechte (zu welchen beispielsweise gerade nicht das Recht gehört, sich Informationen über den Quellcode zu beschaffen) hat. Diese Rechte können durch so genannte Nutzungsbeschränkungen noch weiter eingeschränkt werden, wobei das Maß der Einschränkungsmöglichkeit gering (in allgemeinen Geschäftsbedingungen sehr gering ) und zudem sehr umstritten ist.
Die einzige Möglichkeit, die dem Anwender danach offensteht, ist die so genannte Beobachtung des Programms, auch das Untersuchen oder Testen und zwar nur in dem Umfang, in dem dies ohnehin im Rahmen der normalen Nutzung erlaubt ist. Das bedeutet jedoch, dass ein Vervielfältigen des Programms oder auch ein Übersetzen oder eine ähnliche Maßnahme, soweit dies nicht durch den normalen Programmlauf oder dessen Laden erforderlich ist, nicht erlaubt wäre. Es müsste ausdrücklich im jeweiligen Vertrag eingeräumt werden. Eine größere Ausnahme gibt es hiervon: Die so genannte Dekompilierung ist nach § 69 e UrhG unter relativ engen Voraussetzungen erlaubt. Die wichtigste Voraussetzung ist einerseits, dass die Informationen zur Herstellung der Interoperabilität eines unabhängig geschaffenen Programms mit anderen Programmen erforderlich sind. Das bedeutet andererseits, dass z. B. die Überlassung des Quellcodes diese „Rückübersetzung“ entbehrlich machen könnte, ebenso auch die Überlassung der geeigneten Informationen im Sinne von § 69 e Nr. 2 UrhG, etwa indem die Kommentierung beispielsweise der Schnittstellen mitgeliefert wird.
Sinn und Zweck des § 69 e UrhG ist, die Zusammenarbeit zwischen verschiedenen Programmen für den Kunden machbar zu gestalten. Daraus folgt jedoch auch, dass die so genannte Dekompilierung aus anderen Gründen als zur Herstellung der Interoperabilität nicht erlaubt wäre. In der Praxis kann folglich die Überlassung des Quellcodes hierdurch nicht ersetzt werden, da es technisch sehr aufwändig und nicht immer erfolgreich ist, eine Dekompilierung durchzuführen.
Daher kann man grundsätzlich davon ausgehen, dass sich aus dem Urheberrecht selbst nicht die Berechtigung für den Anwender ableiten lässt, den Quellcode selbst durch Rückübersetzung aus dem Object Code erstellen zu können und dass insbesondere bei Überlassung von Standardsoftware kein Anspruch auf Überlassung des Quellcodes besteht. Braucht der Anwender den Quellcode, muss er sich die Rechte zusätzlich verschaffen. Der Lizenzgeber wird dies jedoch nur dann zulassen, wenn er rechtlich oder tatsächlich ausreichend gegen Missbrauch des Quellcodes abgesichert ist.
Die unterschiedlichen Interessenslagen
Zum Ausgleich dieser unterschiedlichen Interessenlagen bietet sich insbesondere für die Anbieter von Software, die noch angepasst wird, an, die Software zu „hinterlegen“, was inzwischen meist „Escrow“ des Quellcodes genannt wird. Zugunsten des Kunden entsteht die Rechtsposition des Zugriffs auf den Quellcode in den näher festzulegenden Situationen, ohne dass der Lieferant diesen schon preisgeben müsste. Hinterlegung bzw. Escrow soll also beiden Vertragspartnern helfen.
Der Begriff „Escrow“ oder auch „Software Escrow“ kann ins Deutsche mit „Hinterlegung von Software Quellcode“ übersetzt werden. Er stammt ursprünglich von dem Altfranzösischen „escroe“ (Schriftrolle) ab, welches den Hinterlegungsgegenstand selber bezeichnete.
Wenn Entwickler in Softwarefirmen Programme „schreiben“, legen sie zunächst ihre Ideen in Ablaufplänen o. ä. nieder, um sie schließlich in einer so genannten Programmiersprache zu „schreiben“ (umzusetzen). Das Ergebnis ist der Quellcode. Wer den Quellcode besitzt und die Programmiersprache versteht, kann das Programm „lesen“ und hat so Einblick in das – evtl. sehr spezielle – Know-how und dadurch eventuell in die Geschäftsgeheimnisse der Softwarefirma. Um ihr geistiges Eigentum zu schützen, verweigern Hersteller daher häufig eine Herausgabe des Quellcodes.
Zur Pflege der Software (Fehlerbeseitigung, Einarbeitung neuer funktionaler Anforderungen der Anwender oder gesetzlicher Auflagen) wird der Quellcode benötigt. Solange der Softwarehersteller diese Wartung übernimmt, besteht kein Grund zur Sorge. Sollte der Hersteller aber z. B. in ein Insolvenzverfahren verwickelt werden, hätten die Anwender kaum eine realistische Chance, an den Quellcode zu gelangen. Falls doch, dann aber meist nur gegen erneute Bezahlung, denn Quellcode fällt der Insolvenzmasse zu und Insolvenzverwalter müssen daraus möglichst hohe Erlöse erzielen .
Ohne Quellcode wäre die eingesetzte Software somit nicht mehr pflegbar. Da besagte Dekompilierung aus § 69 e UrhG dem Anwender zwar das Recht zur Vervielfältigung und (Rück-)Übersetzung des Quellcodes einräumt, nicht aber deren technische Umsetzbarkeit löst, müsste die Software wahrscheinlich über kurz oder lang ersetzt werden. Zwecks Absicherung ihrer in Software getätigten Investitionen verlangen die Anwender vom Hersteller daher – ebenfalls berechtigterweise – die Herausgabe des Quellcodes. Damit besteht ein klassischer Interessenkonflikt, der eine weitere Geschäftsbeziehung zwischen den Parteien belastet oder sogar ganz verhindert.
Für Escrow gibts Profis
Professionelle Hinterlegungsstellen – auch Escrow-Agenten genannt – lösen diesen Interessenkonflikt auf einfache Weise durch Dienstleitungen rund um die Hinterlegung von Quellcodes. Der Escrow-Agent übernimmt vom Hersteller treuhänderisch den Quellcode. Escrowverträge regeln eindeutig die Bedingungen, unter denen ein Quellcode an einen Anwender herausgeben würde (z. B. die in § 69 UrhG genannten, aber auch darüber hinaus viele weitere ). Neben einem aktiven Vertragsmanagement kümmert sich eine Hinterlegungsstelle auch um die regelmäßige Aktualisierung des Codes und – falls gewünscht – um seine technische Verifizierung.
Eine Zusammenfassung verschiedener Escrow-Agenten sowie aktuelle Informationen und Veranstaltungen zum Thema finden Sie auf der Webseite der Organisation pro Software Escrow e.V..