X hits on this document

303 views

0 shares

0 downloads

0 comments

64 / 120

Table 7.9. Statistical data gathered for randomized control-flow obfuscation.

Trace Comparison

Edit Distance

Trace #1 → Trace #2

101414

Trace #2 → Trace #3

67590

Trace #1 → Trace #3

168892

Mean Edit Distance

112632

Trace Comparison Trace #1 → Trace #2 Trace #2 → Trace #3 Trace #1 → Trace #3

Standard Deviation 7932.32 31849.5 39781.83

8 Applying Anti-Reversing Techniques to Java Bytecode

It was demonstrated in the Java reversing and patching exercise of Section 5.2

that decompilation of Java bytecode to Java source code is possible with quite good

results. While it is most often the case that we cannot recover the original Java source

code from the bytecode, the results will be functionally equivalent. When new features

are added to the Java language they won't always introduce new bytecode instructions;

for example, support for generics is implemented by carrying additional information in

the constants pool of the bytecode that describes the type of object a collection should

contain; this information can then be used at execution time by the JVM to validate the

type of each object in the collection. The strategy of having newer Java language

56

Document info
Document views303
Page views304
Page last viewedSat Dec 03 05:06:18 UTC 2016
Pages120
Paragraphs2913
Words25794

Comments