Holy moly - sounds great
Important Update on Potential Binance Delisting
Last week, I had a call with Binance about the four solutions we proposed as alternatives to creating a new “exchange-only” transparent address type. Unfortunately, Binance has decided to reject all of these alternatives. They cited practical difficulties in implementing policies like the Required Return Address and Viewing Key Submission and also have concerns about burning customer funds. The Payment Disclosures proposal was also rejected because it would require Binance to accept funds from a shielded address. Hanh’s Payment URI idea was originally met with interest; however, it was ultimately dismissed because it does not fully prevent transfers from shielded addresses.
The only available course of action is to implement the “exchange-only” address type. Failing to do so will result in ZEC being delisted from the Binance exchange. Binance is giving us until February 29, 2024 to comply.
Compliance Categories & Timing
Binance has categorized privacy coins into three groups based on their willingness to comply with implementing an “exchange only” address type.
- Immediate Risk of Delisting: Coins like Monero, which has already stated it will not comply, will likely be delisted next month.
- Under review: Projects like Zcash, that are actively seeking compliance solutions, but may face community or resource challenges, have been given until the end of February to comply.
- Compliant or Actively Working Towards Compliance: Coins such as Firo, which have adopted or are in the process of adopting the new address type, are not at risk of delisting.
The Binance representative stated that their stance on privacy coins is in response to increased regulatory pressure, including MiCA, recent initiatives from US regulators, and compliance to the settlement with the US Department of Justice.
Next Steps
The potential delisting of Zcash by Binance is a significant issue that requires serious consideration. A delisting carries the risk of limiting the accessibility of Zcash, potentially slowing user adoption and adversely impacting the price of ZEC. In addition, given Binance’s role as a major liquidity provider to numerous centralized and decentralized exchanges, the delisting could have broader downstream implications. There is also the possibility of a ripple effect where other exchanges consider similar actions in the future. It is crucial that we understand and prepare for the consequences of not adhering to their request.
Regardless of whether or not we decide to comply with Binance, we need a strategic plan for how to proceed. In the coming days, I will initiate discussions with ECC and ZF to thoroughly evaluate the consequences of a potential delisting and develop a path forward. Additionally, I am considering organizing a Twitter Spaces event in early January. This will offer the community a venue outside the forum to discuss this issue and share their perspectives.
Don’t waste time implementing this address type. It is so easy to circumvent this restriction by just sending to a t-address first that regulators will undoubtedly soon require Binance to do extensive KYC or delist Zcash.
The regulators got Binance in a particularly tight grip because of the settlement, so it is not certain at all that it will spread to other exchanges without a legal battle.
What Zcash needs to do in response is to create secure bridges to other chains or atomic swap protocols, and also prioritize censorship-resistance by choosing PoS protocol with many validators and also integrating network privacy for wallets and nodes.
Even if you could meet those demands (which basically amounts to making Zcash a permissioned payment system), ALL Zcash still passes through shielded addresses before they can be spent per the shielded coinbase rule.
Embrace the horror, nothing can get done in time & doubtful any solution would be acceptable anyway.
Hope it’s already priced in & stick to principles.
I think it’s a good idea to assume that the stance Binance is taking towards “privacy coins” may make it’s way to all regulated exchanges eventually. So whatever decision we make re: Binance now, it’s probably best to assume that we are making it for all the other regulated exchanges Zcash trades on as well.
Another way to put it, we should make this decision re: Binance as if Coinbase, Gemini, and all the others are making the same requests.
Thank you for this update, Jason.
A very important topic!
I’m also pessimistic and think Binance is going to delist Zcash anyway. The times just don’t give for a technical implementation.
I’d like to see ECC’s opinion and next actions, now with Josh’s vision.
I’ll be keeping an eye on the Twitter Space.
I thought for a long time, what is the point of ‘exchange only’ addresses? What is the difference between an ‘exchange only’ address and a transparent address? Basically they want a type of address that cannot directly interact with the shielded pools do I understand correctly?
If you want a new address type that makes sending funds from shielded very hard, it could be done without modifying the protocol by just defining a new encoding of a regular t-address.
Basically, a wallet could take the same t-addr as before but represent it as this new t-addr (let’s call it t2).
t and t2 can be converted back and forth as this is just a different encoding prefix: taddr ↔ t2addr
From Binance perspective, the code change is minimal. They need to add this conversion in their address generation.
Wallets that want to send to Binance also need to convert. At the same time, they must restrict the source of the funds to transparent. If a wallet doesn’t do that, these t2 addresses will look incorrect.
The only way to circumvent these t2 address is to convert from t2 to t manually without using a supported wallet, directly for binary, and then use the resulting taddr. I think that requires knowledge that 99.999% of the users don’t have. It cannot be done by accident.
All in all, it is just a few days of work. The encoding/decoding is already in librustzcash
.
Thanks,
–h
This sounds like a pretty reasonable solution to me. It’s not protocol-enforced, but providing a wallet-based solution like this would be workable and as you say it’s not a huge amount of work, although it does present some UX challenges because the wallet would need to inform the user that they have to de-shield funds before being able to make such a transaction or else would need to create a chain of transparent transactions, one to de-shield the funds and then the next to send to the exchange’s t2-addr.
That doesn’t seem too bad, because both the de-shielding transaction and the transaction to the t2-addr could be created and submitted to the chain at once; block construction will select whole such “transaction chains” from the mempool at once.
It’s a bit silly, but if all that Binance actually wants is for funds coming to them to be spent only from transparent UTXOs, this is the least-invasive and most readily implementable solution I’ve seen suggested. Also, it doesn’t actually require a significant compromise of the user’s privacy; the deshielding t-addr can be fresh each time.
That part is not needed. The wallet can just show that the spendable balance for a t2addr (= balance in t funds). The user can manually deshield. The required part is that Binance doesn’t receive funds from shielded funds. It would be convenient to auto deshield, but it is not necessary.
Hate to say I told you so… But here it is. (I mean the narrative “you” btw, not Jason specifically)
Zcash needs to future proof itself against KYC-AML compliance rules, by creating a Super Transparent address type.
Case Closed.
My original teasing of the “Super Transparent” address type that should be available to all Zcashers.
It inherits all Transparent features, plus it is restricted to only be able to interact with only S-T or T address features.
I wish this was sarcasm, but sadly it is not.
Binance Delisting Zcash is an existential threat, unfortunately we haven’t got the luxury (different from Monero for example) of being able to show them our middle fingers.
You can see my remarks weeks ago, which already anticipated and accounted for this reality.
Has there been any mention of GDPR compliance in these discussions about these super transparent addresses?
If that’s the case, Zcash is a sad joke. Thankfully I do not believe it is the case at all.
Zcash has to be anti-fragile. It won’t ever be if we bow at centralized exchanges ridiculous requests. Our tech is already compatible with compliance, they just have to use it. If they don’t then be it.
I think it’s not good to make Zcash confusing for new users. Also, Coinmarketcap, which is connected to Binance, confuses people by telling them about Zcash “token contract address” on Binance Chain. I’ve met people who wanted a “private” Zcash, but when I suggested using well-known Zcash wallets, they actually had BEP20 tokens on Binance Chain.
Binance is not a SAFU partner for Zcash.
We need to get rid of t-addrs and stop being so fearful.
Zcash already has bad reputation (unfairly) of being a “fed coin with a back door” or non-private privacy coin. Yeilding to Binance here and making an exchange only address is not only terrible optics for the narrative but will hamper shieled pool adoption severely.
The industry as a whole is moving away for CEXes (thanks to last cycles implosions) and I think we need to dig our heels in here