Grant Proposal: Zcash Extensible Wallet Interchange Format (ZeWiF)

Hi @ChristopherA. Thanks for the detailed post. We have a meeting tomorrow and will review your request then. We’ll follow up with you afterwards.

1 Like

ZCG met today to review your request and is comfortable proceeding with the Milestone 5 payout, while Milestone 4 remains open pending the ZexCavator v0 release. We’ll look out for your follow-on grant proposal for continued ZeWIF development. Thanks.

5 Likes

Though we’re now in a maintenance/community-update phase, we’ve continued to make ZeWIF updates.

Our Attachments & Best Practices docs moved to the ZeWIF repo, which is more properly the central place for all things ZeWIF (but wasn’t available when we first drafted them). They’ve also undergone some slight revision thanks to some oversight from Wolf:

Attachments: zewif/docs/attachments.md at master · BlockchainCommons/zewif · GitHub
Best Practices: zewif/docs/bestpractices.md at master · BlockchainCommons/zewif · GitHub

Wolf did updates to most of our stack today (complete list at bottom). This included the following ZeWIF related updates:

Upcoming work:

  • Continue integrating PRs from Kris toward getting zmigrate fully functional

If you’ve been wanting to test out ZeWIF, this is the time! If you have things that you think are missing, let us know!

Here’s the complete list of repos/crates that were released today, many of which are integrated with the Envelope/ZeWIF work:

  • Crate updates:
    • bc-rand 0.4.0
    • bc-crypto 0.9.0
    • bc-shamir 0.8.0
    • dcbor 0.19.0
    • bc-tags 0.2.0
    • bc-ur 0.9.0
    • sskr 0.8.0
    • bc-components 0.21.0
    • known-values 0.4.0
    • bc-envelope 0.28.0
    • provenance-mark 0.8.0
    • bc-xid 0.8.0
    • bc-envelope-cli 0.14.0
    • gstp 0.8.0
    • zewif 0.1.0 (unreleased)
    • zewif-zcashd 0.1.0 (unreleased)
    • zmigrate 0.1.0 (unreleased)

(Note that the ZeWIF work has not been released as crates yet, but the most up-to-date work is in the repos linked above.)

2 Likes

ZExCavator v0 Released!

I am pleased to announce that Zingo Labs has finished ZExCavator v0.0.1.

This tool has a minimal set of functionality focused on recovering ZEC from old wallet files.

The engine that ZExCavator is built around is a new implementation of sync, “pepper-sync” that leverages librustzcash primitives like sync prioritization, to provide uniquely fast sync, in many scenarios.

While ZExCavator can already efficiently recover funds in certain cases, we have more work to do to reach Version 1.0.0.

ZExCavator v1 Planned

In particular we need to extend the synchronization algorithm to efficiently handle large numbers of non-standard HD Sapling Keys. This will account for the creative generation of new addresses that was implemented in ZecWallet.

Beyond that necessary enhancement, we also hope to offer ZeWIF integrations to ease data transfer between Zingo Labs wallets and other wallets:

Altogether if we receive funding for a completion grant we’ll:

  • extend pepper-sync and ZExCavator to handle non-standard multi-key sync

  • offer a ZeWIF adapter crate that

  • publish cross-wallet synchronization benchmarks to provide the community with insight into modern sync performance

11 Likes