You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This ticket describes the design of the 4th layer of the p2p discovery protocol of the network.
Bottle in the sea
The name self descriptif of the intent (and also of the limitations) of the 4th layer. A stake pool that enables the 4th layer will broadcast a special message on the network and will hope that other stake pools will find it and be able to read the content of message.
The content of the message will be the stake pool id and the updated IP address to contact that stake pool.
privacy concerns and mitigations
It is important to keep the privacy of the stake pool as much as possible. Here we consider 2 risks for a stake pool and the following mitigations:
non stake pool, outsider of the protocol, will know the IP address of the stake pool and will be able to DoS or disrupt the stake pool. In order to prevent this the message is encrypted for a limited number of stake pools only. See below about the cryptographic protocol implemented for this;
other stake pools could team against a specific stake pool to disrupt or disrupt the stake pool network. If this would happen, the stake pool could disable the 4th module and would not propagate its location in the bottle.
Overview
The idea is rather simple. A stake pool will gossip its location (IP/FQDN address) to the network. The content of the message (the location) is encrypted with shared asymmetric encryption to a list of stake pools. This message is then gossiped through the p2p network, hoping it finds a way to the expected stake pools. These stake pools can then decrypt the message and retrieve the other stake pool location for their 4th layer and connect to this node.
technical aspect and steps to build
There are some missing bits to implement in order to allow such thing to go through the network.
Shared asymmetric encryption with the VRF Public Key
The stake pools we wish to contact are already all present in the ledger. They all published the necessary cryptographic material. We can use this in order to know exactly which stake pools we wish to contact.
There is going to be a need for some research for this, in order to allow backward compatibility and or add a separate command message on gRPC to allow for the custom gossips.
Message content
From the node side it's rather simple. To gossip the location:
select a number of stake pool ids and VRF public keys;
encrypt current location and stake pool id for these stake pools;
One positive effect of an approach like this might be helping pools that were not ideally positioned, (eg. not in Asia/EU/US) to propagate their blocks better, when purposely connected to other pools like this. I like the idea of a human controlled additional layer and I think, better connected pools will also be better for the whole noetwork, since they all share their good connection to randomly connected pools.
This ticket describes the design of the 4th layer of the p2p discovery protocol of the network.
Bottle in the sea
The name self descriptif of the intent (and also of the limitations) of the 4th layer. A stake pool that enables the 4th layer will broadcast a special message on the network and will hope that other stake pools will find it and be able to read the content of message.
The content of the message will be the stake pool id and the updated IP address to contact that stake pool.
privacy concerns and mitigations
It is important to keep the privacy of the stake pool as much as possible. Here we consider 2 risks for a stake pool and the following mitigations:
Overview
The idea is rather simple. A stake pool will gossip its location (IP/FQDN address) to the network. The content of the message (the location) is encrypted with shared asymmetric encryption to a list of stake pools. This message is then gossiped through the p2p network, hoping it finds a way to the expected stake pools. These stake pools can then decrypt the message and retrieve the other stake pool location for their 4th layer and connect to this node.
technical aspect and steps to build
There are some missing bits to implement in order to allow such thing to go through the network.
Shared asymmetric encryption with the VRF Public Key
The stake pools we wish to contact are already all present in the ledger. They all published the necessary cryptographic material. We can use this in order to know exactly which stake pools we wish to contact.
new network end point
There is going to be a need for some research for this, in order to allow backward compatibility and or add a separate command message on gRPC to allow for the custom gossips.
Message content
From the node side it's rather simple. To gossip the location:
Upon receiving a gossip:
4th custom layer
Implement and add to the topology the 4th layer
It will require:
module
with its ownruntime
to drive the 4th layer operations: [bottle in the sea]: the layer driver #1979Poldercast
Layer
to populate the p2p view [bottle in the sea]: the 4th layer #1978Configuration wise:
The text was updated successfully, but these errors were encountered: