Learn More
We present a method to certify a subset of the Java bytecode, with respect to security. The method is based on abstract interpretation of the operational semantics of the language. We define a concrete small-step enhanced semantics of the language, able to keep information on the flow of data and control during execution. A main point of this semantics is(More)
When an applet is sent o ver the internet, Java Virtual Machine code is transmitted and remotely executed. Because untrusted code can be executed on the local computer running the web browser, security problems may arise. Here we present a m e t h o d t o c heck illicit ows in Java b ytecode, that exploits the type-level abstract interpretation of bytecode(More)
In model checking for temporal logic, the correctness of a system with respect to a desired behavior is verified by checking whether a structure that models the system satisfies a formula describing the behavior. Most existing verification techniques are based on a representation of the system by means of a labeled transition system. In this approach to(More)
This work discusses some issues in the debugging of concurrent programs. A set of desirable characteristics of a debugger for concurrent languages is deduced from an examination of the differences between the debugging of concurrent programs and that of sequential ones. A debugger for a concurrent language, derived from CSP, is then presented. It is based(More)