70 likes | 178 Views
Team meeting Feb 16, 2012. Christophe Foket. Class hierarchy flattening. Developer. Attacker. Tool flow. dacapo.jar. Problem : transformed program usually only works for specified input as analyses are unsound . input. obfuscator. small default. VM. soot. . class. TamiFlex.
E N D
Team meetingFeb 16, 2012 ChristopheFoket
Classhierarchyflattening Developer Attacker
Toolflow dacapo.jar Problem:transformed program usuallyonlyworksforspecified input as analyses are unsound. input obfuscator small default VM soot .class TamiFlex refl.log input .class
Toolflow dacapo.jar Analyses are sound, since all classes are considered. Sootfails to parsesome classes. (7/14 bmstransformed) input obfuscator dacapo.jar small default VM soot TamiFlex refl.log input .class
TODO (past week) • h2: soot’s type assigner fails • batik: call graph construction out of memory • xalan: bad access to protected data • tradebeans & tradesoap: work, but only small percentage of classes transformed by soot • fop: phantom class loaded at run time • jython: make soot aware of getSuperClass
TODO (past week) • h2: soot’s type assigner fails • batik: call graph construction out of memory • xalan: bad access to protected data • tradebeans & tradesoap: work, but only small percentage of classes transformed by soot • fop: phantom class loaded at run time • jython: make soot aware of getSuperClass • VirtualBox image: lab sessions compilers
TODO (coming week) • h2: use different runtime environment • tradebeans & tradesoap: huge benchmarks (18000+ classes), transformation really slow, not finished => speed up • jython: soot is aware of getSuperClass, but needs testing