Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The current proof-of-concept implementation will be used to explore how continuations can be used in a secure environment (applet, etc.).
Starting from a very conservative approach features will be added if they are considered secure.

Permissions

The targets and actions for continuation permissions could be characterized roughly like this:
Image Added

JVM Assumptions broken by continuations

Arbitrary continuations can break many low-level assumptions taken by the JVM and the continuation code, some of which could be verified and some not:

verifyable (with reasonable effort)

  • local variable count
  • expression count
  • data types of local variables
  • expression is object or scalar
  • method can be executed for "this"
  • copyStack is called at the top frame
  • bottom frame method is a Runnable.run()

not verifyable (with reasonable effort)

  • data types of expressions
  • local variable or expression matches assumptions about data type

Conservative approach

The first security concept will be a very conservative one:

...