Skip to content
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

Authority Discovery #4500

Open
3 tasks
EclesioMeloJunior opened this issue Jan 24, 2025 · 0 comments
Open
3 tasks

Authority Discovery #4500

EclesioMeloJunior opened this issue Jan 24, 2025 · 0 comments
Labels
Epic Issue used to track development status of a complex feature, aggregates several issues

Comments

@EclesioMeloJunior
Copy link
Member

Epic summary

  • Authority Discovery is a mechanism that creates, store and validates DHT records. Basically it makes possible to discover other nodes in the network using specifically their Authority ID (public keys)

Functionalities

  • Publish node's external address: Makes the node's external address available in the DHT, that is made using a custom DHT Record defined at substrate/client/authority-discovery/src/worker/schema/dht-v3.proto. The stored record (node's address) can be retrieved using the node AuthorityID and is available for other nodes to find it through random kademlia walks.

  • Listen to Put Value actions: PUT_VALUE is an action that other nodes can perform in our node's DHT, those calls brings external records which are other nodes external addresses, the authority discovery should validate the record signatures and if everything is ok then store the record.

  • Cache Addresses per Authority ID: Using a cache layer to retrieve address by authority ID to avoid DHT queries.

Links to related tech. design or research documents

Acceptance criteria

  • Using of the latest protobuf record schemas
  • Min of 60% of the code tested
  • Tested in a cross client network (3 substrate nodes and 1 gossamer node)
@EclesioMeloJunior EclesioMeloJunior added the Epic Issue used to track development status of a complex feature, aggregates several issues label Jan 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Epic Issue used to track development status of a complex feature, aggregates several issues
Projects
None yet
Development

No branches or pull requests

1 participant