Grant Proposal: Zcash Extensible Wallet Interchange Format (ZeWiF)

Here’s the report-out on the updated Milestone #3.

Zmigrate & ZeWIF Crates. The ZeWIF (in-memory representation) and Zmigrate (CLI utility) crates have been released. They currently support full parsing of zcashd files (but without decryption of encrypted data) and Zingo files. Additional details are in the Zmigrate repo.

ZeWIF: GitHub - BlockchainCommons/zewif: ZeWIF: The Zcash Wallet Interchange Format
Zmigrate: GitHub - BlockchainCommons/zmigrate: ZCash wallet migration framework

These are fully accessible by developers who want to start experimenting with importing from their wallet to ZeWIF or exporting from ZeWIF to their wallet. We extend to continue advancing them over the course of April and would love your feedback on what else is needed.

ZCashd Test Suite. The Zcashd test suite was the core that we built ZeWIF from. The adapter can now be found in zewif-zcashd.

ZeWIF-Zcashd: GitHub - BlockchainCommons/zewif-zcashd: ZeWIF adapter for zcashd wallets

Zecwallet Test Suite. Zingo Labs created the first third-party test of our work with a Zecwallet conversion. We’re still coordinating the integration, but the full work & testing can be found in a PR.

ZeWIF-ZecWallet PR: Add ZWL support by dorianvp · Pull Request #3 · BlockchainCommons/zmigrate · GitHub

ZeWIF Documentation. The files in the repos have all been extensively documented to detail the ZeWIF API and data structures and offer usage examples. These docs are currently available as parts of all the src files and will be extracted into Cargo docs upon release of the crates.

Best Practices. The first draft of the best-practices for migration doc has been released. Any comments or thoughts on additional best practices are welcome. (There are also a few holes to fill as the whole specification settles out over the course of April.)

Best Practices: zmigrate/docs/bestpractices.md at master · BlockchainCommons/zmigrate · GitHub

Attachments. Similarly, the attachments draft includes a strong overview of Gordian Envelope and its attachments, with the final few HOW-TOs awaiting the hood being shut on the ZeWIF crate. If you’d like additional clarification or documentation on anything here, just let me know.

Attachments: zmigrate/docs/attachments.md at master · BlockchainCommons/zmigrate · GitHub

That’s it for the moment. Thanks for the continue support and faith in this project.

3 Likes