In this seminar we develop a theory for software protection, along the following lines. There are four distinct goals for the protection of software: prohibition (e.g. of unauthorised use), permission (e.g. of authorised use), assertion (e.g. of authorship rights), and affirmation (e.g. of authenticity). Protective systems have been designed, with varying degrees of success, to meet these goals in many existing applications, using available technologies in cryptography, obfuscation, watermarking and tamperproofing. We note some limitations on the applicability of the theoretical model in which Barak et al. proved the impossibility of perfect obfuscation. We close our presentation by describing our most recent results in software watermarking and obfuscation.
Gates 4B (opposite 490), 03/02/04, 4:30 PM