Zcash Thorchain Integration Grant

Many fair points AFAICT.

I really want native swapping ability for the points I mentioned above. But I don’t have any skin in the game for thorchain and can’t speak to, other than what I observe from afar, the thorchain team’s actions.

It’s always best to try to do things the right way, even if if takes longer. And if thorchain needs a minute to restore credibility, zec integration could wait. Or if another native DEX pops up that’s better, zec can go for that.

Glad you brought up your criticisms.

4 Likes

There are 2 other sites for no KYC ZEC exchange:

  1. https://sideshift.ai supports only Shielded ZEC with limited crypto pairs.
  2. https://stealthex.io supports only Transparent ZEC with a longer list of pairs.

However, both require the user going through a centralized party.

5 Likes

I just want to say that Thor Synths will be able to move through the cosmos ecosystem through IBC and there’s also nothing that would prevent them to be issued as ERC20s on Ethereum - it just won’t happen soon.

2 Likes

Thorchain’s standing comment is they won’t enable IBC, yet that may be limited to not using IBC for trading. If they are moved via IBC, you’re no longer trusting the Thorchain multisig yet the multisig of whatever chain you move them to as well, along with the bridge technology in question. So while that’s technically true, that they may use IBC and some other project may issue them as ERC20s, it’s definitely not here now and it’s such a convoluted talking point when you get down to the details, I’d honestly argue it’s not worth mentioning.

As one other note, can we please stop calling Thorchain native swaps? It’s a custodial platform with no on-chain guarantees of execution (solely on their chain which as history has proven, is absolutely not a guarantee worth anything). The term native solely misleads people and has no actual basis, unless you argue it’s native because it’s using ZEC transferred via the ZCash network, in which case every single CEX is native as well because they “natively” support ZCash. The only thing which wouldn’t be a native exchange is Uniswap via renZEC.

EDIT: To clarify, I would call them native swaps if the ZCash network offered any guarantees on accuracy/completion, such as atomic swaps do. Until then, none of the actual trading has any relation to the ZCash network, solely its coin which is held in custody, so it can’t be native.

2 Likes

Does Thorchain support shielded addresses?

@zooko did you ever figure out if the unified address resolved the T to Z transparency issues?

That would resolve this entirely, and should be documented because that old image is always circulating about the T to Z sender / receiver view key relevant content on the receiver side.

1 Like

I can vouch XAI (side shift) is good and works fast, less than 2 minute swaps typically, 5 minutes would be slow.

I recently made a twitter post about this grant, just to see what kind of reaction it gets from the community, seeing as progress has been stagnant for months with back and forth debate.

Lots of people want DEX options for zcash. After reading more in this thread, I’m wondering if someone could elaborate on the pros and cons of thorchain dex, vs zcash being on cosmos IBC. Zcash Foundation is already partnered with Cosmos since September 2020.

Would Cosmos be an easier option?

4 Likes

3 notes on your tweets/post.

  1. I already posted why these aren’t native so I, personally, already dislike these tweets used as an argument. It promotes a false narrative for hype purposes.

  2. For https://twitter.com/_tm3k/status/1448165170304339968 specifically, 250k is a lot of money, when it could kickstart a new DEX on its own (though that has a whole set of feasibility issues and is not my suggestion). Furthermore, if the Thorchain narrative is of superiority and how its a gift to ZCash to even consider it, and how we should pay as much as they want for the glory of their grace, I don’t see how you expect that to go well at all. Thorchain needs projects. Projects benefit from DEXs. Projects especially benefit from what’s the top cross-chain DEX with large amounts of liquidity. They should be seen as partners.

  3. Integrating IBC means fully processing various block headers/signatures from cosmos chains and is a massive change to the ZCash protocol. It also isn’t necessarily a scalable solution. Thorchain integrating ZEC is copying a folder, making ~10 lines of edits, updating documentation, and adding a deployment script for nodes. It’s much easier for Thorchain to add ZEC than for ZCash to add IBC.

As for price, you can run a custom Thorchain network with whatever coins you want. Therefore, 16 GB servers should be plenty for LTC/DOGE/ETH (pick one) + ZEC. A Thorchain network requires 5 nodes (4? assuming 5, but I forget the exact constant) and given the lack of testing for network conditions, that should be fine. The smallest Vultr bare metal, which I believe is the latest guide for Thorchain node setups AND the recommended option for performance, which does exceed those specifications, is $120. $120 * 5 * 4 = $2400. A quarter of the server costs asked for. If you use mainnet node specs, you pay $350 each, and hit $7000. Just by using more modern documentation $3-7.6k has been eliminated.

As for “paying for value”, not for development, which was an argument paid, the original post directly contradicts this. The original post defines this as $200 an hour for development BUT with 608 hours of work (just for development). Saying this would take 608 hours is completely ridiculous. Either the developer has no idea the actual task in front of them OR they postulated the budget with misinformation about brevity in order to justify their amounts. While the amounts may be justifiable by value added, that is not the original explanation for the price.

If we say it takes 8 hours to compile Thorchain once, and then 6 hours to read the ~2k lines of code that makes up the Bitcoin codebase, and then 20 hours to do basic find and replace on it, we’re at 34 hours for initial development. That’s $6,800, not $120,000. I also don’t even mind the rate of $200 an hour despite it being almost 400k USD yearly. This is a limited contract for somewhat specialized work (notably by deployment and proper testing).

Lets say the RPC calls differ, as BTC has changed them around a lot with recent versions. We’d need to fork the BTC Go lib and make a ZEC Go lib, with updated RPC calls and so on. Let’s add another 40 hours of work there, and round to 15k USD, or even 20k USD. We now have development and servers at ~25k (server costs varied wildly. It may be beneficial to run a full testnet node just to minimize differences in management/setup, and I’d be fine watching 5k get paid for that ease).

The Thorchain cost was fixed, making it 35k, which I’ll acknowledge despite the idea that the projects would be working together for mutual benefit meaning this cost shouldn’t exist.

There’s still testing and planning/deployment. I’m not sure what this last category is, actually. It says Thorchain developers would deploy, and part of development/integration is making it ready to deploy. Still, let’s mark up the third category by saying 50 hours of emails, messages, posts, write ups… whatever. General management tasks. At the quoted rate, it’d be +15k.

As for testing, that can be a bitch. Theoretically, it’s swap one way, swap the other, yet you need to ensure it shows up in their statistics correctly. I remember the recent Dash integration, done by a single person from their community pro bono (as it doesn’t take almost 2000 hours to do), had issues along this path. Let’s say complete human testing, beyond automated which is part of development (at least, I assume it is), and the development it requires to fix discovered bugs, takes an additional 200 hours. We’re still only at +30k if we use an average of the two rates (equal amount testing and further development).

In total, this can be summarized as 80k. I didn’t discuss the JS library work nor deployment scripts, but even if you say that takes 100 hours of development, that’s still just 100k in total. Since they have 3 open grants, do we really want to give another which they claim would be 2000 hours of work and have that many open projects with only a grant to maintain the wallet/servers actually complete? They do say they’re bringing on new developers, which I don’t doubt, yet it feels like ZCash is seed funding a new development company entirely without sufficient evidence at this point.

If you start claiming it’s by value added, unlike the original post, it’s a very different discussion. aiyadt does change their explanation on the compensation to being as such later on. I’m not entirely sure what their math is (it jumps from 25k to 9m), yet does anyone here really want to pay 100k to partner with a project which isn’t native despite all of their claims (at least, not anymore native than a CEX), has proven that despite its 30+ participants, it’ll do whatever a few people say (the developers centralizing all pending transfers out to users to their own wallet), and has actively seized user funds (anyone who didn’t fill out a Google form asking for personal information/was arbitrarily judged as malicious) without proving technical competence?

Beyond my overall frustrations, I’d, personally, like to see the cost of this brought down to 50-80k (potentially by removing Thorchain’s fee and by a more detailed developer timeline/server breakdown) and this put on hold over the next few months while Thorchain re-establishes itself as a player in the space worth trusting, which would also potentially give time for ZOMG to undergo reform before deciding on a rather large grant request. I’d also like to see Nighthawk continue their existing grants before even more money is put into such a pending state.

In the end though, this is a far too long dump of all my opinions on a topic I’ve probably already commented too much on. I’m not part of ZOMG and the decision doesn’t lie with me. I also have no where near the reputation in this community as other users do. That said, I do believe I’m quite knowledgeable about Thorchain, and hope I’ve properly laid out the series of counter claims. I hope the best decision is made, even if I’m wrong.

EDIT: I did comment above that if the developers want to run with all coins for ease of their own work in management/setup, I’d understand paying those costs accordingly. If they want to use AWS because they’re experienced with it, I can understand $20k for servers as well. My comments weren’t against forcing developers to work for the absolute minimum (though I believe I was extremely generous with my estimations). My comments were about bloat and ways to remove it to optimize this proposal. That is all. I’m also sorry for how this isn’t my best organized post/my most thought out post. While I stand by what I said in it, it’s also very late and I didn’t bother to revise it for optimal flow.

15 Likes

Thanks @kayabaNerve for detailed arguments. I could not have said it better. While I support the idea of Thorchain integration, this specific proposal is not it.

2 Likes

Wow, thank you so much for this feedback. You would be a good candidate for ZOMG, actually! This is the kind of stream of consciousness posting the community wants to see. I’m starting to agree with you.

1 Like

Speaking of alternatives, I am considering the integration of zec into ICP in a similar way to the bitcoin ICP bridge. It will allow the creation of smart contracts on zcash and therefore native DEX.

This is in early stage of tech design, so no promise…

5 Likes

Great post, thanks for taking the time and I hope to see you posting here more as you bring a valuable perspective.

I agree with your main point that this is too expensive as it is.

But I also know that the Nighthawk team are an important part of the ecosystem, the whole idea of ZOMG was to attract more development teams to work on Zcash.

I’m wondering if there could be some other more long term approach we could have where we fund teams for longer durations, essentially pay them a salary, the team could propose options for what they will work on next and the community vote to shape the direction…

1 Like

What about Atomex?

Thanks! I actually did reconsider if I wanted to participate to that level after my post, yet even though elections were postponed, nominations were not re-opened. It sounds like they may be due to timing/unexpected requirements/pool size/organizational reasons, but until then, I’d like to comment hanh seems great for the job.

As for ICP, while I dislike their corporatism and how problematic it is to run a node, it sounds like they’re another multisig offering who would then be able to offer mass functionality. While I wouldn’t expect them to support as many chains in general, I don’t have any comments against their technical competence. I also would appreciate them as an option, just as I’d appreciate Thorchain as an option (for the right price).

As for Nighthawk being important, I’m not saying otherwise, nor am I trying to say ZOMG shouldn’t support teams in that fashion. I’m commenting the amount of support should be relative to proven track record. Right now, I’d personally say there’s too much track ahead of them.

1 Like

Hi there, PhusionPhil. Thanks for asking.

I could be overlooking something — I haven’t learned that much about how THORChain works, although I do have a partial understanding — but as far as I understand, the best architecture is for THORChain to use transparent addresses so that the public can have continuous visibility into THORChain’s operations (i.e. continuous, real-time Proof-of-Reserves), while users use Shielded Wallets (and — soon — Shielded By Default Wallets!) so that the users get privacy.

I posted about this up-thread:

2 Likes

The difference is that the code is verifiable and could be made immutable (like a eth smart contract). The BTC proposal is to make each canister hold a BTC wallet as well.

If someone implements a DEX, he wouldn’t be able to suddenly change the code to block withdrawals (for example). And he wouldn’t have the contract secret key.

Oh, I do understand that and I much appreciate it. Sorry for not being clear there. The reason I pointed out it’s a multisig is because multisigs are the reason Thorchain is able to act the way they are. There’s a human level. I don’t personally appreciate them, yet given how ICP is a much more expansive ecosystem and anyone participating in the multisig should have much more at risk than they could gain from colluding for ZEC, it should work without the political issues of Thorchain, leaving my note a technicality.

Yeah … I don’t understand why there must be a multisig aspect to the ICP implementation. Why not have the smart contract receive ZEC & BTC and automatically make transactions paying each party? Am I missing something?