Both Java and .NET use the idea of a "virtual machine," or VM. And while VMs are useful for some purposes, they undermine the security of your source code, because creation can be reversed, or decompiled. Which makes this one-of-a-kind book extremely useful: you must understand decompilation, to properly protect your intellectual property.For example, how secure is your code after you run an obfuscator? The book will answer questions like this, and provide more thorough information about Java byte codes and the Java Virtual Machine (JVM) than any other book on the market. This book redresses the imbalance by providing insights into the features and limitations of today's decompilers and obfuscators, and offering a detailed look at what JVMs actually do.
Table of Contents Introduction Ghost in the Machine Tools of the Trade Protecting Your Source: Strategies for Defeating Decompilers Decompiler Design Decompiler Implementation Case Studies