Java intermediate bytecodes: ACM SIGPLAN workshop on intermediate representations (IR'95)
IR '95 Papers from the 1995 ACM SIGPLAN workshop on Intermediate representations
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Data flow analysis is model checking of abstract interpretations
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
The SLam calculus: programming with secrecy and integrity
POPL '98 Proceedings of the 25th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Advanced compiler design and implementation
Advanced compiler design and implementation
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
Proceedings of the 26th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Inside Java 2 platform security architecture, API design, and implementation
Inside Java 2 platform security architecture, API design, and implementation
A type system for Java bytecode subroutines
ACM Transactions on Programming Languages and Systems (TOPLAS)
A formal framework for the Java bytecode language and verifier
Proceedings of the 14th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Type elaboration and subtype completion for Java bytecode
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type system for expressive security policies
Proceedings of the 27th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A type system for object initialization in the Java bytecode language
ACM Transactions on Programming Languages and Systems (TOPLAS)
A sound type system for secure flow analysis
Journal of Computer Security
Standard fixpoint iteration for Java bytecode verification
ACM Transactions on Programming Languages and Systems (TOPLAS)
Formalizing the safety of Java, the Java virtual machine, and Java card
ACM Computing Surveys (CSUR)
Information flow inference for ML
POPL '02 Proceedings of the 29th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Java Card Technology for Smart Cards: Architecture and Programmer's Guide
Java Card Technology for Smart Cards: Architecture and Programmer's Guide
Java Virtual Machine Specification
Java Virtual Machine Specification
Principles of Program Analysis
Principles of Program Analysis
Bytecode verification on Java smart cards
Software—Practice & Experience
A Type-Based Approach to Program Security
TAPSOFT '97 Proceedings of the 7th International Joint Conference CAAP/FASE on Theory and Practice of Software Development
Theoretical Computer Science - Foundations of software science and computation structures
Journal of Automated Reasoning
Completeness of a Bytecode Verifier and a Certifying Java-to-JVM Compiler
Journal of Automated Reasoning
Bytecode Verification by Model Checking
Journal of Automated Reasoning
A Type System for the Java Bytecode Language and Verifier
Journal of Automated Reasoning
Simple verification technique for complex Java bytecode subroutines: Research Articles
Concurrency and Computation: Practice & Experience - Formal Techniques for Java-like Programs
Model checking of multi-applet javacard applications
CARDIS'02 Proceedings of the 5th conference on Smart Card Research and Advanced Application Conference - Volume 5
Building an "impossible" verifier on a java card
WIESS'02 Proceedings of the 2nd conference on Industrial Experiences with Systems Software - Volume 2
A Type System for the Java Bytecode Language and Verifier
Journal of Automated Reasoning
Type-based verification of sssembly language for compiler debugging
TLDI '05 Proceedings of the 2005 ACM SIGPLAN international workshop on Types in languages design and implementation
Non-interference for a JVM-like language
TLDI '05 Proceedings of the 2005 ACM SIGPLAN international workshop on Types in languages design and implementation
A type system equivalent to static single assignment
Proceedings of the 8th ACM SIGPLAN international conference on Principles and practice of declarative programming
Average case vs. worst case: margins of safety in system design
NSPW '05 Proceedings of the 2005 workshop on New security paradigms
A machine-checked model for a Java-like language, virtual machine, and compiler
ACM Transactions on Programming Languages and Systems (TOPLAS)
A static type system for JVM access control
ACM Transactions on Programming Languages and Systems (TOPLAS)
Adaptiveness in well-typed Java bytecode verification
CASCON '06 Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research
Security types preserving compilation
Computer Languages, Systems and Structures
Instruction-level security analysis for information flow in stack-based assembly languages
Information and Computation
Java bytecode verification via static single assignment form
ACM Transactions on Programming Languages and Systems (TOPLAS)
Computing Stack Maps with Interfaces
ECOOP '08 Proceedings of the 22nd European conference on Object-Oriented Programming
Decomposing bytecode verification by abstract interpretation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Efficient Set Sharing Using ZBDDs
Languages and Compilers for Parallel Computing
The MOBIUS Proof Carrying Code Infrastructure
Formal Methods for Components and Objects
Byte code level cross-compilation for developing web applications
Science of Computer Programming
A Static Bug Detector for Uninitialized Field References in Java Programs
IEICE - Transactions on Information and Systems
Decompilation of Java bytecode to Prolog by partial evaluation
Information and Software Technology
System Model-Based Definition of Modeling Language Semantics
FMOODS '09/FORTE '09 Proceedings of the Joint 11th IFIP WG 6.1 International Conference FMOODS '09 and 29th IFIP WG 6.1 International Conference FORTE '09 on Formal Techniques for Distributed Systems
Security Monitor Inlining for Multithreaded Java
Genoa Proceedings of the 23rd European Conference on ECOOP 2009 --- Object-Oriented Programming
Towards an XML-based Bytecode Level Transformation Framework
Electronic Notes in Theoretical Computer Science (ENTCS)
A Formally Verified Compiler Back-end
Journal of Automated Reasoning
Structural Encoding of Static Single Assignment Form
Electronic Notes in Theoretical Computer Science (ENTCS)
An Abstract Interpretation-based Approach to Mobile Code Safety
Electronic Notes in Theoretical Computer Science (ENTCS)
A Verifier for Region-Annotated Java Bytecodes
Electronic Notes in Theoretical Computer Science (ENTCS)
JVM Bytecode Verification Without Dataflow Analysis
Electronic Notes in Theoretical Computer Science (ENTCS)
A Space-Aware Bytecode Verifier for Java Cards
Electronic Notes in Theoretical Computer Science (ENTCS)
Integrated Java Bytecode Verification
Electronic Notes in Theoretical Computer Science (ENTCS)
Provably correct inline monitoring for multithreaded Java-like programs
Journal of Computer Security - EU-Funded ICT Research on Trust and Security
Proceedings of the 9th International Conference on Aspect-Oriented Software Development
An information flow verifier for small embedded systems
WISTP'07 Proceedings of the 1st IFIP TC6 /WG8.8 /WG11.2 international conference on Information security theory and practices: smart cards, mobile and ubiquitous computing systems
Using abstract interpretation to add type checking for interfaces in Java bytecode verification
Theoretical Computer Science
Using abstract interpretation to add type checking for interfaces in Java bytecode verification
Theoretical Computer Science
Java bytecode verification for @NonNull types
CC'08/ETAPS'08 Proceedings of the Joint European Conferences on Theory and Practice of Software 17th international conference on Compiler construction
Efficient interpretation using quickening
Proceedings of the 6th symposium on Dynamic languages
Formalisation and implementation of an algorithm for bytecode verification of @NonNull types
Science of Computer Programming
Implementing a Language with Flow-Sensitive and Structural Typing on the JVM
Electronic Notes in Theoretical Computer Science (ENTCS)
Reduced certificates for abstraction-carrying code
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
A type system for checking applet isolation in java card
CASSIS'04 Proceedings of the 2004 international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices
Formal methods for smartcard security
Foundations of Security Analysis and Design III
A uniform and certified approach for two static analyses
TYPES'04 Proceedings of the 2004 international conference on Types for Proofs and Programs
FAST'05 Proceedings of the Third international conference on Formal Aspects in Security and Trust
Modeling the Java Bytecode Verifier
Science of Computer Programming
Artificial immune system based mobile agent platform protection
Computer Standards & Interfaces
A calculus for constraint-based flow typing
Proceedings of the 15th Workshop on Formal Techniques for Java-like Programs
Efficient interpreter optimizations for the JVM
Proceedings of the 2013 International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, Languages, and Tools
Guided GUI testing of android apps with minimal restart and approximate learning
Proceedings of the 2013 ACM SIGPLAN international conference on Object oriented programming systems languages & applications
Efficient hosted interpreters on the JVM
ACM Transactions on Architecture and Code Optimization (TACO)
Hi-index | 0.00 |
Bytecode verification is a crucial security component for Java applets, on the Web and on embedded devices such as smart cards. This paper reviews the various bytecode verification algorithms that have been proposed, recasts them in a common framework of dataflow analysis, and surveys the use of proof assistants to specify bytecode verification and prove its correctness.