A Code Block Cipher Method to Protect Application Programs From Reverse Engineering
Dong-Woo Jung, Hyong-Shik Kim, JoongGil Park · Information Security and Cryptology · 2008
One of the typical methods to prevent tampering and reverse engineering on executable codes is to encrypt them. This paper proposes a code block cipher method based on key chaining to encrypt the code. The block cipher by key chaining has been known to be inadequate for encrypting the code with control transfer, even though the key chaining has advantage of hiding the keys in blocks and making the individual keys different from block to block. This paper proposes a block transformation and duplication method to apply the block cipher by key chaining to the executable codes with control transfer instructions, and shows the idea works with the MIPS instruction set.