Skip to content

Commit

Permalink
Edits Account Abstraction (#5263)
Browse files Browse the repository at this point in the history
* added figure

* edited figure + added description
  • Loading branch information
filippoweb3 authored Oct 12, 2023
1 parent 6e2eade commit 767eb09
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 4 deletions.
Binary file added docs/assets/origin-abstraction.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
17 changes: 13 additions & 4 deletions docs/learn/learn-account-abstraction.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,19 @@ Neither of those origins is subservient to the concept of an account or assume a
or associated data. Custom origins can be created while designing your chain using the Substrate
(which is part of the [Polkadot SDK](https://github.com/paritytech/polkadot-sdk)).

Accounts happen to be just one variant (or corner case) of Substrate's FRAME possible origins, the
`frame_system::RawOrigin::Signed`. In Substrate, the concept of account is completely deprioritized.
Substrate itself remains indifferent to an account's balance and nonce. While FRAME can support
their presence, it fundamentally does not need to rely on them.
The figure below shows the {{ polkadot: Polkadot :polkadot }}{{ kusama: Kusama :kusama }}'s origin
abstraction. Accounts happen to be just one variant (or corner case) of Substrate's FRAME possible
origins, the `frame_system::RawOrigin::Signed`. OpenGov origins function in a way that, if
conditions (approval and support) are met and a proposal passes, the appropriate
[origin is then associated with the scheduled call](https://github.com/paritytech/polkadot-sdk/blob/1835c091c42456e8df3ecbf0a94b7b88c395f623/substrate/frame/referenda/src/lib.rs#L884).
Those origins are caller-personas that do not have any entity behind them, and do not hold any state
on chain.

![origin-abstraction](../assets/origin-abstraction.png)

In Substrate, the concept of account is completely deprioritized. Substrate itself remains
indifferent to an account's balance and nonce. While FRAME can support their presence, it
fundamentally does not need to rely on them.

The [Cross-Consensus Messaging (XCM)](./learn-xcm-index) format can take advantage of origin
abstraction for cross-consensus communications by specifying the context for a particular message.
Expand Down

0 comments on commit 767eb09

Please sign in to comment.