David Schwarzbeck

David Schwarzbeck

Department of Computer Science
Chair of Computer Science 2 (Programming Systems)

Room: Raum 05.135
Martensstr. 3
91058 Erlangen

Office hours

n.V. per E-Mail

  • Software Watermarking

    (Own Funds)

    Software watermarking means hiding selected features in code, in order to identify it or prove its authenticity. This is useful for fighting software piracy, but also for checking the correct distribution of open-source software (like for instance projects under the GNU license). The previously proposed methods assume that the watermark can be introduced at the time of software development, and require the understanding and input of the author for the embedding process. The goal of our research is the development of a watermarking framework that automates this process by introducing the watermark during the compilation phase into newly developed or even into legacy code. As a first approach we studied a method that is based on symbolic execution and function synthesis.
    In 2018, two bachelor theses analyzed two methods of symbolic execution and function synthesis in order to determine the most appropriate one for our approach. In 2019, we investigated the idea to use concolic execution in the context of the LLVM compiler infrastructure in order to hide a watermark in an unused register. Using a modified register allocation, one register can be reserved for storing the watermark. In 2020, we extended the framework (now called LLWM) for automatically embedding software watermarks into source code (based on the LLVM compiler infrastructure) with further dynamic methods. The newly introduced methods rely on replacing/hiding jump targets and on call graph modifications. In 2021, we added other adapted, dynamic methods that have already been published, as well as a newly developed method to LLWM. The added methods are based, among other things, on the conversion of conditional constructs into semantically equivalent loops or on the integration of hash functions, that leave the functionality of the program unchanged but increase its resilience. Our newly developed method IR-Mark now not only specifically selects the functions in which the code generator avoids using a certain register. IR-Mark now adds some dynamic computation of fake values that makes use of this register to blurr what is going on. There is a publication on both LLWM and IR-Mark. In 2022, we added another adapted procedure to the LLWM framework. The method uses exception handling to hide the watermark. In 2023, we adapted more methods to expand the LLWM framework. These include embedding techniques based on principles of number theory and aliasing.

Übungen zu Parallele und Funktionale Programmierung

Title Übungen zu Parallele und Funktionale Programmierung
Short text UePFP
Module frequency nur im Wintersemester
Semester hours per week 2

10. Parallelgruppe

Maximum number of participants: 25

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Tue, 12:00 - 14:00 15.10.2024 - 04.02.2025 24.12.2024
31.12.2024
14201.00.001

4. Parallelgruppe

Maximum number of participants: 40

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Tue, 12:15 - 13:45 15.10.2024 - 04.02.2025 24.12.2024
31.12.2024
11302.02.133

11. Parallelgruppe

Maximum number of participants: 25

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Tue, 16:00 - 18:00 15.10.2024 - 04.02.2025 24.12.2024
31.12.2024
14201.00.001

14. Parallelgruppe

Maximum number of participants: 25

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Wed, 10:00 - 12:00 16.10.2024 - 05.02.2025 01.01.2025
25.12.2024
11302.00.156

9. Parallelgruppe

Maximum number of participants: 25

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Mon, 16:00 - 18:00 14.10.2024 - 03.02.2025 06.01.2025
30.12.2024
23.12.2024
14201.00.001

5. Parallelgruppe

Maximum number of participants: 40

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Fri, 12:15 - 13:45 18.10.2024 - 07.02.2025 01.11.2024
27.12.2024
20.12.2024
03.01.2025
11302.02.133

8. Parallelgruppe

Maximum number of participants: 25

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Thu, 14:00 - 16:00 17.10.2024 - 06.02.2025 26.12.2024
02.01.2025
11302.00.153

6. Parallelgruppe

Maximum number of participants: 40

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Thu, 16:15 - 17:45 17.10.2024 - 06.02.2025 26.12.2024
02.01.2025
11302.02.133

1. Parallelgruppe

Maximum number of participants: 40

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Wed, 12:15 - 13:45 16.10.2024 - 05.02.2025 01.01.2025
25.12.2024
11302.02.133

2. Parallelgruppe

Maximum number of participants: 40

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Wed, 08:15 - 09:45 16.10.2024 - 05.02.2025 25.12.2024
01.01.2025
11302.02.133

12. Parallelgruppe

Maximum number of participants: 25

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Wed, 14:00 - 16:00 16.10.2024 - 05.02.2025 01.01.2025
25.12.2024
14201.00.001

13. Parallelgruppe

Maximum number of participants: 25

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Thu, 16:00 - 18:00 17.10.2024 - 06.02.2025 26.12.2024
02.01.2025
14201.00.001

7. Parallelgruppe

Maximum number of participants: 40

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Wed, 16:15 - 17:45 16.10.2024 - 05.02.2025 25.12.2024
01.01.2025
11302.02.133

15. Parallelgruppe

Maximum number of participants: 40

Link to Campo

Date and Time Start date - End date Cancellation date Lecturer(s) Comment Room
wöchentlich Tue, 10:15 - 11:45 15.10.2024 - 04.02.2025 31.12.2024
24.12.2024

2024

Sorted alphabetically in UnivIS