Skip to content

Commit 9207031

Browse files
committed
fix: add disclaimer for accounts
1 parent 4409f9a commit 9207031

File tree

4 files changed

+48
-0
lines changed

4 files changed

+48
-0
lines changed

develop/smart-contracts/connect-to-kusama.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ For more information about how to connect to a Polkadot network, please check th
1616
!!! info "Production Environment"
1717
Kusama Hub offers a live environment for deploying smart contracts. Please note that the most recent version of Polkadot's Ethereum-compatible stack is available on the TestNet; however, you can also deploy it to the Kusama Hub for production use.
1818

19+
!!! warning "Account Mapping"
20+
If you are using a native Polkadot account (32-byte format) that was created with a Polkadot/Substrate keypair (Ed25519/Sr25519) rather than an Ethereum-compatible keypair (secp256k1), you'll need to map your account to enable Ethereum compatibility. See the [Account Mapping](/polkadot-protocol/smart-contract-basics/accounts#account-mapping-for-native-polkadot-accounts){target=\_blank} section for more details.
1921

2022
## Networks Details
2123

develop/smart-contracts/connect-to-polkadot.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,9 @@ description: Explore how to connect to Polkadot Hub, configure your wallet, and
1313

1414
For more information about how to connect to Polkadot Hub, please check the [Wallets for Polkadot Hub](/develop/smart-contracts/wallets/){target=\_blank} guide.
1515

16+
!!! warning "Account Mapping"
17+
If you are using a native Polkadot account (32-byte format) that was created with a Polkadot/Substrate keypair (Ed25519/Sr25519) rather than an Ethereum-compatible keypair (secp256k1), you'll need to map your account to enable Ethereum compatibility. See the [Account Mapping](/polkadot-protocol/smart-contract-basics/accounts#account-mapping-for-native-polkadot-accounts){target=\_blank} section for more details.
18+
1619
## Networks Details
1720

1821
Developers can leverage smart contracts across diverse networks, from TestNets to MainNet. This section outlines the network specifications and connection details for each environment.

llms.txt

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6887,6 +6887,8 @@ For more information about how to connect to a Polkadot network, please check th
68876887
!!! info "Production Environment"
68886888
Kusama Hub offers a live environment for deploying smart contracts. Please note that the most recent version of Polkadot's Ethereum-compatible stack is available on the TestNet; however, you can also deploy it to the Kusama Hub for production use.
68896889

6890+
!!! warning "Account Mapping"
6891+
If you are using a native Polkadot account (32-byte format) that was created with a Polkadot/Substrate keypair (Ed25519/Sr25519) rather than an Ethereum-compatible keypair (secp256k1), you'll need to map your account to enable Ethereum compatibility. See the [Account Mapping](/polkadot-protocol/smart-contract-basics/accounts#account-mapping-for-native-polkadot-accounts){target=\_blank} section for more details.
68906892

68916893
## Networks Details
68926894

@@ -6976,6 +6978,9 @@ description: Explore how to connect to Polkadot Hub, configure your wallet, and
69766978

69776979
For more information about how to connect to Polkadot Hub, please check the [Wallets for Polkadot Hub](/develop/smart-contracts/wallets/){target=\_blank} guide.
69786980

6981+
!!! warning "Account Mapping"
6982+
If you are using a native Polkadot account (32-byte format) that was created with a Polkadot/Substrate keypair (Ed25519/Sr25519) rather than an Ethereum-compatible keypair (secp256k1), you'll need to map your account to enable Ethereum compatibility. See the [Account Mapping](/polkadot-protocol/smart-contract-basics/accounts#account-mapping-for-native-polkadot-accounts){target=\_blank} section for more details.
6983+
69796984
## Networks Details
69806985

69816986
Developers can leverage smart contracts across diverse networks, from TestNets to MainNet. This section outlines the network specifications and connection details for each environment.
@@ -25363,6 +25368,25 @@ The conversion process is implemented through the [`to_address`](https://parityt
2536325368

2536425369
**Stateful Mapping for Reversibility** : Since the conversion from 32-byte to 20-byte addresses is inherently lossy, the system provides an optional stateful mapping through the [`OriginalAccount`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/type.OriginalAccount.html){target=\_blank} storage. When a Polkadot account registers a mapping (via the [`map`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/trait.AddressMapper.html#tymethod.map){target=\_blank} function), the system stores the original 32-byte account ID, enabling the [`to_account_id`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/trait.AddressMapper.html#tymethod.to_account_id){target=\_blank} function to recover the exact original account rather than falling back to a default conversion.
2536525370

25371+
25372+
### Account Mapping for Native Polkadot Accounts
25373+
25374+
If you have a native Polkadot account (32-byte format) that was created with a Polkadot/Substrate keypair (Ed25519/Sr25519) rather than an Ethereum-compatible keypair (secp256k1), you'll need to map your account to enable Ethereum compatibility.
25375+
25376+
To map your account:
25377+
25378+
1. Call the [`map_account`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/pallet/dispatchables/fn.map_account.html){target=\_blank} extrinsic of the [`pallet_revive`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/index.html){target=\_blank} pallet using your original Substrate account.
25379+
2. This creates a stateful mapping that allows your 32-byte account to interact with the Ethereum-compatible smart contract system.
25380+
25381+
Once mapped, you'll be able to:
25382+
25383+
- Transfer funds between 20-byte format addresses.
25384+
- Interact with smart contracts using Ethereum-compatible tools like MetaMask.
25385+
- Maintain full reversibility to your original 32-byte account format.
25386+
25387+
!!! warning "Mapping Requirement"
25388+
Without this mapping, native Polkadot accounts cannot transfer funds or interact with the Ethereum-compatible layer on the Hub.
25389+
2536625390
## Account Registration
2536725391

2536825392
The registration process is implemented through the [`map`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/trait.AddressMapper.html#tymethod.map){target=\_blank} function. This process involves:

polkadot-protocol/smart-contract-basics/accounts.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,25 @@ The conversion process is implemented through the [`to_address`](https://parityt
5151

5252
**Stateful Mapping for Reversibility** : Since the conversion from 32-byte to 20-byte addresses is inherently lossy, the system provides an optional stateful mapping through the [`OriginalAccount`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/type.OriginalAccount.html){target=\_blank} storage. When a Polkadot account registers a mapping (via the [`map`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/trait.AddressMapper.html#tymethod.map){target=\_blank} function), the system stores the original 32-byte account ID, enabling the [`to_account_id`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/trait.AddressMapper.html#tymethod.to_account_id){target=\_blank} function to recover the exact original account rather than falling back to a default conversion.
5353

54+
55+
### Account Mapping for Native Polkadot Accounts
56+
57+
If you have a native Polkadot account (32-byte format) that was created with a Polkadot/Substrate keypair (Ed25519/Sr25519) rather than an Ethereum-compatible keypair (secp256k1), you'll need to map your account to enable Ethereum compatibility.
58+
59+
To map your account:
60+
61+
1. Call the [`map_account`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/pallet/dispatchables/fn.map_account.html){target=\_blank} extrinsic of the [`pallet_revive`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/index.html){target=\_blank} pallet using your original Substrate account.
62+
2. This creates a stateful mapping that allows your 32-byte account to interact with the Ethereum-compatible smart contract system.
63+
64+
Once mapped, you'll be able to:
65+
66+
- Transfer funds between 20-byte format addresses.
67+
- Interact with smart contracts using Ethereum-compatible tools like MetaMask.
68+
- Maintain full reversibility to your original 32-byte account format.
69+
70+
!!! warning "Mapping Requirement"
71+
Without this mapping, native Polkadot accounts cannot transfer funds or interact with the Ethereum-compatible layer on the Hub.
72+
5473
## Account Registration
5574

5675
The registration process is implemented through the [`map`](https://paritytech.github.io/polkadot-sdk/master/pallet_revive/trait.AddressMapper.html#tymethod.map){target=\_blank} function. This process involves:

0 commit comments

Comments
 (0)