API Birthmark vergleicht Arbeitsweise von Programmen

CeBIT: Tool erkennt Diebstahl von Code-Teilen

29.02.2008
Von pte pte
Ein Wissenschaftler-Team vom Lehrstuhl für Softwaretechnik an der Universität des Saarlandes hat eine Methode entwickelt, um Softwarediebstahl aufzudecken.

Das Programm "API Birthmark", das von David Schuler im Rahmen seiner Diplomarbeit federführend entwickelt wurde, untersucht eine verdächtige Applikation auf Übereinstimmung mit dem Originalprogramm. "API Birthmark beobachtet dabei das Verhalten der Programme und vergleicht sie", erläutert Valentin Dallmeier, wissenschaftlicher Mitarbeiter am Lehrstuhl für Softwaretechnik, im Gespräch mit pressetext. Moderne Software setzt sich aus vielen Bausteinen zusammen, was sie anfällig für Diebstahl durch Softwareentwickler macht, erklären die Forscher. Die Entwicklung von Software sei zudem teuer, wodurch manche Programmierer verführt seien, fremde Software illegal in die eigenen Applikationen einzubauen. Die an Anwender ausgelieferten Programme oder zumindest Teile davon kann ein Softwareentwickler leicht in die eigene Anwendung einfügen. Der Nachweis einer illegalen Verwendung von Code ist allerdings nicht einfach, vor Gericht sei eine solche Urheberrechtsverletzung äußerst schwierig nachzuweisen, so die Forscher.

Die neue Methode räumt Herstellern von Software bessere Chancen vor Gericht ein. Wird ein Diebstahl vermutet, so lässt man die originale und die fremde Software mit API Birthmark ausführen. "Die erste Beurteilung von Software kann über einen Vergleich des eingesetzten Quellcodes erfolgen. Allerdings verwenden Entwickler oft Methoden, um diesen zu verändern. Das Programm erledigt seine Arbeit dann zwar auf dieselbe Weise, der Code besitzt jedoch ein anderes Aussehen", so Dallmeier. Daher analysiere API Birthmark die Arbeitsweise der Software. Das Ergebnis gibt an, wie stark sich das Verhalten der beiden Programme ähnelt. Ist die Übereinstimmung hoch, lässt das einen Diebstahl vermuten und rechtfertigt weitere Untersuchungen. Die Forscher präsentieren die Entwicklung auf der CeBIT.

Im Rahmen ihrer Forschungstätigkeit wollen die Wissenschaftler außerdem untersuchen, wie sich die Arbeitsweise von Software-Entwicklern auf die Qualität der Programme auswirkt. Herausfinden wollen sie beispielsweise, ob ein großes Team an Programmierern sowie häufige Änderungen eine Applikation anfälliger für Fehler macht. Das Ziel ist es, einen automatischen Assistenten zu entwickeln, der bereits während der Entwicklung auf mögliche Probleme hinweisen und Vorschläge zur Verbesserung machen soll. (pte)