Do you support deprecating Sprout?

I support deprecation, but there needs to be a way for them to withdraw ZEC from the Sprout pool for those not paying attention to their ZEC for some reason.

2 Likes

Continuing to maintain the attack surface of old shielded protocols is absolutely not tenable in a system as complex as Zcash. It never has been, and I’ve been stating that very clearly and publically since at least April 2017. In particular, I said then:

I know the particular time period is not the main point you were trying to make, but in my opinion, two years [from Sapling activation, which was on October 29, 2018] is far too long to incur the significant security, engineering, and support costs of both circuits being enabled.

I stand by that: we should already have removed Sprout before the end of 2020.

8 Likes

The hottest topic in a telegram Zcash-groups right now is questions about how to retrieve coins from old wallets. For example, one person has coins stuck in Sprout in Zcash4Win wallet. And he only has Wallet.dat. Do we have simple step-by-step instructions for such people?

1 Like

Last month (Nov), quite a few actually

1 Like

:grimacing:

ISTR that Zcash4win was basically a Windows GUI wrapper around zcashd, so he may be able to import the wallet.dat into zcashd.

See also these instructions: Help regaining access to funds from Zepio - #38 by Shawn

There have certainly been wallets that a casual user could install on Windows and Mac. They may have been EOL’d before you joined ECC, tho…

2 Likes

Unless the wallet.dat were encrypted for some reason, any associated keys should be able to be retrieved from it with a text editor, import to Ywallet.

2 Likes

Wait, wallet.dat files have public/private keypairs in plaintext? I thought they were in binary and required a tool to extract?

Or are you saying Ywallet can read the binary?

1 Like

Assuming something like this, which btw is super neat.

3 Likes

Hmm yeah I must have thinking about something else. Oddly enough, the seed (if it has one) is visable. I remember this was kind of a more common thing a few years back but not so much anymore.

If ZIP 2003 is accepted, there will be plenty of time available to extract keys from wallet.dats.

(This thread actually has the first concrete case I’ve heard in several years of anyone still having Sprout funds in a wallet.dat.)

Ledger is not relevant here; apart from prototypes, it only ever supported transparent Zcash.

4 Likes

I support deprecating V4 transactions.

2 Likes

maybe i over dramatized it,
but there has to be a way to retrieve the coins later

A cryptocurrency project should never, ever, take money away from people.

I firmly oppose any proposal that makes someone’s money unspendable.

Sprout transactions must not be disabled until there is a safe path for sprout holders to redeem their funds or Zcash loses all credibility as safe money. The size of the pool does not matter.

Disabling people’s money sets a dangerous precedent forever.

Is a requirement of holding Zcash for users to actively read this forum, or else lose access to their funds? If so a LOUD warning should be in every wallet application: “If you hold ZEC without reading the Zcash forum, you may lose access to your funds in the future due to shifts in community sentiment.”

We don’t have that warning because it’s assumed that a ZEC lasts forever, like a BTC. No shift in community sentiment can suddenly take your money away. Nobody can disable your money.

There are many reasons that an individual might be away from a computer for years, including but not limited to sickness or serving jail time. If someone dies and their estate discovers ZEC years later, the estate should be able to recover it. There are many examples.

Do not freeze people’s assets. A safe path must exist for future redemption if v4 transactions are ever disabled. Otherwise you set a precedent, opening the door to all sorts of global entities demanding that the core team freezes other ZEC assets in the future.

3 Likes

It is my understanding a path still exists.

I sympathize with this sentiment however I lean more towards moving forward with the projects needs, otherwise we will have the Bitcoin problem. Perhaps a better way for coin holders who have access to their coins should be able to vote/signal in some way?

How about at least one tx a year to prove ownership? (Im not sure) What is clear to me is the low number of sprout tx’s this year compared to other pools.

1 Like

What about the idea of setting pool deadlines in general? If a new pool is created, it has X amount of time before its deprecated and must be moved to next generations pool. This way its up front and fair.

2 Likes

If at the time of purchase a user understands that their ZEC can expire and become unusable, they know the risk.

My understanding is that Sprout users did not know at the time of purchase that one day, Zcash’s developers may disable their funds.

That’s a real legal liability for anyone who releases this change: you’re causing a financial loss, you now have victims.

I’m relatively new to this discussion so perhaps I missed the path forward for Sprout users to reclaim their assets? I saw a few suggestions but not much consensus on the need to keep the implied promise of a blockchain, that money cannot expire.

October 18, 2016: Zcash Evolution - Electric Coin Company (emphasis added):

Upgrade Strategy

[…]
At some point, a proposed upgrade may not be so clearly desired by all participants. Even in this scenario, a proposed upgrade may still provide benefits that outweight the drawbacks (e.g. confusion caused by diverging blockchains). If that’s the case, we may still advocate for the upgrade and release software for it. Or, we may decide the risk of a blockchain divergence outweighs the benefit.
[…]

Potentially Surprising Upgrades

Given that we plan to propose upgrades that will deprecate older protocol implementations, it’s important to let people know what kinds of upgrades we plan well in advance, in order to set expectations appropriately. […]

Counterfeit Detection

Any currency with strong privacy carries a risk of undetected counterfeiting [1]. For any security system, a crucial complement to prevention is detection. We’ve started sketching out several potential protocol upgrades for counterfeit detection. These will allow all users to potentially detect, and in some cases to limit, counterfeiting due to security breakthroughs.

Some of the counterfeit detection schemes we’ve considered rely on expiring old, abandoned funds (i.e. users might need to take action to ensure that their dormant funds are not flagged as expired).

10 Likes

Hey, I understand the need for the deprecation. It will be a huge burden to continue with this protocol, and it could harm and make Zcash more prone to failure. It would be interesting to make it clear that if someone complains and claims the trapped coins, an effort will be made to help recover what was trapped. If no one ever claims the coins, then leave them locked until someone asks for help to unlock them.

I support discontinuing the protocol. I want what’s best for Zcash, and I believe we should avoid any risks that we already know could compromise the project in the future. However, it’s important to have a well-defined plan B in case people wish to recover inaccessible funds.

This way, no initial effort would be required, and there would be no compromise to Zcash’s security. I believe that, in most cases, no one will claim these inaccessible funds—either because they lost their private keys or are no longer with us. Still, if someone eventually wishes to recover them, the possibility would exist.

This approach would bring more peace of mind, removing the fear of similar situations happening in the future, while reminding everyone to stay updated during protocol changes to ensure continued access to their funds. And, if funds do temporarily become inaccessible, there will still be a recovery solution available in the future.

Can you prove that every Sprout user read that document?

I support deprecating Sprout transactions if a safe path to reclaiming funds exists, but not until then.