We present a scheme to protect mobile code from malicious hosts. We propose a transformation scheme that changes the semantics of a program using pseudorandom I/O scrambling, conditional elimination, and encryption using numeric variables for changing programs into encrypted but executable form that yields a recoverable result. The goal of our transformation process is to prevent an attacker from knowing the purpose of a program in order to reduce tampering.
Willard Thompson, Alec Yasinsac, J. Todd McDonald