Methods and apparatuses for obfuscating computer instruction streams. In
one aspect of the invention, an exemplary method includes breaking each
of at least two operative instruction streams into a plurality of parts
and interleaving the parts into a new instruction stream. In another
aspect of the invention, an exemplary method includes breaking each of at
least two operative instruction streams into a plurality of parts and
interleaving the parts with obfuscation codes into a new instruction
stream. The obfuscation codes interrelate the parts from different
instruction streams to prevent reversal of interleaving.