w3f / polkadot-wiki

The source of truth for Polkadot.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Add information on system accounts

laboon opened this issue · comments

I received this question. An answer to it (and more in-depth than what I said, e.g. include a list of all kinds of system accounts perhaps? ) belongs on https://wiki.polkadot.network/docs/learn-account-advanced

QUESTION:
https://polkadot.subscan.io/account_list?role=module
What is a system account and what is their role? Why do they hold such a large volume of token? Why isn't there any activity on these accounts (no extrinsics & no transfers)

ANSWER:
These are accounts that are used by the system, not by users - for instance, storage of crowdloan funds, Treasury, nominator pools, etc.
They don't use the normal transfer process, and they'll never issue an extrinsic since they aren't "real" accounts held by users

Would be helpful to have a list of system account types and their denominations (eg trsry as Treasury, cfund as crowdloan fund storage) so that users know which account does which functions.

Some helpful info that may add context, particularly on:

Why isn't there any activity on these accounts (no extrinsics & no transfers)

If you notice the Account field in this list of system accounts, you will see a certain ID. This ID corresponds to the pallet id relating to that particular account, take for example the treasury pallet id is: py/trsry.

It is possible to derive account IDs/addresses from these pallet IDs, much in the same way parachain IDs can also be represented as addresses (an example is converting py/trsry -> address will give you the address for the treasury). This acts as a container for funds but has no actual power over them (due to a lack of a corresponding key pair).