Viewkey support in Zecwallet

Full viewing key support is now available across Zecwallet Fullnode, Lite client, CLI and the SDK.

You can now export a viewing key from Zecwallet Fullnode, and then import it into a Lightwallet to watch transactions to that address, without putting your funds at risk.

And when you’re ready to spend funds from the address, you can import the spending key and spend the funds directly from the Lightwallet. Of course, you can directly import and sapling spending key into Zecwallet as well.


A special thanks to @acityinohio, @holmesworcester and the ECC team for making this project possible.

Links:
Zecwallet Lite
Zecwallet FullNode
CLI and SDK

13 Likes

This is awesome and we’ll be using it soon!

One issue right now is that, when you import a viewing key that may have transactions sent to it already, users must restart to use the new viewing key, because a rescan needs to happen, and lightwalletd stops providing information about the current state, and instead resets the state of everything to the point it’s at in the rescanning process. Rescanning can take a while for viewing keys with lots of memos sent to them.

I may be misunderstanding something, but I think it might be best to do the rescan in a separate process and then swap in the new state once rescan is complete. That way users can still use their wallet after importing a viewing key. Or is there some other way around this?

Thanks again for the work on this!!

H

1 Like

On a fullnode the RPC has options to control rescan

https://zcash-rpc.github.io/z_importviewingkey.html