0

This question is about how standalone a hardware wallet (such as Trezor) is. Or in other words, what other components, if any, does it depend on.

So this is about what other components are needed for the Bitcoins to end in Bobs hardware wallet when Alice wants to send Bitcoins to Bobs wallet address.

So for example, is a hardware wallet dependent on connecting to either

  1. some software with the wallet address that runs on the PC and connects to the internet, or
  2. some web application, or maybe a part of the BTC ecosystem, that hosts the wallet address

Or is it possible to send Bitcoin directly to a hardware wallet (such as Trezor) simply by plugging the hardware wallet to a USB port on your PC?

2

A hardware wallet such as Trezor is simply a clever storage of your private keys that can be made to do some things defined by its firmware (like signing a transaction). The instructions to do these are relayed to it over USB from any device running software capable of producing them. Usually this will be a PC or a phone running wallet software created either by the manufacturer or the open source community.

I will try to outline what exactly is needed for Alice to send some bitcoin to Bob when they are both using a hardware wallet:

  1. Bob needs a bitcoin address to give to Alice. He uses his wallet software to instruct his hardware wallet to generate a new address from its extended public key. This step could be done without internet connection, however without connecting to the Bitcoin network the wallet software wouldn't know which addresses have already been used and might end up reusing an address. Bob looks at the generated address on the hardware wallet display (not on his PC because it might be infected to show an attacker's address instead) and gives it to Alice.

  2. Alice uses her wallet software to create a transaction, entering Bob's address, amount to send and tx fee (potentionally more, like RBF, locktime...). She needs to connect to the Bitcoin network for this to know her UTXOs. Once created, she sends the unsigned transaction to her hardware wallet for signing. The hardware wallet will show on its display the transaction's details and asks her to confirm it. The signed transaction is then sent back to the wallet software and can be, now or at any point in the future, broadcasted to the Bitcoin network.

TL;DR: You need a PC or a phone running wallet software to use your hardware wallet.

2
  • Thank you @Vojtěch Strnad for the answer. Is it correct to say that the funds are transferred only in the sense of getting recorded in the blockchain as now belonging to Bob's address (i.e. the address provided by his HW wallet)? And does Bob's wallet have some functionality to allow Bob to release those funds and send them elsewhere?
    – coderworks
    Jul 6 at 3:18
  • 1
    @coderworks. 1) Correct, transference and recording of transactions with funds only happens once validated on the blockchain. 2) If Bob want to spend the funds then he has to provide a signature associated with his address that only his private key can produce. Jul 6 at 4:33
1

what other components are needed for the Bitcoins to end in Bobs hardware wallet when Alice wants to send Bitcoins to Bobs wallet address.

None.

Because receiving wallets play no part whatsoever in the transaction process (other than some time in the past providing a receiving address that you communicate to Alice in the form of a QR code etc). A receiving wallet can be offline, unpowered and still receive money because wallets don't contain money - money is just a record in the blockchain that everyone has a copy of (or access to a copy of).

Spending money, on the other hand, requires software that can work with the hardware wallet to create a transaction and make a few peers aware of it. As WillO pointed out, this software can either be software that you install on your personal computer or a web-based application accessed using an ordinary web-browser.

Related:

2
  • The OP might find it helpful to know that even for spending, you don't actually need to run the software yourself. You can plug your Trezor into a USB port on your computer, then connect to Trezor's website at www.trezor.io, and that's all you need.
    – WillO
    Jul 6 at 3:20
  • @WillO: Good point, answer updated accordingly, thanks. Jul 6 at 9:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.