Skip to content
/ bydi Public

Java bytecode differences printer (levenshtein distance)

Notifications You must be signed in to change notification settings

tamadalab/bydi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build Status

bydi

The product aims to understand how to obfuscate the bytecode. Therefore, bydi prints Java bytecode differences by levenshtein distance.

At first, we should extract bytecodes list from jar file, like below. After typing the below command, the product print bytecode list of each method to standard output by the csv formats.

$ java -cp target/bydi-1.0-SNAPSHOT.jar jp.ac.kyoto_su.ise.tamadalab.bydi.extractor.Main <JARFILE>

Then, we obtain two csv files (typically, before and after obfuscation). The differences are printed by the following command.

$ java -jar target/bydi-1.0-SNAPSHOT.jar <CSV1|JAR1> <CSV2|JAR1>

bydi prints the bytecode distance between the two methods. The two methods are identified by the class name, method name, and method signatures. If the identifier renaming method was applied, we should restore to the old name by some method.

Requirements

About

Java bytecode differences printer (levenshtein distance)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages