feat: synchronize keys between validator client and external signer - #6672
Conversation
Codecov Report
Additional details and impacted files@@ Coverage Diff @@
## unstable #6672 +/- ##
============================================
+ Coverage 61.80% 61.87% +0.07%
============================================
Files 556 557 +1
Lines 59103 59200 +97
Branches 1898 1915 +17
============================================
+ Hits 36526 36628 +102
+ Misses 22534 22529 -5
Partials 43 43 |
e3b5466 to
d63adce
Compare
Performance Report鉁旓笍 no performance regression detected 馃殌馃殌 Significant benchmark improvement detected
Full benchmark results
|
| }, | ||
|
|
||
| // Remote signer | ||
| // External signer |
There was a problem hiding this comment.
I tried to make the wording a bit more consistent within the code, and also few logs. We generally use the term "external signer" to describe an external/(remote) server that handles the signing operations for a specific public key. Whereas the term "remote signer" is also used to describe a remote signer in the local validator store.
| // Remote signer | ||
| // External signer | ||
|
|
||
| "externalSigner.url": { |
There was a problem hiding this comment.
We could consider supporting multiple external signers in the future, our implementation can easily be adjusted to support this but I think it's better to not include it in this PR. Opened an issue to keep track of it and for further discussion #6679.
|
馃帀 This PR is included in v1.18.0 馃帀 |
Motivation
Description
Adds new service that is responsible for keeping the keys managed by the connected external signer and the validator client in sync by adding newly discovered keys and removing no longer present keys on external signer from the validator store.
Only enabled if
--externalSigner.urland--externalSigner.fetchis set.The interval can be configured via
--externalSigner.fetchIntervalflag and is set to once per epoch by default.(see referenced issue for more details)
Closes #6624