Shielded Support for Ledger Hardware Wallets (NanoS+, NanoX)

Based on this case study, I’ll propose that all grant proposals explicitly shall document external dependency risks to completion! This entire +2 years of punching in the dark to attempt to get milestones to deliver could have been avoided if the original grant was rejected due to the known list of external dependencies (from Ledger) out of the grantee’s (Zondax) control.

4 Likes

The template for the proposals already includes a section about external dependencies.

When it comes to the support for hardware wallets, I think the issue is not about that.

  1. Zondax has a long experience with delivering apps for Ledger. They know well what to expect.
  2. Trezor also has difficulties and it’s a 100% inhouse development

In my opinion, the reason is simple. Projects underestimate the difficulty of working with shielded Zcash. The more experience they have with other coins, the more they assume it is going to be transferrable.

Well, no. Shielded Zcash is the Cocaine Bear. If you don’t respect him, he will shred you to bits.

23 Likes

What are ideas to make working with shielded Zcash easier?

I’ve heard of the difficulty from many people, and it seems like making it easier to work with would be the fastest way to accelerate integrations.

4 Likes

Congratulations @hanh !

I hope we can see your work passing throught the ledger gates! :pray:

6 Likes

The submission can be tracked here.

6 Likes

@hanh just to confirm, this app will NOT fit onto a ledger nano S? Just asking if i have to upgrade or not

1 Like

It will NOT fit in a Nano S. Orchard is way too complex.

5 Likes

Making the impossible happen @hanh ? :slight_smile:

8 Likes

NanoS supports Transparent and Sapling.

I barely managed to make it fit. Less than 100 bytes of RAM left and that’s after manually optimizing the code size by looking at the generated assembly code…

We need testers! If you have a NanoS, or S+ and are proficient with using the command line, you can help by using YWallet 1.4.0 & Ledger.

16 Likes

I tested it tonight on an old NanoS and it worked great!

Here’s a fully shielded Sapling transaction sent from a NanoS:

13 Likes

Thanks!

One cool feature is that transactions aren’t limited in size even on the Nano S.
For example, this one has 6 shielded inputs and 5 shielded outputs.

It is because the tx builder & signer, are streaming.

To my knowledge, that is a first for any wallet/coin.

https://zcashblockexplorer.com/transactions/47bc10c6434838dcd013bf80a0d3f27dc8670c64e4c58400aa1a1bf07c947d06

17 Likes

Just tested this with 1.4.0 and the v1.0.1 zcash-ledger app.

Worked incredibly, really appreciate your work on this!

here’s my versions:

My only feedback is that while signing, the ledger screen flickered a few times? I wasn’t sure if that was intended, but either way it works.

Thanks again!

2 Likes

Screenshot 2023-05-26 at 8.25.37 PM

Ledger Nano S+ clear edition if that matters.

1 Like

Thanks, the app shows different status messages such as processing z-out, etc. The screen may flicker because some of these states don’t last long.

3 Likes

Does anyone have an ear into ledger HQ about this? the activity in the airtable link seems pretty stagnant?

1 Like

Will this be working on a nano X any time soon?

Will buy S+ and test. Seems cool. Good work

@Dodger please share the status of where this stands.

1 Like

@pkr - ZCG has been in touch with Ledger. There will be a detailed status update in our 09/18 meeting minutes, which will be published to the forum early next week.

7 Likes

Thank you @aquietinvestor for the quick reply. Looking forward.

1 Like