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

fix!: use consensus hashing API for validator node MMR #5207

Merged

Conversation

AaronFeickert
Copy link
Collaborator

@AaronFeickert AaronFeickert commented Feb 24, 2023

Description

Uses the consensus hashing API to construct the hasher used to pre-hash validator node data for Merkle roots. Updates a test.

Closes issue 5205.

Motivation and Context

The hasher currently used to pre-hash validator node keys and shard identifiers does not use domain separation or the consensus hashing API. This PR updates the hasher construction using the API.

How Has This Been Tested?

Existing tests pass.

BREAKING CHANGE: Renders existing validator node Merkle roots invalid.

@AaronFeickert AaronFeickert marked this pull request as draft February 24, 2023 17:10
@AaronFeickert AaronFeickert force-pushed the vn-hash-domain branch 2 times, most recently from fd54751 to b461d88 Compare February 24, 2023 17:42
@AaronFeickert AaronFeickert marked this pull request as ready for review February 24, 2023 18:24
@stringhandler stringhandler merged commit de28115 into tari-project:development Feb 28, 2023
@AaronFeickert AaronFeickert deleted the vn-hash-domain branch February 28, 2023 13:32
stringhandler pushed a commit that referenced this pull request Mar 8, 2023
### ⚠ BREAKING CHANGES

* **peer_db:** more accurate peer stats per address (5142)
* use consensus hashing API for validator node MMR (5207)
* **consensus:** add balanced binary merkle tree (5189)

### Features

* add favourite flag to contact ([5217](#5217)) ([0371b60](0371b60))
* add indexer config ([5210](#5210)) ([cf95601](cf95601))
* add merge proof for balanced binary merkle tree ([5193](#5193)) ([8962909](8962909))
* **consensus:** add balanced binary merkle tree ([5189](#5189)) ([8d34e8a](8d34e8a))
* log to base dir ([#5197](#5197)) ([5147b5c](5147b5c))
* **peer_db:** more accurate peer stats per address ([5142](#5142)) ([fdad1c6](fdad1c6))


### Bug Fixes

* add grpc commitment signature proto type ([5200](#5200)) ([d523f1e](d523f1e))
* peer seeds for esme/igor ([5202](#5202)) ([1bc226c](1bc226c))
* remove panics from merged BBMT verification ([5221](#5221)) ([a4c5fce](a4c5fce))
* source coverage ci failure ([5209](#5209)) ([80294a1](80294a1))
* use consensus hashing API for validator node MMR ([5207](#5207)) ([de28115](de28115))
* wallet reuse existing tor address ([5092](#5092)) ([576f44e](576f44e))
* **wallet:** avoids empty addresses in node identity ([5224](#5224)) ([1a66312](1a66312))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Validator node hashing does not use domain separation
2 participants