Closed diwakergupta closed 1 year ago
That's great feedback, thank you! I have a PR with some minor changes and will update it.
A related question (perhaps better answered in the SIP): some wallets by default might send the txn from a segwit address derived from the same key, even though the PoX address is not segwit. What happens in that situation?
This is an interesting question - my impression was that if you are receiving rewards at that address you can send from it. The new wording for the sentence on the website is much clearer, if the user cannot send from that address I'm not sure how we could tabulate it.
Definitely a good question for the SIP discussion!
This is an interesting question - my impression was that if you are receiving rewards at that address you can send from it. The new wording for the sentence on the website is much clearer, if the user cannot send from that address I'm not sure how we could tabulate it.
Here's a concrete scenario:
In theory, since the private keys are the same for both addresses, we should be able to match them but don't know how feasible that is in practice.
I don't think there is a way to do that when presented with the address. Most wallets will use the master seed phrase to generate additional private keys down the tree of the derivation path from master -> purpose -> coin type -> account -> receive/change address, and do not create the final public/private key pair until that last step that is used to generate the address.
That's why rotating addresses is a security advantage, aside from seeing the flow of Bitcoin in the sequence sent between addresses, there is no other link between them. If the paths are not hardened then an extended public key can be used to know all Bitcoin addresses from a child node, but it's not common practice in most implementations. (open to feedback here if wrong, that's my understanding of it)
Some wallets also provide "coin control" features where the user can select a previous UTXO to spend from, but support for that is dependent on the wallet and it's still an advanced process for the average user.
These three visuals for Derivation Paths, HD Wallets and Extended Keys are very helpful in outlining what's happening at the protocol level.
Methods 1 and 2 have text that reads like: "To vote, you'll need to send a Bitcoin transaction using the key(s) to your PoX reward address."
Now I know that "using the key(s) to" is referring to "your PoX reward address". But IMO above can easily be misinterpreted as "send a Bitcoin transaction ... to your PoX reward address".
To avoid any confusion, I would reword to something like: "To vote, you'll seed to send a Bitcoin transaction to one of the addresses below (depending on your vote). The transaction must come from your PoX reward address."
A related question (perhaps better answered in the SIP): some wallets by default might send the txn from a segwit address derived from the same key, even though the PoX address is not segwit. What happens in that situation?