Zenith Full Node Wallet

We have another quick progress update on the first milestone for the Zenith Full Node Wallet:

  • Handle multiple wallets
  • Handle multiple accounts per wallet
  • Handle multiple addresses per account
  • Display Unified, Sapling and transparent encoding for address
  • Browse transactions for each address

We will be presenting at ZconV and will demo this first milestone during the presentation.

All questions and feedback are welcome :smiley:

P.S.: Many thanks to @BrunchTime for the Testnet Faucet.

10 Likes

Milestone 1

As part of our presentation during ZconV we are releasing Zenith 0.5.1.0-beta.1.

This release includes:

  • Managing multiple wallets
  • Managing multiple accounts per wallet
  • Managing multiple addresses per account
  • Display Unified Sapling and transparent encoding for address
  • Browse transactions for each address
  • Sending transactions, including Orchard support and ZIP-317 fees.

If you’d like to try the app, please visit our Installation Instructions.

12 Likes

Observation: bundling this in a docker might make deployment easier.

1 Like

We do have that in our roadmap :smiley:

2 Likes

New Release

Zenith 0.5.2.0-beta has been released. This is a bugfix release with some improvements in the performance of the transaction creation.

6 Likes

Love it! Thanks for the support in getting this working. I will share some notes shortly on my experience. I would love qr support, I used my homemade solution for now :wink: :heart_eyes: :zebra: :tada:



7 Likes

We did look into ASCII QR codes but they do require a very large terminal window to display it completely with something as large as a Unified Address and they are even larger for a ZIP-321 URI with memo.

We will include QR code functionality in the GUI for Zenith :+1:

6 Likes

A quick update:

5 Likes

New Release: 0.5.3.1-beta

We’ve released Zenith 0.5.3.1-beta with new functionality, an Address Book to store your commonly used addresses.

This release also includes a Docker container as an option for installation.

6 Likes
7 Likes

New Release: 0.6.0.0-beta

We have released Zenith 0.6.0.0-beta with a brand new Graphical User Interface:

This completes our second milestone for the development of Zenith for Zebra.

We look forward to hear feedback from the community and are excited to continue adding more features to the app.

9 Likes

As part of milestone 3, we are making great progress in implementing the Zenith RPC server and we would like to share our draft RPC spec.

It is our roadmap for the methods we intend to implement for this milestone and we would love to hear feedback from users of the current zcashd RPC on which methods and use cases they rely on.

7 Likes

This figure shows a “Zebra node” receiving “viewing keys”.

I am concerned by this architecture, which (I believe) is similar to how Monero operates some of its nodes.

For efficiency Monero delegates view capability to highly resourced nodes, so that chain scan can be carried out on those resourced nodes.

As a hack to allow faster scanning it’s… well it’s a hack.

As a delegation of a significant capability to an untrustable third party, at least in some contexts, I think it’s a serious security issue, though I would defer to someone with more expertise like @emersonian or @daira or @ChristopherA or @paullinator or @idky137 .

That brings me to this snippet of news:

Chainalysis is incentivized to attack Monero in this fashion because of Monero’s poor design decision.

If Chainalysis were to successfully MITM such an architecture, the User’s privacy would be… I think the same as if they were using Bitcoin… which is to say: “Nonexistent, on chain.” Of course, it’s worse than bitcoin in at least one dimension because of the much noted divergence between assumed, and actual, privacy. Do we want to build ourselves into this scenario?

As a somewhat separate concern this design seems intended to support parties that have control of highly resourced nodes. While I have no issue with specialized niches of the population using Zcash for whatever, I believe it’s a misallocation of scarce capitol for the community to design especially for those parties.

That’s not the market Zingo Labs is targeting, we’re interested in supporting people in general, even ones that don’t work for Binance, or Chainalysis.

I think this design fails our Users, except Chainalysis employees :wink: . I think this is not too surprising because it is unnecessarily violating a core principle of the CypherPunk Ethos, the Principle of Least Authority:

1 Like

This figure has nothing to do with Zenith.

I’m replying to it in the context where it was posted (by you).

Yes but the title of this topic is “Zenith Full Note Wallet” so I want to make sure that nobody assumes that you’re describing Zenith’s architecture.

1 Like

To be fair, that post you’re replying to is from January (at which point it was accurate to the then-planned architecture). I think we’re all agreed now that zebrad should not have access to viewing keys; the figure is clearly out-of-date wrt the current planned architecture. I think I remember one of the ZF engineers saying recently that zebra-scan might be dropped, and I would support that.

5 Likes

September update

We continue advancing the work of milestone 3:

  • Zenith RPC server: 90% complete. The methods implemented are listed in Zenith OpenRPC spec
  • Zenith GUI: Address book 100% complete
  • ZIP-320 support: 75% complete

The Zenith RPC server will be packaged as a separate binary (and Docker image) to keep it lightweight and it is fully compatible with the Zenith wallet UIs.

7 Likes

November update

The instability of testnet we experienced during the NU6 activation delayed our testing of the new RPC server but it also presented the opportunity to work on a few items we had planned for later delivery:

  • Chain re-org detection and rewind: 100% complete
  • Haskell implementation of commitment trees: 100% complete
  • Multiple privacy levels for transactions: 100% complete

We are currently working on upgrading to the latest Rust crates to finalize our testing and will announce the release of the latest version of the wallet and RPC once we complete the work.

7 Likes

New Release: 0.7.0.0-beta

We have released Zenith 0.7.0.0-beta with updates to the wallet and our new RPC server:

asciicast

For details of the contents of this release, see our announcement.

6 Likes