UnivIS
Informationssystem der Friedrich-Alexander-Universität Erlangen-Nürnberg © Config eG 
FAU Logo
  Sammlung/Stundenplan    Modulbelegung Home  |  Rechtliches  |  Kontakt  |  Hilfe    
Suche:       
 Lehr-
veranstaltungen
   Personen/
Einrichtungen
   Räume   Forschungs-
bericht
   Publi-
kationen
   Internat.
Kontakte
   Examens-
arbeiten
   Telefon &
E-Mail
 
 
 Darstellung
 
Druckansicht

 
 
Einrichtungen >> Technische Fakultät (TF) >> Department Informatik (INF) >> Lehrstuhl für Informatik 2 (Programmiersysteme) >>

Erweiterung eines Rahmenprogramms für das automatische Einfügen von Software- Wasserzeichen in Quellcode (i2X00214)

Art der Arbeit:
Studien-/Bachelor-/Diplom-/Masterarbeit
Betreuer:
Novac, Daniela
Lehrstuhl für Informatik 2 (Programmiersysteme)
E-Mail: daniela.novac@fau.de

Philippsen, Michael
Lehrstuhl für Informatik 2 (Programmiersysteme)
Telefon +49-9131-85-27625, Fax +49-9131-85-28809, E-Mail: michael.philippsen@fau.de

Beschreibung der Arbeit:
Hintergrund:
Wasserzeichen existieren als Authentifizierungsmerkmal für verschiedene Produkte seit dem 13. Jahrhundert. In der digitale Welt hat sich diese Methode auch etabliert, als erstes für Multimediadateien und in den letzten 25 Jahren auch für andere Bereiche, wie zum Beispiel Software. Der Hauptgrund Code zu markieren ist der Schutz vor unerlaubter Wiederverwendung des Programms. Dabei können verschiedene Ziele verfolgt werden: Reverse Engineering, Wiederverwendung von GPL-Code ohne die Bedingungen zu respektieren, bösartige Veränderungen, Software-Piraterie und vieles mehr. Wasserzeichen können dazu dienen, solche Sicherheitsziele zu erreichen.
Es gibt zwei Arten von Wasserzeichen für Code: statische und dynamische. Statische Wasserzeichen beeinflussen die Funktionalität des Programms nicht und werden wie eine Signatur innerhalb des Codes auf der syntaktischen Ebene hinzugefügt. Die Wiedererkennung benötigt die Ausführung des Programms nicht. Dynamische Wasserzeichen funktionieren wie sogenannte Ostereier (Easter Eggs), sie sind also eine versteckte Funktionalität, die nur dann erkannt wird, wenn das Programm ausgeführt wird, meistens mit einer geheimen Eingabe.
Ein Wasserzeichensystem wird meistens nach den folgenden Kriterien evaluiert: Glaubwürdigkeit (wie stark es den Urheber identifiziert), Robustheit (wie schwer es ist, das Wasserzeichen zu entfernen), Transparenz (wie schwer es zu erkennen ist, dass der Code ein Wasserzeichen enthält), Widerstandfähigkeit (wie kompliziert es ist, die Wiedererkennung des Wasserzeichens zu kompromittieren), Datenrate (Informationsgehalt des Wasserzeichens), Laufzeit (ob und um wie viel das Wasserzeichen das ursprüngliche Programm verlangsamt) und zusätzlicher Speicherbedarf.

Problemstellung:
Ziel dieser Arbeit ist es, ein bestehendes, auf LLVM basierendes Rahmenprogramm zu erweitern, das beim Übersetzen automatisch Wasserzeichen in den Code einfügen kann. In der Literatur sind eine Reihe von Wasserzeichensysteme bekannt. Zwei davon sind bereits Bestandteil unseres Systems. Im Rahmen der Arbeit sollen zwei weitere (z.B. als Plugins) realisiert werden, in der Regel als AST- der Zwischencodetransformationen. Die umgesetzte Methoden werden dann anhand von vorgegebenen und noch zu ergänzenden Programmsammlungen quantitativ bezüglich der oben genannten Kriterien evaluiert und mit dem bereits vorhandenen Verfahren verglichen.
Bei Interesse sprechen Sie uns an. Wir identifizieren dann gemeinsam mit Ihnen die umzusetzenden Wasserzeichensysteme, Benchmarks, etc. Diese Arbeit kann als Bachelor- oder als Masterarbeit ausgestaltet werden.

Literatur:
[1] Nagra, Jasvir and Collberg, Christian: "Surreptitious Software: Obfuscation, Watermarking, and Tamperproofing for Software Protection." Pearson Education, Michigan, July 2009.
[2] Dey, Ayan; Bhattacharya, Sukriti; and Chaki, Nabendu: "Software Watermarking: Progress and Challenges.", https://doi.org/10.1007/s41403-018-0058-8 , J. Indian National Academy of Engineering, INEA Letters, vol. 4, 2019: 65-75.
[3] Hamilton, James and Danicic, Sebastian: "A Survey of Static Software Watermarking." In Proc. of 2011 World Congress on Internet Security (WorldCIS-2011): 100-107, Feb. 2011, London, UK.
[4] LLVM-Dokumentation: http://llvm.org/

Bearbeitungszustand:
Die Arbeit ist noch offen.

UnivIS ist ein Produkt der Config eG, Buckenhof