Hello out there in zenland, I received a nice parcel today that included my Horizen branded Coolwallet.
I decided to run a Proof of Concept (POC) on how you could hold the collateral for a couple of nodes on the device.
Step 1 - Setup the staking address with the collateral balance
After setting up the device, I may write a blog post later on this, I setup two addresses:
I then sent exactly 2 zen to each of these addresses. This 2 zen represents the 42 zen that you would use for the collateral for a securenode (the initial amount in a single transaction is what I would use to to setup each address for staking.
Step 2 - Sending "rewards" to the staking address
I then simulated the sending of node rewards to the addresses:
Step 3 - Sending the "rewards" away
I then confirmed that I had the "staking" balances and the "rewards" in my addresses in my Coolwallet.
Then I pressed the Trade button, and saw the next screen where I entered the receiving address (I used the QR code for an address in my Sphere wallet).
I then pressed on the my address field and I was presented with the following screen which allowed me to select both of the addresses in my CoolWallet:
I selected the second address and the pressed the < to go back to the previous page. This then allows sending coins away from both addresses.
I then pressed the "max" button, where the total from both of the addresses is presented:
I know that each of the addresses had 2 zen in each (representing the 42 zen stake) I subtracted the 4 zen from the max (2 * 2 zen collateral stake) resulting in the following:
I then scrolled down and pressed the "Next" button and was presented with this screen:
As you can see when pressing the max button then removing the total "stake" we are presented with the balance of just the rewards. I then clicked the "Confirm" button.
Now I timed this event to see how long it took to get to compile the transaction and present the screen to confirm the transaction on the CoolWallet S. This time took 1 minute 41 seconds on an iPhone X. I then confirmed the transaction and took about 4 seconds to send the transaction to the network mempool.
As you can see on the blockchain, using this method allowed me to send the "rewards" away from the staking addresses without touching the collateral.
I have not tested whether adding an address with the collateral after you have received node rewards will impact the sending of rewards out. Previously with the Ledger legacy Bitcoin Chrome App it did affect it. I may try and test this out when I get some time.
I have also not tested multiple weeks, i.e. sending the rewards one week and then receiving some rewards and then timing again to see if the transaction compilation time changes over time.
I hope you find this interesting and if you have any further questions please do not hesitate to get intouch with me below or on discord.