Title :
Security and dynamic class loading in Java: a formalisation
Author :
Jensen, T. ; Le Métayer, D. ; Thorn, T.
Author_Institution :
IRISA, Rennes, France
Abstract :
We give a formal specification of the dynamic loading of classes in the Java Virtual Machine (JVM) and of the visibility of members of the loaded classes. This specification is obtained by identifying the part of the run-time state of the JVM that is relevant for dynamic loading and visibility and consists of a set of inference rules defining abstract operations for loading, linking and verification of classes. The formalisation of visibility includes an axiomatisation of the rules for membership of a class under inheritance, and of accessibility of a member in the presence of accessibility modifiers such as private and protected. The contribution of the formalisation is twofold. First, it provides a clear and concise description of the loading process and the rules for member visibility compared to the informal definitions of the Java language and the JVM. Second, it is sufficiently simple to allow calculations of the effects of load operations in the JVM
Keywords :
formal specification; inheritance; object-oriented languages; object-oriented programming; security of data; software tools; JVM; Java; Java Virtual Machine; abstract operations; accessibility modifiers; class linking; class verification; dynamic class loading; formal specification; inference rules; inheritance; object oriented language; run-time state; security; Concrete; Ear; Electrical capacitance tomography; Hip; Java; Packaging; Protection; Security; Technological innovation; Virtual machining;
Conference_Titel :
Computer Languages, 1998. Proceedings. 1998 International Conference on
Conference_Location :
Chicago, IL
Print_ISBN :
0-8186-8454-2
DOI :
10.1109/ICCL.1998.674152