mirror of
https://github.com/corda/corda.git
synced 2024-12-22 06:17:55 +00:00
20 lines
918 B
Markdown
20 lines
918 B
Markdown
|
# JVM sandbox
|
||
|
|
||
|
The code in this submodule is not presently integrated with the rest of the platform and stands alone. It will
|
||
|
eventually become a part of the node software and enforce deterministic and secure execution on smart contract
|
||
|
code, which is mobile and may propagate around the network without human intervention. Note that this sandbox
|
||
|
is not designed as a anti-DoS mitigation.
|
||
|
|
||
|
To learn more about the sandbox design please consult the Corda technical white paper.
|
||
|
|
||
|
This code was written by Ben Evans.
|
||
|
|
||
|
# Roadmap
|
||
|
|
||
|
* Thorough code and security review.
|
||
|
* Possibly, a conversion to Kotlin.
|
||
|
* Make the instrumentation ahead of time only.
|
||
|
* Finalise the chosen subset of the Java platform to expose to contract code.
|
||
|
* Create the pre-instrumented sandboxed class files and check them in.
|
||
|
* Integrate with the AttachmentsClassLoader
|
||
|
* Add OpenJDK/Avian patches for deterministic Object.hashCode() implementation.
|