3 ms·
My understanding are as the follows. If you have a hardware wallet. You will pass the intent message (sending money, swap, etc) to Trezor. Trezor holds your pr
by tmlee 8y ago
My understanding are as the follows.
If you have a hardware wallet.
You will pass the intent message (sending money, swap, etc) to Trezor. Trezor holds your private key. Signs the message with your private key.
Hands the payload back to the client to be broadcasted to the network.
This way your private key stays in the hardware wallet, and protected from a compromised computer.
If you use metamask instead. The private key here resides in the browser or your computer rather.
I am unsure exactly where the signing happens but it will have to happen within the domain of your computer (at metamask or js) because that is where the key is. Gets back payload to be broadcasted.
Copy pasting private key (totally not recommended) is for cases where say you dont have a metamask or a hardware wallet. The signing is done probably using the js library included by the widget to obtain payload for broadcast.
Nothing should be passed on to a server.
Only the signed message needs broadcasting into the ethereum network for the transaction to be included into a block.
- xrd 8y agoThe intent message is the pre-signed JSON of the transaction details, I'm assuming? How do you get that into the Trezor? Using USB OTG? I only see two buttons there.
- tmlee 8y agoUSB and Trezor has a software called Trezor Connect (https://github.com/trezor/connect https://github.com/trezor/connect) for 3rd party application integration. The hardware buttons act like the ultimate OK/Cancel button. You can review the transaction address, id, etc on the hardware screen to confirm that you are not getting phished and such. (vs. on the software)