Technical AMA w/ Zcash core devs Feb 24, 2017 noon PST

We're hosting an AMA with the core developers Friday, February 24th at 12:00 PST/15:00 EST/20:00 UTC. Devs will be online taking questions for 2 hours.

This will be the thread which the developers will be taking and responding to your questions - please keep questions focused on technical topics.

We're really excited about the recent release of our near future priorities list, so we would particularly love to answer any questions you have about the plans in that announcement!

We hope you can join us!

Edit: This AMA is now over. Thanks to all who participated! If you want to continue discussion on any of the questions raised by the community or answers given by the team, please use the discourse function to reply as a linked topic <-- click on link icon in particular post and select "New Topic".

You can also read our AMA from Dec '16.

7 Likes

I've opened this thread so folks can start posting questions now. We'll start answering at the top of the hour.

2 Likes

Can you please describe the rollout process for a new release? For example when release 1.0.6 was recently deployed was it first put on some central infrastructure servers and then how is it rolled out to all of the network nodes? If there are any database changes required does the new release automatically update the old database to accommodate the changes?

2 Likes

I know that zcash4mac and zcash4win are out there now at 1.0.4. I'm using both of them. Do you provide 3rd parties with some technical guidance to make sure that their software is compatible and is there any problem if they don't upgrade to the latest core release and here again I'm thinking of 1.0.6 as the latest example.

2 Likes

After testing, mainnet.z.cash is manually updated with the new release. That's the only node we run; other nodes have to update independently.

To upgrade, just shut down the node, build the new version or upgrade it using your package manager (e.g. sudo apt-get install --upgrade zcash), and restart it. The wallet format normally does not change between releases. If there were an incompatible database format change, we'd communicate that in the release blog post.

2 Likes

Different releases can normally interoperate just fine on the same network. The exception would be if there is a hard fork or a security issue requiring an upgrade, but in the case of a planned hard fork we'd always allow plenty of time for nodes to upgrade. We do communicate with @anon47418038 about any technical issues in updating their releases.

1 Like

@edstewbob

Currently, our team only supports 64-bit Linux, and so any questions about Windows/Mac compatibility and testing would be better answered by the developer(s) of zcash4win/zcash4mac. (ping @anon47418038?) I'm interested in collaborating closer with unofficial projects so that they receive more scrutiny, but that's not a goal for our team at this time.

Right now, you should use unofficial ports at your own risk!

1 Like

Do you have a way to determine which nodes are at what release levels?

1 Like

Do the devs have any guidance on what sort of security practices users should look for in third-party apps leveraging Zcash?

1 Like

We do need to provide more technical documentation to help third parties build their software. For example, developers familiar with Bitcoin may want to parse raw transactions and blocks and they need to know the exact differences as represented on the wire.

2 Likes

Well, I mean using the software that the Zcash company provides is also at your own risk. The company doesn't offer any money-back guarantees or anything.

One thing that I really love about the Zcash community is how many independent Zcash wallets have already sprung up.

Our little company doesn't have the resources and personpower to do security audits of all of them, but we also don't have the resources to write a GUI wallet of our own while simultaneously maintaining and upgrading the core protocol, so I'm really glad that those third-party wallet makers are doing their work.

3 Likes

you said that along with the zcash xcat integration there would be ethereum support at your near future list. so can we use the smart contracts with the zcash? do z adresses include this feature? could you give a date of proper working z adresses version update?

1 Like

"The Sapling Roadmap" doesn't include "Ethereum Support" per se. We're prioritizing Cross-Chain Atomic Transactions (XCAT) first, instead of other flavors of Ethereum integration, because XCAT can be implemented and deployed sooner (i.e. months instead of years), because it is simpler and easier for us to reason about the security properties, and because it will enable Zcash​:left_right_arrow:Bitcoin integration as well Zcash​:left_right_arrow:Ethereum integration.

I'll try to give a time estimate, but I need you to explain in more detail what kind of functionality you're asking about, first.

1 Like

No, honestly, I don't. It's a difficult problem that people face: deciding what software and what services to trust. I don't have any answers.

2 Likes

could you give a date of proper working z adresses version update?

Z addresses and shielded transactions have been working properly since launch. Or did I misunderstand your question and you mean shielded transactions working with ethereum? Thanks.

  1. Zooko discusses a possible "accounting period" to verify monetary supply at https://forum.zcashcommunity.com/t/technical-ama-w-zcash-core-devs-dec-22nd-noon-pst/12950/50. Is this (or something similar) still planned, and if so where does it fit into the development roadmap?

  2. What kinds of techical & user-facing tooling / services do you see as most essential in the short-to-mid-term with regards to the high-level goal of making Zcash "the premier platform for commerce — secure, borderless, and available equally to every person on our planet" ( https://z.cash/blog/the-near-future-of-zcash.html)?

In fact, both of them. I understood that transactions working with ethereum, thanks. I have observed that it has not been used by the majority for the possibility of error when using address Z. The spread of Z address usage will increase the value of ZCASH.

1 Like

On question 1, we haven't decided to do this yet. The design space is quite large and we need to consider carefully potential disadvantages, such as the effect on cold storage of funds, and privacy implications.

1 Like