-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Network Participiation Authorization #64
Comments
Can you explain a bit more on how |
Also, can you please tell me how should I test this functionality? Is this test something I should be looking into, or are there any other tools available to test network participation? |
For the test, it's not about preventing transactions but rather about permissioning when connecting to any node. Therefore i'd base it on this test with valid and invalid credentials. |
Thank you, what about the public key verification? Does the discovery protocol somehow check if the user of the public key also holds the private key? If so, can you point me to the code that does this? |
Well during the handshake this is verified. I think here: So this does not need to be checked in hdc_service. There you only check if the |
Currently anyone can participate in the network and gets broadcasted all transactions and blocks, i.e. can access the full state.
Task: Add permissioning to the network access.
Solution: Contract equivalent to #63, except that we are now storing the
public_key
s of the network of authorized users in the value filed of users. Also we don't needbegin_block
. The registrar_address is still an externally owned account address(!).Extend
on_wire_protocol_start
https://github.com/HydraChain/hydrachain/blob/develop/hydrachain/hdc_service.py#L488 and check ifproto.peer.pub_key
is authorized to connect. If not disconnect the client.Notes: Think about bootstrapping, graceful error messages.
The text was updated successfully, but these errors were encountered: