Versions Compared

Key

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

...

After some initial work on this task it appears that this part may cloud not be moved to genesis block and in general there could should not be any genesis block based logic in core Iroha.

...

Right now this type of user is created by direct manipulation of the World State View when the peer is started as you can see in the code listing. And consequently it is impossible to create this user by Iroha Special Instructions, as we need some account that this Iroha Special Instructions would relate to with `DoAynthing` `DoAnything` permission. Genesis block can't solve this problem without modification of basic Iroha mechanisms Permissions + Instructions.

...

  1. For public blockchains it would be reasonable to the execute a transaction for the root user to remove itself after all initial setup is done.
  2. For private blockchains the user may remain for some system administration related work.

Decisions

  • Every Iroha Peer starts with "root@global" Account with `DoAnything` permission

Alternatives

Concerns

Assumptions

Risks

Additional Information

Every other setup related work apart from root account initialization and permissions domain initialization can be done by ordinary transactions submitted by clients and therefore does not require genesis block related functionality.