Skip to content

[engine] new JS VM #81

@florianlenz

Description

@florianlenz

Feature / Issue

Otto doesn't really work out for us since it doesn't offer the performance we need nor the sandboxing features (like limiting the allocated memory). We should switch to duktape (there are go bindings).

things to figure out:

  • we need duk_create_heap for sandboxing to make sure there is no way to allocate more mem than we provide. However it doesn't seem to be implemented (https://github.com/olebedev/go-duktape/blob/v3/api.go#L1597). However, it's used here but it's not exported so we might need to fork.
  • take in account this file. We need to understand it in order to build a secure VM.

Acceptance criteria

  • tests
  • all current feature of the DApp engine must work
  • sandboxing

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions