# July 7, 2017 - Dev update

**URL:** <https://forum.zcashcommunity.com/t/july-7-2017-dev-update/18772>\
**Category:** Weekly Forum Updates\
**Created:** [July 7, 2017, 6:42pm UTC](https://forum.zcashcommunity.com/t/july-7-2017-dev-update/18772 "2017-07-07T18:42:25Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![paige](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/paige/32/31152_2.png) [@paige](https://forum.zcashcommunity.com/u/paige)\
**Post date:** [July 7, 2017, 6:42pm UTC](https://forum.zcashcommunity.com/t/july-7-2017-dev-update/18772/1 "2017-07-07T18:42:25Z")

</div>

**Sapling planning**  
This week started off with another meeting to discuss the [Sapling protocol upgrade](https://github.com/zcash/zcash/projects/7). While last time we focused on a lot of UI considerations that the upgrade would provide, this meeting was focused more on the crypto and proving system.

One of our engineers and a few of the scientists have been studying a new elliptic curve called BLS12-381 which was [introduced in our blog](https://z.cash/blog/new-snark-curve.html) a little while ago. This curve offers improved efficiency while also increasing the security margins. We’ve decided to go ahead and give the green light on using this new curve.

We also discussed the Groth16 proving system which would increase proving speed by requiring less components in the construction and resulting in a smaller proof size overall. We’re a little more hesitant to give this a green light and want to take the time first for writing a proof showing it can’t be broken. That said, we’re enthusiastic about the enhancements it allows such as cheap and indistinguishable pay-to-verification-key payments ([#2425](https://github.com/zcash/zcash/issues/2425)). This proving system would also enable a simpler and safer multi-party computation ceremony process ([#2247](https://github.com/zcash/zcash/issues/2247)).

Next steps are benchmarking for time and memory consumption.

The agenda and notes from this meeting are in the Zcash github [wiki](https://github.com/zcash/zcash/wiki/Sapling-Planning#meeting-2017-07-03). We encourage anyone interested in Sapling upgrade to join us in our upcoming meetings by reaching out to us for an invite!

**Release prep**  
Time this week was also spent on preparing for the upcoming 1.0.11 CI deployment and release milestones which are being organized in the [1.0.11 release project](https://github.com/zcash/zcash/projects/16) on Github. You can see which issues were nominated to include in the upcoming milestones and out of those, which ones were marked as accepted, nice-to-have and rejected. Next week will see the [1.0.11 CI milestone](https://github.com/zcash/zcash/milestone/57) in preparation for the subsequent week’s [1.0.11 release milestone](https://github.com/zcash/zcash/milestone/58).

**XCAT, Beswick, Documentation**  
Progress was made on various other projects including work on an [XCAT](https://github.com/zcash/zcash/projects/4) proof of concept for Ethereum. Also, further design and improvement discussions for [Beswick](https://github.com/zcash/zcash/projects/15) and work on more user friendly documentation via Readthedocs progressed.

**Next week’s update**  
Heads up: I’ll be traveling late next weekend to the other side of the world so might end up having to postpone the dev update again or make it shorter than normal.

---

<div class="post-metadata">

**Author:** ![anon47418038](https://avatars.discourse-cdn.com/v4/letter/a/258eb7/32.png) [@anon47418038](https://forum.zcashcommunity.com/u/anon47418038)\
**Post date:** [July 7, 2017, 8:47pm UTC](https://forum.zcashcommunity.com/t/july-7-2017-dev-update/18772/2 "2017-07-07T20:47:55Z")

</div>

I am so looking forward to speed improvements in Sapling!  
My only big news this last week is that I finally got around to updating my Windows port to track 1.0.10-1, and released a new version at [https://zcash4win.com](https://zcash4win.com) incorporating it

---

<div class="post-metadata">

**Author:** ![Voluntary](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/voluntary/32/4343_2.png) [@Voluntary](https://forum.zcashcommunity.com/u/Voluntary)\
**Post date:** [July 7, 2017, 9:46pm UTC](https://forum.zcashcommunity.com/t/july-7-2017-dev-update/18772/3 "2017-07-07T21:46:02Z")

</div>

For the simplest, one-input-one-output type of protected transaction, how many bytes are needed for these new Groth16 proofs?

---

<div class="post-metadata">

**Author:** ![daira](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/daira/32/43253_2.png) [@daira](https://forum.zcashcommunity.com/u/daira)\
**Post date:** [July 10, 2017, 1:55pm UTC](https://forum.zcashcommunity.com/t/july-7-2017-dev-update/18772/4 "2017-07-10T13:55:05Z")

</div>

The proof size isn’t dependent on the circuit for either our current proving system, or Groth16. Assuming a small tweak to reduce overhead, the proof sizes are:

- 288 bytes for BCTV14 with BN-254 (our current proving system and curve; this excludes 8 bytes of encoding overhead);
- 432 bytes for BCTV14 with BLS12-381;
- 128 bytes for Groth16 with BN-254;
- 192 bytes for Groth16 with BLS12-381 (the most likely choice for Sapling).

Note that the majority of the size of a JoinSplit description is taken up by fields other than the proof.

---

<div class="post-metadata">

**Author:** ![daira](https://sea2.discourse-cdn.com/zcash/user_avatar/forum.zcashcommunity.com/daira/32/43253_2.png) [@daira](https://forum.zcashcommunity.com/u/daira)\
**Post date:** [July 10, 2017, 2:12pm UTC](https://forum.zcashcommunity.com/t/july-7-2017-dev-update/18772/5 "2017-07-10T14:12:41Z")

</div>

See [Decide whether to use Groth16 or PHGR13/BCTV14 for Sapling · Issue #2465 · zcash/zcash · GitHub](https://github.com/zcash/zcash/issues/2465) for more detail; that’s the ticket we’ll be updating with performance information for Groth16.
