Declarative type inference and SSA transformation of Android applications

Graduate Thesis uoadl:2877079 339 Read counter

Unit:
Department of Informatics and Telecommunications
Πληροφορική
Deposit date:
2019-06-28
Year:
2019
Author:
TSATIRIS ILIAS
Supervisors info:
Γιάννης Σμαραγδάκης, Καθηγητής, Τμήμα Πληροφορικής και Τηλεπικοινωνιών, ΕΚΠΑ
Original Title:
Declarative type inference and SSA transformation of Android applications
Languages:
English
Translated title:
Declarative type inference and SSA transformation of Android applications
Summary:
Android is everywhere: from mobile devices and TVs to more recently automobile infotainment systems. This widespread use of the Android OS makes application analysis ever so important, in order to optimize the application performance and system resource usage.

Static Single Assignment (SSA) is a convenient normalized program representation that
can simplify several static analyses. However, the underlying DEX bytecode of an Anrdroid
application does not have the SSA property, and further processing of the program must
be done in order to obtain it. Moreover, DEX bytecode provides almost no explicit type information for the program’s variables, limiting the accuracy of the analyses.

In this thesis, we develop a Datalog program that transforms an Android application into
SSA form, effectively extending the functionality of the DEX fact generation front end of
the Doop framework. Additionally, we present a type inference algorithm, to resolve the types of the variables that the SSA transformation produced.
Main subject category:
Technology - Computer science
Keywords:
static program analysis, program transformation, dex bytecode, type inference
Index:
Yes
Number of index pages:
4
Contains images:
Yes
Number of references:
18
Number of pages:
52
thesis.pdf (340 KB) Open in new window