A tentative approach to constructing tamper-resistant software
Masahiro Mambo, Takanori Murayama, Eiji Okamoto · 1997
So far tamper-resistance has been considered as a property such as information stored in (I device is hard to read or modify by tampering.Such tamper-resistance is quite important in many situations: superdistribution, electronic commerce systems using IC card, pay television systems with decoders containing secret values for descrambling image and so on.Tamper-resistance ensures proper operation of a program and prevents extraction of secret data and abuse of the program.Moreover, tamper-resistance enables a vendor to enforce his own conditions upon users.A new notion of tamper-resistance is stated as follows.Tamper-resistance means a property such as information stored in a device or software is hard to read or modify by tampering.A tamper-resistant device is usually expensive and not easy to handle compared with its realization in software.It is better to achieve tamperresistance without relying on any physical device.Meanwhile, intellectual property rights for a software program can be easily violated once an attacker analyzes the algorithm of a target program.The attacker can create a distinct program which looks quite different but functions just as the target program does.It is very important for software programs to be protected from any reverse engineering and manipulation.From these observations we study methods to generate a tamper-resistant code and explain an elementary tool, aO/fl/f2/f3.It replaces and shuffles operational codes or inserts reproductive dummy codes in a program so that t,he output becomes hard to read.After