New Version of Zingo-PC

i tried diffrent recover methodes but nothing works, i thinks its better to wait for the update… what do you think how long it will take for the update with multiple adresses?

This reminds me of a user story that I posted to twitter. I’ll cut and paste it in here because not everyone can see twitter threads any more:

x.com (May 26, 2024)

For the last year, Zcash wallets (Discover the Zcash Ecosystem - Z.Cash) have been doing a great job of eliminating pain points users experience when sending and receiving money and messages. The biggest pain points remaining currently are when users try to backup/restore/migrate.

These current pain points are bad. Very bad. Normal UX problems are “toe stubs”. UX problems that result in (potentially permanent) loss of funds are “leg breaks”. Backup/restore/migration UX always has loss-of-funds at stake.

There are a lot of users currently suffering from leg breaks. They have lost access to their Zcash, they can’t get it back, and in some cases there is no way for them to ever get it back. (Source: private communication with many users, plus a few public posts — see below.)

Here’s a post that Naomi Brockwell just posted to the Zcash Foundation’s forum describing her difficulties with wallet backup/restore/migration: Shifting from Zeclite to Zashi

When reading it, remember that Naomi is in at least the 95th percentile of educated, sophisticated users!

Reading that thread, I thought it was nice that so many Zcash engineers jumped in to help her out. The Zcash community is super skilled, and super helpful!

But I also thought that this process is only going to work for users like Naomi who have time and a willingness to learn that exceeds that of 95% of users.

To eliminate this leg-breaking pain point and make Zcash safe for at least twenty times as many users, we need a backup/restore/migrate process that requires the users to learn as few concepts as possible. Here’s a sketch of a user story for the next 20X users:

Alice installs Wallet A, and it gives her a “backup code” which is small enough for her to screenshot, write on paper, or store in a note in a password manager. Alice saves the “backup code”. She then uses Wallet A for years.

Alice does not learn about any other concepts beyond the “backup code” concept. (In particular, she doesn’t learn about the concepts of “birthday height”, “keys”, “internal keys”, “accounts”, “indexes”, nor any other concepts except the backup code concept.)

Then, years later Alice loses access to her Wallet A. Far from hypothetical, this is the situation that many Zcash users are in today, including Naomi. I predict that the future will be like the past (always a safe prediction), and there will always be users stuck like this.

Then Alice installs Wallet B, feeds it her backup code, and Wallet B restores every single zatoshi that she had in Wallet A. Wallet B cannot depend on Alice providing information about any of those other concepts besides the backup code, because Alice cannot provide that.

That’s it! It’s a simple user story, but it will require a lot of hardcore crypto/protocol engineering and UX work to make it happen. But it is possible, and it will be necessary to expand the Zcash user base beyond the initial 5% of hardcore learners.

5 Likes

As a Zcash user I would expect that with my Seed and Birthday I can get all my funds in every single Zcash App, no matter how my addresses or keys or whatever were created in the past.

3 Likes

It’s easy to wax poetical about the ideal state of things, and honestly it’s kinda useless. Everyone is already on the same page that what you have described is the goal. That doesn’t help solving the issue.

ZecWallet Lite did things differently. (We can dig the reasons for that, but it won’t change the past.) But as I understand, for every other wallet to support importing its seeds, they would need an expensive scan operation with a unknown number of indices. It doesn’t seem reasonable to force every wallet to do this forever because of a bug in an unmaintained wallet. I don’t see other option other than possibly a “This seed was generated in ZecWallet Lite” checkmark when importing or something.

It’s also worth pointing out that this is bound to happen again as long as wallets like YWallet decide to simply not follow the spec.

1 Like

Emphasis mine.

Yeah… clearly you know better than us.

I don’t follow the “spec” because scanning an additional key for change slows synchronization (2x) and/or forces existing users to move their funds.
You can always move away from ywallet if you don’t like it. It’s importing zashi keys into ywallet that is problematic. But I’m sure no one wants to do that.

Regarding Zooko use case, seed phrase + wallet name is enough. There isn’t that much variation. ZWL followed a predated model, we can’t do anything about it. It is like asking bitcoind legacy key management to support seed phrases.

1 Like

Hi, Conrado. I’m sorry if you didn’t find my post helpful. My intention is to help. If there’s something inaccurate or incomplete, or impossible, about this user story, perhaps you could help by telling me what’s missing, or just editing it into a more actionable user story? There may be some nuances to these issues that I don’t understand, but at least aspirationally this story still seems like a worthy goal to me, because making this user story work could fix a very painful user experience that Zcash users are currently having. Here is the story again:

2 Likes

Zasshi already supports the exact same derivation path as ZWL. Were one to import a ZWL seed into zashi, one would get the same default 3 addresses. Reclaiming the subsequently derived addresses (because a: people didnt back up the sapling and taddy keys and b: orchard keys arent exposed and regenerating them in-wallet is the supported method) has always been the longstanding issue, besides not having made a physical backup and now people are locked out. For the former, only Ywallet supports any recovery methods. For the latter, my only idea was to essentially spoof the LWD ip on a LAN. I dont really have those skills, prolly need to finnagle the ssl, but maybe it would open. (There is also eZcash now, I wonder if it could be emoloyed in some way here, Ill have to test out.)

1 Like

The story is perfect. My comment is that everyone is already on the same page. It’s not an issue of what the goal is, but how to get there.

1 Like

I don’t know better; you don’t; it’s not our call as individuals to make. That change was discussed multiple times in arborist calls and whatnot and AFAIK no feedback was given (I am kicking myself for not noticing the performance issue at the time). If you think it’s bad, you can write a ZIP deprecating it. But choosing not to implement it because you don’t like it just leads to ecosystem fragmentation.

1 Like

There was already fragmentation. My implementation predates that ZIP.

To be honest, I don’t understand your logic, but I respect your opinion.

perfect! i recoverd my funds, the i mixed up the adress index with the block high… so that was my problem to recover the funds un yWallet… what a drama

best regards

4 Likes
6 Likes
5 Likes
9 Likes