Reference for operating a wallet offline?


I am trying to create an offline wallet which is hopefully cold. Besides storing the coins, I want it to also sign transaction by transferring the needed data away via a USB. My understanding can be wrong as I am totally new to this, but I think the flow is as below:

  1. A transaction is created on a PC running fully-synced node, to send an amount from a cold wallet to another wallet
  2. The data of the transaction is transferred to the cold wallet store on an internet-isolated PC, e.g. a RPi4, via a USB drive
  3. Data corresponding to a signature for the needed transaction is generated on the RPi4, and the signature data is extracted via the USB thumb drive
  4. The signature data downloaded to the fully-synced node PC, and is used to complete the transaction and sent to the blockchain

If I want to perform the above, is there any reference I can look at?

It’s an interesting concept, but I have not seen anyone try to perform an indirect transaction like this. Nor have I seen any official documentation that would allow you to do it this way.

As far as I know, in order to perform a transaction (of sending coin to someone from your cold wallet) you would need to sync your cold wallet, perform the transaction and have the transaction entered into the blockchain directly, at which point your ‘cold’ wallet is no longer cold.

The latter is the problem, or just inconvenience I would like to address. The idea here is not really new as it should be similar to how a hardware wallet works, and someone was also trying that on reddit though I haven’t seen updates.

I haven’t looked into the code, but the Chia cli reference didn’t seem to have lower level features to do this yet.

I always thought that hardware wallets were just secure storage devices to hold keys and passwords,I didn’t realise they had the ability to sign transactions. Hopefully, this will be a feature in a future update as it would be pretty good for security.

1 Like

I like to give an idea that I have experienced and it works. I simply created a disposable wallet, that is, I use my primary wallet to transfer some funds to a new wallet and then use the seeds of the latter to pay … when it’s empty, I get rid of it.
NOW important: I am looking for a programmer to make me this project directed to 5 chia addresses (python) in localhost. Please urgent

Thank’s Sandbo & uChiaFarmer.
Sorry for the delay in replying, I was very busy finding the solution and when I found it EUREKA !!!
I created a batch file that, thanks to the CLI, launches imports for each different key (5). The project is in Italian because it concerns the Italian regions. If someone wants to disseminate the project in his country and wants a hand in the translation, I am available to assign the rights of use. Here with my pride

It may work, but your main wallet is still a hot wallet.
Exactly what the OP is trying to avoid.
Glad your happy with your solution though.