Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add hashes of transactions that reveal a nullifier in the {sprout, sapling, orchard}_nullifiers column families as values #8838

Open
Tracked by #8610 ...
arya2 opened this issue Sep 4, 2024 · 0 comments · May be fixed by #8895
Assignees
Labels
A-state Area: State / database changes

Comments

@arya2
Copy link
Contributor

arya2 commented Sep 4, 2024

Motivation

This is needed for the zcashd replacement wallet.

Design

The transaction hash of the transaction revealing a nullifier can be added as the value as these column families currently only store keys.

Zebra is writing revealed nullifiers to the finalized state here. Zebra is not using TypedColumnFamily or TypedWriteBatch for the the nullifier column families, so the transaction hashes can be added as values when writing to the finalized state without any other changes. It will also need a db format upgrade that goes through all of the transactions and rewrites the nullifiers with transaction hashes.

Revealed nullifiers in the non-finalized chains are stored here, where the field types can be updated to HashMap<Nullifier, transaction::Hash>s, and the transaction hashes can be added here where the nullifier sets are updated.

@arya2 arya2 added the A-state Area: State / database changes label Sep 4, 2024
@arya2 arya2 changed the title Add hashes of transactions that reveals a nullifier in the {sprout, sapling, orchard}_nullifiers column families as values Add hashes of transactions that reveal a nullifier in the {sprout, sapling, orchard}_nullifiers column families as values Sep 6, 2024
@mpguerra mpguerra assigned arya2, oxarbitrage and upbqdn and unassigned arya2 and oxarbitrage Sep 23, 2024
@arya2 arya2 self-assigned this Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-state Area: State / database changes
Projects
Status: In progress
3 participants