# Obfuscation thesis September 5, 2017 - …

Our main result is that, even under very weak formalizations of the above intuition, obfuscation is impossible. ... We extend our impossibility result in a number of ways, including even obfuscators that (a) are not necessarily computable in polynomial time, (b) only approximately preserve the functionality, and (c) only need to work for very restricted models of computation (TC0). We also rule out several potential applications of obfuscators, by constructing "unobfuscatable" signature schemes, encryption schemes, and pseudorandom function families.

## The International Obfuscated C Code Contest

### International Obfuscated C Code Contest ..

He also wrote a floating point package for the apple. At the time not all 6502's had an unconditional branch which meant that Woz used conditional branches even when one was not needed. This single "feature" obfuscated the sources almost to the point of almost being unreadable.

### The Obfuscation Executive | SpringerLink

> That said, unobfuscation can never be perfect: Equivalence of programs > is undecidable, so it is in theory possible to make a program so > obfuscated that no automatic process can recover the original.

## Thesis : Java based obfuscation tool for Java programs

A classification of the different obfuscation techniques is therefore given to sort out which techniques that can be viewed as reversible and which are one-way.One thing that is lacking in numerous papers about obfuscation is the actual process of reversing obfuscation techniques.

## Code Obfuscation using Code Splitting with Self …

Another issue in this thesis is therefore to look at the techniques used by the obfuscators and investigate if there are techniques which are vulnerable to reverse engineering.

## Code (De)Obfuscation (PDF Download Available)

Also nice are vararg-type subroutine parameters inlined after the call statement, so that the location of the next statement after the call is unknown. Even worse when multiple possible return adresses (jump tables) are part of these parameters. Such obfuscation requires to decode and emulate the called subroutine, before the location of the next statement is known.