Page MenuHomePhabricator

[avalanche] Pass a CKey to the proof builder
ClosedPublic

Authored by Fabien on Sep 13 2021, 12:59.

Details

Reviewers
deadalnix
Group Reviewers
Restricted Project
Maniphest Tasks
Restricted Maniphest Task
Commits
rABC42ac1f7dae78: [avalanche] Pass a CKey to the proof builder
Summary

The proof builder currently takes a CPubKey because it only needs to move it into the proof it is building.

In order to improve the proof format so that it is possible to update some of it's parameters (and mostly the list of stakes) without having the stakers to got through the signing process again, the stakes signature will be updated to no longer sign every parameter of the proof. This also mean that we need to the proof owner to sign these parameters to prevent anybody from updating any proof. Since we need the private key for the signature, this diff supplies it to the proof builder instead of the public key. As a consequence the buildavalancheproof RPC needs to be updated as well.

This diff is a preliminary diff and does not update the proof format.

Ref T1676.

Depends on D10077.

Test Plan
ninja all check-all

Diff Detail

Repository
rABC Bitcoin ABC
Branch
avalanche_proofbuilder_private_key
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 16625
Build 33105: Build Difflint-circular-dependencies · build-without-wallet · build-diff · build-debug · build-clang-tidy · build-clang
Build 33104: arc lint + arc unit