mimblewimble / grin-wallet

Grin Wallet
Apache License 2.0
185 stars 134 forks source link

View Wallet function (rewind_hash and scan rewind_hash) #630

Closed deevope closed 2 years ago

deevope commented 2 years ago

Features (api&cmdline):

Goal: Ensure the transparency (spending, receiving, balance etc) of a wallet that receive grin as donations. Allow everyone to scan the rewind_hash of the wallet shared publicly.

Cmd usage: get_rewind_hash: grin-wallet rewind_hash scan_rewind_hash: grin-wallet scan_rewind_hash 2c95b24de492395934a8a345440ed0ebbe67ee0025b348712a927a91c7fe58e9

phyro commented 2 years ago

This feature is not only interesting for transparency/auditability but might also be cool to check if you still hold the funds you think you do and how much you hold without needing to have a wallet set up.

P.S. it seems like some tests are failing

yeastplume commented 2 years ago

I think this is brilliant, thank you for doing this! It's the most comprehensive wallet PR we've seen in a while. :D

Just a note for anyone watching, this PR just provides an API for the post 2.0.0 BP rewind scheme outlined and decided upon prior to the 2.0.0 hardfork here: https://github.com/mimblewimble/grin-wallet/issues/105. This just covers public view keys and obviously won't work with any outputs created prior to 2.0.0.

If you'd like to just update the rewind hash creation fn (I've merged https://github.com/mimblewimble/grin/pull/3674), I'm happy to merge this unless someone has any objection over the next couple of days.