| Crates.io | p2panda-discovery |
| lib.rs | p2panda-discovery |
| version | 0.5.0 |
| created_at | 2024-12-06 17:53:14.18819+00 |
| updated_at | 2026-01-21 14:53:48.667897+00 |
| description | Confidential topic and node discovery protocol |
| homepage | |
| repository | https://github.com/p2panda/p2panda |
| max_upload_size | |
| id | 1474490 |
| size | 91,900 |
Confidential topic and node discovery protocol
Discovery can be used to find nodes which share a common interest in a topic. During this process, transport information is exchanged in order to aid in the establishment of direct peer-to-peer connections. A topic in p2panda is a secret, randomly-generated hash that plays a similar role to a shared symmetric key. Topics usually represent identifiers or namespaces for data and documents associated with a specific group of people (for example a text document, chat group or image folder). For this reason, a topic should never be leaked to people outside of the intended group, whether accidentally or purposefully.
Our discovery protocol implementation is designed to ensure that topics are never leaked to unintended actors. Nodes will only ever exchange data when both parties have proven their knowledege of the same topic. This mutual acknowledgement is achieved using a secure multiparty cryptographic technique known as Private Equality Testing (PET) or Private Set Intersection (PSI) which prevents unrelated topics being leaked to other parties.
Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in p2panda by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
This project has received funding from the European Union’s Horizon 2020 research and innovation programme within the framework of the NGI-POINTER Project funded under grant agreement No 871528, NGI-ASSURE No 957073 and NGI0-ENTRUST No 101069594.