Basically, Electrum generates the "
extended key" at m/84'/0'/0' and then uses that
extended key as the
root key... it then starts generating addresses as m/0/0, m/0/1, m/0/2 etc. (which are actually equivalent to: m/84'/0'/0'/0/0 etc)
You can test this using Ian Coleman's BIP39 mnemonic converter:
humble shoe steel champion good fall manual okay carbon eye bamboo minimum
zprvAWgYBBk7JR8GjBZDbo7MdVF9joK6GY581EeVAFTuPrqnDimH8bCqnSr7UNCr9Xo2YV8637rAAUNtGqqBNNF14NY37fu4B6WmV3wUxHmoMAB
Select BIP84 tab... gives us these account extended keys:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Ftalkimg.com%2Fimages%2F2023%2F11%2F15%2FzJCtI.png&t=665&c=75p2D1msUhQ_Ig)
and this address:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Ftalkimg.com%2Fimages%2F2023%2F11%2F15%2FzJQcd.png&t=665&c=GmqvnVJDtiMRJQ)
So wee get an
Account extended private key of:
zprvAe4w8ERG69nfgjYSwkzaRokCDBrnaXPQykiBv6fDpFTkDiWDjBHJhQkeXJAKFAGdruUzict2rq5FfKPZRfv4qmvBrYzTLVXwoF2qXXjpHWy
and the matching
account extended public key:
zpub6s4HXjx9vXLxuDcv3nXanwgvmDhGyz7GLydniV4qNazj6WqNGibZFD58NYQBKk7yLcx3jTo87vxqG86CjpqFpXdUeSXQRTubZaxehpSvnEY
Which matches the one displayed by Electrum:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Ftalkimg.com%2Fimages%2F2023%2F11%2F15%2FzJGq5.png&t=665&c=Qg0EX0D4ltT7YA)
And these are the keys that Electrum stores in a BIP39 keystore/wallet file:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Ftalkimg.com%2Fimages%2F2023%2F11%2F15%2FzJmMz.png&t=665&c=_zXbiuuOEKJRoA)
If we use this
account extended private key as the BIP32 root key at the top:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Ftalkimg.com%2Fimages%2F2023%2F11%2F15%2FzJ6J2.png&t=665&c=P6HI1Qk8adqEdg)
Select BIP141 and use "m/0":
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Ftalkimg.com%2Fimages%2F2023%2F11%2F15%2FzJPbc.png&t=665&c=UHJtMqTdz8CDOQ)
We can see we derive the same addresses, with the path m/0/0:
![](https://ip.bitcointalk.org/?u=https%3A%2F%2Ftalkimg.com%2Fimages%2F2023%2F11%2F15%2FzJtsq.png&t=665&c=RvwW7mRi4M9nNg)
And because it's not hardened, you are able to derive all the addresses from the the matching "account extended
pubkey"... you can also test this by putting the
account extended pubkey in as the BIP32 root key, selecting BIP141 tab and setting derivation to m/0... you'll get the same bc1qs702fa457e4qyqwz7e0pcwlp2cz0400h8lfu6h address
I suspect this is "by design", so you can actually use the "pubkey" to create watching-only wallets for cold storage setups etc.