You are viewing a single comment's thread from:

RE: Tomshwom's Advanced Crypto Security Guide (Part 3) - Creating a Secure Wallet

in #cryptocurrency7 years ago

In cryptocurrency, all blockchains I now of work like this:

• A private key is used to prove ownership of a certain address (public key) since the address is derived directly from the private key itself.

• You use the private key to "sign", or cryptographically prove ownership of an address, transactions that contain data about how much is being moved, where it's going, how much in fees you're paying, etc.

• This signed transaction is then broadcast to miners who then include them in blocks on the blockchain

Generating unsigned transactions requires access to the network in some way so that you can know how much funds are in the address and what the transaction nonce should be. Since these are just simple numbers, it's easy to just look them up on an online device like a phone and type them in to your offline system where you're creating the transaction. Alternatively, you can create the transaction online and move the data to your offline system and sign it there.

My point is, technically every blockchain can have transactions signed offline with the right knowledge. The question is which wallets support this so that average users can actually do it..

If you can't find offline functionality built in to the wallet for the blockchain you're using, you may very well have to get command line or API tools to do this.


You can absolutely add new wallets / software to the Tails drive after installation - just make sure it's in the persistent storage volume or it will be erased.


We'll have to see about how staking works on whatever blockchain in question. For Ethereum, it's based on transactions to the Casper smart contract, so you will need to be able to sign and broadcast transactions with some frequency in order to be an active staker. This is probably not the ideal application for air-gapped storage like the Tails drive.


To update something, you simply remove the old software / files and put the new ones on. In the case of MyEtherWallet, you're not really "installing" anything. You're literally just opening up an HTML file in a browser and using some scripts to handle stuff in an easy way.

If the blockchain itself doesn't fork to a new protocol, you should never need to update your software on an offline device.

Sort:  

Very interesting, thank you!

I have been working may way through the guide in the meantime and I believe I have come across an issue. When opening the index.html file a dialog box appears saying that Tor is not yet ready and asking to start Tor anyway, I presume this to be normal. However, after opening the index.html file in Tor a very rudimentary form of the MEW page appears, with a white background and nothing functional yet still present. I am not sure if this is supposed to appear like that, but after some reading around I believe others may have experienced the same issues. I wonder if you are familiar with this issue and maybe know of any solutions to it, as I have not been able to find any yet.

I hope I have been clear enough describing the issue.

That warning is normal when Tor cannot connect to other nodes (which it shouldn't be able to if networking is disabled).

The problem with Tor rendering the HTML file is a bug with the version of Tor in the most recent version of Tails. There is a link to an older version of Tails that doesn't have this issue somewhere in the comments on that post. Since you're using it offline, using a slightly older version really won't matter much.

If the problem is caused by Tor, wouldn't it be easier to install a different version of Tor or a different browser on the persistent volume (not sure if this is even possible)? Or is there a security risk involved when solving it this way?