|
1 | 1 | # Machine-Bound Accounts (MBA) |
2 | 2 |
|
3 | | -MBAs are ERC-6551-inspired smart contract wallets bound to device NFTs, enabling secure interactions with various Dapps. They facilitate activities such as reward distributions, staking, lending, and more. |
| 3 | +Machine-Bound Accounts (MBAs) are smart contract wallets bound to device NFTs using the [ERC-6551](https://eips.ethereum.org/EIPS/eip-6551) standard. They enable autonomous, secure interactions between devices (or agents) and on-chain applications — **making machines first-class actors in the blockchain ecosystem.** |
4 | 4 |
|
5 | | -### MBA Generation |
| 5 | +MBAs bring programmability, ownership enforcement, and permissioned execution to devices, allowing them to: |
6 | 6 |
|
7 | | -The generation of an MBA follows ERC-6551 specification, where the tokenID could be provided by a DePIN project. Here are some examples of MBA addresses: |
| 7 | +* **Receive and manage rewards** |
| 8 | +* **Perform on-chain staking or lending** |
| 9 | +* **Execute delegated actions** |
| 10 | +* **Interact with Dapps autonomously or via authorized signers** |
8 | 11 |
|
9 | | -* EVM: 0xb2119aF10cc641162968ED255dC4E688dC4B2B6E |
10 | | -* Solana: FDNY674k4dC9zoGSnGzaajjYnXoKKvAAp3GZU7sAfnGX |
| 12 | +## How MBAs Work |
| 13 | + |
| 14 | +An MBA is a smart contract wallet that is: |
| 15 | + |
| 16 | +* Deterministically generated based on a device unique ID (e.g., serial number, IMEI number, etc..) |
| 17 | +* Fully programmable, just like externally owned accounts (EOAs) or other smart contract wallets |
| 18 | +* Securely bound to the identity and ownership of the NFT |
| 19 | + |
| 20 | +This binding ensures that only the owner of the device can control or delegate permissions for the MBA. |
| 21 | + |
| 22 | +## MBA Generation |
| 23 | + |
| 24 | +MBA generation follows the [ERC-6551 registry specification](https://eips.ethereum.org/EIPS/eip-6551#registry). The account address is computed from the following parameters: |
| 25 | + |
| 26 | +* Implementation contract address |
| 27 | +* Unique salt value |
| 28 | +* Chain ID |
| 29 | +* NFT contract address |
| 30 | +* NFT token ID |
| 31 | + |
| 32 | +This process is deterministic — meaning the same device will always resolve to the same MBA wallet address. |
| 33 | + |
| 34 | +## Example MBA Addresses |
| 35 | + |
| 36 | +While ERC-6551 is EVM-specific, the concept of token-bound accounts can be adapted to other chains like Solana, using comparable account abstraction primitives. |
| 37 | + |
| 38 | +<table data-header-hidden><thead><tr><th width="150.8046875">Chain</th><th>Example MBA Address</th></tr></thead><tbody><tr><td>EVM</td><td><code>0xb2119aF10cc641162968ED255dC4E688dC4B2B6E</code></td></tr><tr><td>Solana</td><td><code>FDNY674k4dC9zoGSnGzaajjYnXoKKvAAp3GZU7sAfnGX</code></td></tr></tbody></table> |
| 39 | + |
| 40 | +## When is an MBA Created? |
| 41 | + |
| 42 | +In practice, an MBA is automatically generated when a DePIN project registers an ioID for the device on-chain |
0 commit comments