Page MenuHomePhabricator

[avalanche] Add an option to import a delegation
Needs ReviewPublic

Authored by Fabien on Fri, Apr 2, 08:45.

Details

Reviewers
deadalnix
Group Reviewers
Restricted Project
Summary

The "-avadelegation" option let the user supply an already built
delegation to the node, so the proof can be used without passing the
master private key around.

Test Plan
ninja check-functional

Diff Detail

Event Timeline

Fabien requested review of this revision.Fri, Apr 2, 08:45
deadalnix requested changes to this revision.Sat, Apr 3, 19:57
deadalnix added a subscriber: deadalnix.

What problem removing the distinction between master key and session key solves? It seems to me like it's making security of the whole thing worse for no good reason.

src/avalanche/processor.cpp
453 ↗(On Diff #28067)

Why are you making a copy of the whole delegation?

src/init.cpp
1237 ↗(On Diff #28067)

Why? This behavior change doesn't seem to serve any other purpose than adding a special case.

Presumably, the delegation delegates to a key. How is the node supposed to have the corresponding private key?

2480 ↗(On Diff #28067)

It doesn't seem to make sense to me to accept an invalid delegation, then require init.cpp to know that the delegation might be invalid and check it. Why does init.cpp need to know about the delegation at all, past the fact that there is a command line argument about it?

This revision now requires changes to proceed.Sat, Apr 3, 19:57

Revert to original master key/session key intent, rebase on top of D9422 to remove verification from init.cpp