<p>In Bitcoin, wallets do not actually store coins. Wallets hold <em>private key material</em> that enables the user to spend specific Unspent Transaction Outputs (UTXOs) that are tracked on the blockchain.</p>
<p>Hardware signing devices generally do not have the capability to process the blockchain. Therefore they cannot by themselves learn which UTXOs are owned by the user. This is where the software wallet comes into play: The software wallet keeps track of a &quot;watch-only&quot; wallet and therefore learns about the UTXOs and transactions relevant to the user. This information is used to create transactions. The hardware signing device only keeps track of the private key material and will provide signatures for the transaction created by the software wallet. To that end, the transaction needs to be presented in a specific format to the hardware signer’s interface. This translation layer is usually implemented in some software wallets.</p>
<p>The keys do not need to leave the hardware signing device. Rather the partially signed (or unsigned) transaction is transferred to the hardware signing device, the hardware signing device adds the relevant signatures, and the signed transaction is returned from the hardware signing device to the software wallet. There are various ways to get the transaction data to the hardware signing device, the simplest is to plug it into the computer with the software wallet, but some hardware signers e.g. read animated QR codes, or some users create the transaction on the online device and use a separate airgapped offline device to connect to the hardware signing device.</p>

CC BY-SA 4.0
2024-08-20T17:14:19.287Z
2024-08-20T17:14:19.287Z
Murch
<p>I have read multiple times about people asking to connect to a computer based software wallet to their hardware wallet. I dont understand the need to do that? Is not a hardware wallet sufficient enough to hold tokens? Even if you have to connect to a dapp to interact why would you need to connect your Bitcoin hardware wallet to lets say Electrum on your computer?</p>
<p>Also how will electrum read and understand what's happening on your hardware wallet? Would you not have to enter your seeds on the electrum application to use your wallet? That would make the purpose of accessing your wallet on the HW wallet useless if you are going to make that cold wallet hot like that.</p>
<p>Thanks.</p>

<wallet><electrum><hardware-wallet>
Why do you need to connect to a software wallet if you have a hardware wallet
Anuj Sanghvi
# Why do you need to connect to a software wallet if you have a hardware wallet

(Asked by: username_0 on 2024-08-20)

I have read multiple times about people asking to connect to a computer based software wallet to their hardware wallet. I dont understand the need to do that? Is not a hardware wallet sufficient enough to hold tokens? Even if you have to connect to a dapp to interact why would you need to connect your Bitcoin hardware wallet to lets say Electrum on your computer?

Also how will electrum read and understand what's happening on your hardware wallet? Would you not have to enter your seeds on the electrum application to use your wallet? That would make the purpose of accessing your wallet on the HW wallet useless if you are going to make that cold wallet hot like that.

Thanks.

**Tags:** wallet, electrum, hardware-wallet


---

## 1 answers

### Answer by username_1 on 2024-08-20. Score: 1 | Accepted answer

In Bitcoin, wallets do not actually store coins. Wallets hold *private key material* that enables the user to spend specific Unspent Transaction Outputs (UTXOs) that are tracked on the blockchain.

Hardware signing devices generally do not have the capability to process the blockchain. Therefore they cannot by themselves learn which UTXOs are owned by the user. This is where the software wallet comes into play: The software wallet keeps track of a "watch-only" wallet and therefore learns about the UTXOs and transactions relevant to the user. This information is used to create transactions. The hardware signing device only keeps track of the private key material and will provide signatures for the transaction created by the software wallet. To that end, the transaction needs to be presented in a specific format to the hardware signer’s interface. This translation layer is usually implemented in some software wallets.

The keys do not need to leave the hardware signing device. Rather the partially signed (or unsigned) transaction is transferred to the hardware signing device, the hardware signing device adds the relevant signatures, and the signed transaction is returned from the hardware signing device to the software wallet. There are various ways to get the transaction data to the hardware signing device, the simplest is to plug it into the computer with the software wallet, but some hardware signers e.g. read animated QR codes, or some users create the transaction on the online device and use a separate airgapped offline device to connect to the hardware signing device.


---

