Decomposing bytecode verification by abstract interpretation

Citation:
Bernardeschi C, Francesco ND, Lettieri G, Martini L, Masci P.  2008.  Decomposing bytecode verification by abstract interpretation. ACM Transactions on Programming Languages and Systems. 31(1):1-63. copy at www.tinyurl.com/y6tf2xsp

Abstract:

Bytecode verification is a key point in the security chain of the Java platform. This feature is only optional in many embedded devices since the memory requirements of the verification process are too high. In this article we propose an approach that significantly reduces the use of memory by a serial/parallel decomposition of the verification into multiple specialized passes. The algorithm reduces the type encoding space by operating on different abstractions of the domain of types. The results of our evaluation show that this bytecode verification can be performed directly on small memory systems. The method is formalized in the framework of abstract interpretation.

Citation Key:

BDLMM08

DOI:

10.1145/1452044.1452047