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

Grant access to the public key of the secio layer #100

Closed
tomaka opened this issue Jan 16, 2018 · 1 comment
Closed

Grant access to the public key of the secio layer #100

tomaka opened this issue Jan 16, 2018 · 1 comment
Labels
priority:important The changes needed are critical for libp2p, or are blocking another project

Comments

@tomaka
Copy link
Member

tomaka commented Jan 16, 2018

Once we upgraded a connection through secio, the upper layer need to have somehow access to the public key that is used by the remote.

Required for a proper Kademlia implementation, otherwise we have no way to check the authenticity of nodes.

An easy solution would be to add a trait PublicKeyProvide with a get_public_key(&self) -> ? method, that would be implemented on the output of the secio middleware and on any stream that lies on top of secio. In my opinion it makes sense that this trait belongs to the core of the library (and not to libp2p-secio), in order to avoid a spaghetti of dependencies and also to enable alternative implementations of secio/security.

@tomaka tomaka added the priority:important The changes needed are critical for libp2p, or are blocking another project label Mar 28, 2018
@tomaka tomaka mentioned this issue May 11, 2018
@tomaka
Copy link
Member Author

tomaka commented Sep 4, 2018

Done a long time ago, I can't find it probably somewhere between PRs 150 and 250.

@tomaka tomaka closed this as completed Sep 4, 2018
dkuehr pushed a commit to openmina/rust-libp2p that referenced this issue Oct 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority:important The changes needed are critical for libp2p, or are blocking another project
Projects
None yet
Development

No branches or pull requests

1 participant