Coolwallet Proof of Concept for node hosting
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:
znnpLZPgeDKqwG5TjQKjt6DpWNm7QHsRJaZ
znoDnEuc51UaV4KBK1Lua2nzk8mxjuYeHio
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.
https://explorer.zen-solutions.io/tx/fda5b0c1fa33e5d4aae4c28bbe96ce56900fcc4afbb02d2b0eeb6907e616957a
https://explorer.zen-solutions.io/tx/7396cc18640b1d9cb2a1ad21ff1fe27ed8b421caa055c082ba0c377cb27a2e40
Step 2 - Sending "rewards" to the staking address
I then simulated the sending of node rewards to the addresses:
https://explorer.zen-solutions.io/tx/1d90df2e4360d4a7e62faf9a647b85400a93ff763f69e63e4871a0af07b01d34
https://explorer.zen-solutions.io/tx/23f3abcee468da6049d9dbfb0f99e93c63a49c6991f7afec36966c9d223ba22f
https://explorer.zen-solutions.io/tx/04e0c54a25805ad7a71961b5a0e6d8100a4e0177481d6fa0465dd7d9639ba847
https://explorer.zen-solutions.io/tx/e655c33a7e936468603690aefcf5bb79632604a161b5ee57352089e919be9092
https://explorer.zen-solutions.io/tx/2180b334da9c1fab23061fd1a6705d218eea21d970157aebac001f22d6b0be6e
https://explorer.zen-solutions.io/tx/8463af27943af6e565d00849dbc2df848c2934389e802f7f03d3ad3bd9b4a8cc
https://explorer.zen-solutions.io/tx/36ad451b5faac1ca6a195f1a3ffa1b0dc29e90f113717113a1495e77e52fdfe3
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.
https://explorer.zen-solutions.io/tx/2c342bd1f7d29a4bffa67ce46feb368bb3d37b94d439991b4265c9451dfbb316
To get your CoolWalletS click on the image below
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.