Treffer: Lightweight Bytecode Verification.
Weitere Informationen
In this paper, we provide a theoretical foundation for and improvements to the existing bytecode verification technology, a critical component of the Java security model, for mobile code used with the Java micro edition (J2ME), which is intended for embedded computing devices. In Java, remotely loaded bytecode class files are required to be bytecode verified before execution, that is, to undergo a static type analysis that protects the platform's Java run-time system from so-called type confusion attacks such as pointer manipulation. The data flow analysis that performs the verification, however, is beyond the capacity of most embedded devices because of the memory requirements that the typical algorithm will need. We propose to take a proof-carrying code approach to data flow analysis in defining an alternative technique called lightweight analysis that uses the notion of a certificate to reanalyze a previously analyzed data flow problem, even on poorly resourced platforms. We formally prove that the technique provides the same guarantees as standard bytecode safety verification analysis, in particular that it is tamper proof in the sense that the guarantees provided by the analysis cannot be broken by crafting a false certificate or by altering the analyzed code. We show how the Java bytecode verifier fits into this framework for an important subset of the Java Virtual Machine; we also show how the resulting lightweight bytecode verification technique generalizes and simulates the J2ME verifier (to be expected as Sun's J2ME K-Virtual machine verifier was directly based on an early version of this work), as well as Leroy's on-card bytecode verifier, which is specifically targeted for Java Cards. [ABSTRACT FROM AUTHOR]
Copyright of Journal of Automated Reasoning is the property of Springer Nature and its content may not be copied or emailed to multiple sites without the copyright holder's express written permission. Additionally, content may not be used with any artificial intelligence tools or machine learning technologies. However, users may print, download, or email articles for individual use. This abstract may be abridged. No warranty is given about the accuracy of the copy. Users should refer to the original published version of the material for the full abstract. (Copyright applies to all Abstracts.)