Skip to content

Privilege system for syscalls #468

Open
@raulk

Description

@raulk

We currently don't have an ACL/permissioning/privilege system for syscalls. Ideally we wouldn't need it, but Filecoin is different to other chains in the sense that there's significant functionality contained in built-in actors, some which needs to perform side-effects that should not be available to user-defined actors. Examples:

  • gas::charge_gas (attempt to refactor in Clean up and simplify gas functionality #442, but likely not landing)
  • actor::create_actor in its current form (explicitly taking an ActorID), although we could also modify this syscall to return the ActorID (correct way)
  • Potentially some proof verification functions used only by the miner actor, which presumably have no direct applicability outside the miner actor. Other actors would probably query the state of the miner actor instead of verifying proofs explicitly.

None of this is a problem for M1, since it doesn't support the installation and deployment of user-defined actors. However, we could lay out the groundwork ahead of time.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions