Mechanisms for Secure Modular Programming in Java

Report ID: TR-603-99
Author: Appel, Andrew W. / Felten, Edward W. / Bauer, Lujo
Date: 1999-07-00
Pages: 13
Download Formats: |Postscript|
Abstract:

We present a new module system for Java that improves upon many of the deficiencies of the Java package system and gives the programmer more control over dynamic linking. Our module system provides explicit interfaces, multiple views of modules based on hierarchical nesting, and more flexible name-space management than the Java package system. Relationships between modules are explicitly specified in module description files. We provide more control over dynamic linking by allowing import statements in module description files to require that imported modules be annotated with certain properties, which we implement by digital signatures. Our module system is compatible enough with standard Java that we have implemented it as a source-to-source and bytecode-to-bytecode transformation wrapped around a standard Java compiler.