input-output-hk / nami

Nami Wallet is a browser based wallet extension to interact with the Cardano blockchain. Support requests: https://iohk.zendesk.com/hc/en-us/requests/new
https://namiwallet.io
Apache License 2.0
374 stars 168 forks source link

[Feature request] Support for BitBox02 hardware wallet #451

Open eddex opened 2 years ago

eddex commented 2 years ago

Nami supports Ledger and Trezor hardware wallets, which is great. But there is a third player in the hardware wallet game that may be a little less known, but of equal significance as the other two.

So far Adalite is the only Cardano wallet that supports BitBox02 hardware wallets. Unfortunately Adalite doesn't support Cardano dApps, so it can only be used to send funds to other wallets and for staking. The creators of Adalite are not going to implement dApp support. (see Adalite issue #1280).

It would be great if Nami would be the first Cardano wallet that supports BitBox02 hardware wallets for dApps!

eddex commented 2 years ago

started working on this here: https://github.com/eddex/nami-wallet/tree/feat/bitbox02-hw-wallet

alessandrokonrad commented 2 years ago

Hey, that's cool. You think you can get a full PR done? I heared of BitBox before, but I'm not very familiar with it. Also I don't have one, so I can't really test it. Does it already support plutus functionality?

eddex commented 2 years ago

You think you can get a full PR done?

That's my goal. 😄

Does it already support plutus functionality?

Is there a difference in signing a simple tx compared to a SC tx? Or what do you mean by "plutus functionality"?

alessandrokonrad commented 2 years ago

Is there a difference in signing a simple tx compared to a SC tx? Or what do you mean by "plutus functionality"?

Yeah, with plutus functionality I mean having additional information in the tx, like datum, redeemer, the plutus script itself etc. Ledger and Trezor can't handle it yet for example.

eddex commented 2 years ago

Is there a difference in signing a simple tx compared to a SC tx? Or what do you mean by "plutus functionality"?

Yeah, with plutus functionality I mean having additional information in the tx, like datum, redeemer, the plutus script itself etc. Ledger and Trezor can't handle it yet for example.

Have to check that. But I'd assume not. Someone from @digitalbitbox can surely answer this.

eddex commented 2 years ago

It's not as straight forward to integrate as I expected because the flow of connecting a BitBox02 wallet is a bit different than Ledger or Trezor. I haven't been able to get it working yet. Everything I've done so far is in my branch.