beacon-APIs icon indicating copy to clipboard operation
beacon-APIs copied to clipboard

Minimal SSV API

Open dankrad opened this issue 5 years ago • 5 comments

Suggested API for VC to communicated with SSV node (SSV node will emulate BN API to VC, to keep things simple)

dankrad avatar Aug 21 '20 16:08 dankrad

Don't know why the CI is failing, seems to be an error with the CI

dankrad avatar Aug 22 '20 11:08 dankrad

Screenshot from 2020-08-22 12-44-06 Here is an illustration on how the SSV node is supposed to work. It basically sits between the SSV node and the BN, and will emulate the BN API for the VC (this is to avoid duplication of work to build another API which would be very similar overall)

dankrad avatar Aug 22 '20 11:08 dankrad

Don't know why the CI is failing, seems to be an error with the CI

There was invalid file references in stream. Funny enough, linter seems to missed it, but bundler caught it

mpetrunic avatar Aug 22 '20 13:08 mpetrunic

Screenshot from 2020-08-22 12-44-06 Here is an illustration on how the SSV node is supposed to work. It basically sits between the SSV node and the BN, and will emulate the BN API for the VC (this is to avoid duplication of work to build another API which would be very similar overall)

@dankrad is the VC still connected to the BN? it would seem to me that it should as there are several calls that go along with signing.

Prysm's VC (for example) has a runner loop that asks for duties from BN, if any found it also asks to subscribe to the relevant topic, get data to sign and of course broadcast the sig. If the VC node is only connected to the SSV node then it needs to cover those calls as well and the VC code will need to change as not all nodes that take part in the SSV will need to subscribe to the relevant topic or request the signing data.

alonmuroch avatar Aug 23 '20 10:08 alonmuroch

@dankrad is the VC still connected to the BN? it would seem to me that it should as there are several calls that go along with signing.

The idea is that the VC is now only connected to the SSV client. The SSV client could proxy any BN endpoints the VC needs, but I'm not sure if that would be necessary.

Prysm's VC (for example) has a runner loop that asks for duties from BN, if any found it also asks to subscribe to the relevant topic, get data to sign and of course broadcast the sig.

We will need to leave all this to the SSV node, the VC would become much more passive in this setting. The VCs core responsibility is key management and slashing protection.

dankrad avatar Aug 23 '20 12:08 dankrad

Closing as very stale, we can revisit if it comes back around...

rolfyone avatar Jan 22 '24 02:01 rolfyone