Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add hardware wallet support #29

Closed
rmeissner opened this issue Jun 25, 2020 · 15 comments
Closed

Add hardware wallet support #29

rmeissner opened this issue Jun 25, 2020 · 15 comments

Comments

@rmeissner
Copy link
Member

rmeissner commented Jun 25, 2020

It would be nice if I could use the safe-cli with my ledger or trezor

--- Edit By Uxío ---

This task will be replaced by:

@fubuloubu
Copy link

Probably not possible until ethereum/web3.py#847 is added

@Uxio0
Copy link
Member

Uxio0 commented Nov 9, 2020

Probably not possible until ethereum/web3.py#847 is added

It's not completely necessary, but it would be awesome if they support it, then it would be really easy to add support

@adam-hurwitz
Copy link

Does this mean that if a user initiates a send transaction using the CLI, they will not be able to sign the transaction with a hardware wallet?

Or can a user still sign with a hardware wallet, it's just the CLI won't provide any feedback on the signature, thus requiring the user to check on Etherscan?

@Uxio0
Copy link
Member

Uxio0 commented May 7, 2021

Does this mean that if a user initiates a send transaction using the CLI, they will not be able to sign the transaction with a hardware wallet?

That's right, Cli does not have integration with hardware wallets, but if you use --tx-service in a network supported (mainnet or rinkeby) you will be able to sign the transaction with a hardware wallet in the web ui.

@adam-hurwitz
Copy link

adam-hurwitz commented May 7, 2021

Thank you @Uxio0! To ensure I understand, when initiating a send transaction, the --tx-service parameter must provide either mainnet or rinkeby.

Taking the demo transaction as an example, in order to sign the tx with a hardware wallet in production, the command would look like this:

send_ether 0x5aC255889882aCd3da2aA939679E3f3d4cea221e 123 --tx-service mainnet

Then, a browser will launch with a Web UI or does the user need to run the Safe React UI in order to interact with the command?

@Uxio0
Copy link
Member

Uxio0 commented May 10, 2021

You are welcome! You got it right until this point:

Then, a browser will launch with a Web UI or does the user need to run the Safe React UI in order to interact with the command

You need to open the browser yourself and go to the Safe React UI.

One important note: You need at least one valid owner (key) imported on the Safe-cli, as Web UI only shows transactions with at least one signature.

@adam-hurwitz
Copy link

adam-hurwitz commented May 10, 2021

You need at least one valid owner (key) imported on the Safe-cli

Does this mean if a user has all hardware wallets for signing it is currently impossible to confirm transactions with the CLI tool?

What is the best approach for an all hardware wallet configuration recovery?

  • Download a past release, presuming the smart contracts are still deployed.
  • If the smart contracts are not deployed, deploying GnosisSafe.sol and calling the methods to sign each hardware wallet directly with an IDE like Remix.

@Uxio0
Copy link
Member

Uxio0 commented May 11, 2021

Does this mean if a user has all hardware wallets for signing it is currently impossible to confirm transactions with the CLI tool?

That's right

What is the best approach for an all hardware wallet configuration recovery?

You can just use the Safe React UI https://gnosis-safe.io/

@adam-hurwitz
Copy link

It's my fault for not specifying. I'm looking to test under the worst-case scenario where Gnosis is no longer able to host https://gnosis-safe.io.

Therefore, I'm looking to know if the Gnosis Safe React UI downloaded from a past release on GitHub will work with the smart contracts previously deployed on Ethereum mainnet?

Then, the user can recover with an all hardware wallet configuration as you mention above.

@Uxio0
Copy link
Member

Uxio0 commented May 11, 2021

Therefore, I'm looking to know if the Gnosis Safe React UI downloaded from a past release on GitHub will work with the smart contracts previously deployed on Ethereum mainnet?

Yes, and you also have the desktop apps: https://github.com/gnosis/safe-react/releases/tag/v3.2.1

@RomanHiden
Copy link

I must say this is what I was looking for. besides this would be nice to have integration with eth-brownie framework. it already connects with clef to hw wallet. I just need safe operations available

@danicuki
Copy link

danicuki commented Jun 2, 2022

👍

@chrdevmar
Copy link

You are welcome! You got it right until this point:

Then, a browser will launch with a Web UI or does the user need to run the Safe React UI in order to interact with the command

You need to open the browser yourself and go to the Safe React UI.

One important note: You need at least one valid owner (key) imported on the Safe-cli, as Web UI only shows transactions with at least one signature.

Does the web UI only show pending transactions with signatures from one of the owners or can it be signed by any key? I ask this because I would like to generate a transaction from the CLI but the owner addresses are all hardware wallets. If I generate a message via the cli with some random private key, will it show in the web UI and have 0/n confirmations?

@Uxio0
Copy link
Member

Uxio0 commented Aug 29, 2023

Does the web UI only show pending transactions with signatures from one of the owners or can it be signed by any key? I ask this because I would like to generate a transaction from the CLI but the owner addresses are all hardware wallets. If I generate a message via the cli with some random private key, will it show in the web UI and have 0/n confirmations?

For transactions to show in the UI they need to be signed by at least one owner or delegate

@Uxio0
Copy link
Member

Uxio0 commented Oct 3, 2023

Superseded by #269 and #270

@Uxio0 Uxio0 closed this as completed Oct 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants