Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
Computational reflection in class based object-oriented languages
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
Exokernel: an operating system architecture for application-level resource management
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Extensibility safety and performance in the SPIN operating system
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Safe kernel extensions without run-time checking
OSDI '96 Proceedings of the second USENIX symposium on Operating systems design and implementation
Designing distributed applications with mobile code paradigms
ICSE '97 Proceedings of the 19th international conference on Software engineering
Programming languages for mobile code
ACM Computing Surveys (CSUR)
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Program fragments, linking, and modularization
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Dynamic class loading in the Java virtual machine
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Ownership types for flexible alias protection
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Making the future safe for the past: adding genericity to the Java programming language
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A specification of Java loading and bytecode verification
CCS '98 Proceedings of the 5th ACM conference on Computer and communications security
A simple, comprehensive type system for Java bytecode subroutines
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
JFlow: practical mostly-static information flow control
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Type-safe linking and modular assembly language
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proceedings of the ACM SIGPLAN 1999 conference on Programming language design and implementation
A type system for Java bytecode subroutines
ACM Transactions on Programming Languages and Systems (TOPLAS)
Addendum to the 1998 proceedings of the conference on Object-oriented programming, systems, languages, and applications (Addendum)
A formal specification of Java class loading
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proof linking: modular verification of mobile programs in the presence of lazy, dynamic linking
ACM Transactions on Software Engineering and Methodology (TOSEM)
Standard fixpoint iteration for Java bytecode verification
ACM Transactions on Programming Languages and Systems (TOPLAS)
Software—Practice & Experience - Special issue on aliasing in object-oriented systems
Alias burying: unique variables without destructive reads
Software—Practice & Experience - Special issue on aliasing in object-oriented systems
JAC—access right based encapsulation for Java
Software—Practice & Experience - Special issue on aliasing in object-oriented systems
Proceedings of the ACM SIGPLAN 2001 conference on Programming language design and implementation
Flow-sensitive type qualifiers
PLDI '02 Proceedings of the ACM SIGPLAN 2002 Conference on Programming language design and implementation
Java Virtual Machine Specification
Java Virtual Machine Specification
The Art of the Metaobject Protocol
The Art of the Metaobject Protocol
ArchJava: connecting software architecture to implementation
Proceedings of the 24th International Conference on Software Engineering
An analyzable annotation language
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Alias annotations for program understanding
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Type-Safe linking with recursive DLLs and shared libraries
ACM Transactions on Programming Languages and Systems (TOPLAS)
Capabilities for Sharing: A Generalisation of Uniqueness and Read-Only
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
ATEC '02 Proceedings of the General Track of the annual conference on USENIX Annual Technical Conference
A Modular and Extensible JVM Infrastructure
Proceedings of the 2nd Java Virtual Machine Research and Technology Symposium
Soot - a Java bytecode optimization framework
CASCON '99 Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research
Engineering a customizable intermediate representation
Proceedings of the 2003 workshop on Interpreters, virtual machines and emulators
The Confused Deputy: (or why capabilities might have been invented)
ACM SIGOPS Operating Systems Review
A Security Kernel Based on the Lambda-Calculus
A Security Kernel Based on the Lambda-Calculus
MJ: a rational module system for Java and its applications
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
Proof linking: a modular verification architecture for mobile code systems
Proof linking: a modular verification architecture for mobile code systems
Detecting format string vulnerabilities with type qualifiers
SSYM'01 Proceedings of the 10th conference on USENIX Security Symposium - Volume 10
Proof linking: distributed verification of java classfiles in the presence of multiple classloaders
JVM'01 Proceedings of the 2001 Symposium on JavaTM Virtual Machine Research and Technology Symposium - Volume 1
Reasoning about safety properties in a JVM-like environment
Science of Computer Programming
Isolating untrusted software extensions by custom scoping rules
Computer Languages, Systems and Structures
Formal methods for smartcard security
Foundations of Security Analysis and Design III
Hi-index | 0.00 |
Through the design and implementation of a JVM that supports Pluggable Verification Modules (PVMs), the idea of an extensible protection mechanism is entertained. Link-time bytecode verification becomes a pluggable service that can be readily replaced, reconfigured and augmented. Application-specific verification services can be safely introduced into the dynamic linking process of the JVM. This feature is enabled by the adoption of a previously proposed modular verification architecture, Proof Linking [23, 24], which decouples bytecode verification from the dynamic linking process, rendering the verifier a replaceable module. The PVM mechanism has been implemented in an open source JVM, the Aegis VM [21]. To evaluate the software engineering and security engineering benefits of this extensible protection mechanism, an augmented type system JAC (Java Access Control) [37] has been successfully implemented as a PVM.