P2P video call with public/private-key authentication

I’ve built a system that pairs random people together, and each person has a public-private key pair. https://github.com/0xAnonymous/Polytopia/blob/main/Polytopia.sol

How hard do you all think it would be to build something equivalent to https://meet.jit.si/, but, where people only allow connections to a few specific peers, those with the public-private key pair they were paired with?

Welcome to the forum!

Well, Jitsi has E2E encryption which used to use keys shared between participants. Currently, it’s been modified to use insertable streams, but I believe there’s some consideration to go back to using exchangeable keys. That could be a possible solution to your ask.

Assuming the users who connect do some form of authentication with unique keys, would they in that design still find each other via a channel identifier like https://meet.jit.si/channel-identifier?

On second thought, I’ll probably rely on randomly generated channel IDs over something like meet (dot) jit (dot) si/, https://gotalk.to/, http://p2p.chat/, making it sybil proof-ish, and then let people authenticate before that, by agreeing over a random channel ID over authenticated message platform. Lots more demand for authenticated messaging than video, so I’ll have an easier time finding the tech needed for that.

LOL… I’m sorry, but the fact that you’ll even mention those subpar products in the same sentence with Jitsi shows you may not be very conversant with this line of technology. But hey, goodluck with that! :+1:t5:

Seem to all be webrtc + centrally coordinated peer discovery and connection. My self-interest is to have a platform to easily manage connections between people, no need for me to be “loyal” or “maximalist” to one platform or another. Whatever is best, if that is yours then I’ll likely use it, but there are many alternatives that also provide what I need was the point, “url to no login p2p video calls” has been around as a service for years. There was https://appear.in back in 2016. I’m overall really happy to see progress in that tech! If yours is superior, keep it up!

Oh, to be clear, I’m not at all affiliated with Jitsi or 8x8… lol. I’m a simple user and community member just like most here. I’m however very familiar with the Webrtc+ products in the market today and I find it incongruous to have those 2 products you listed earlier as being comparable solutions to Jitsi. But again, if you find them to better fit your unique purpose, then that’s great of course.

I’m not an expert on “webrtc products”, I’m just a costumer :slight_smile: As far as I see, all of the “url to no login p2p video call” seem to use exact same tech. Seems to me that a major flaw in infrastructure at the moment is how peers find one another. Has Jitsi innovated there or is it still like a central server that people connect to and it manages the connection between them? Any ideas for how to improve that?

I’m not sure how it’s a flaw, if the focus is on privacy and freedom from collection (and persistence) of user data. People who gravitate towards Jitsi are usually very privacy/security conscious and frankly would likely still veer towards Jitsi if it was a slightly inferior video conferencing product. Remarkably though, the devs have devoted such an incredible amount of time (and talent) to creating a product that’s comparable - if not even superior - to the most celebrated paid products out there. When you host your own Jitsi installation, you enter a world of endless possibilities. I honestly can’ enthuse enough about it. :smile:

With Jitsi, by default, a call between 2 people happens in P2P mode, which is intrinsically encrypted. When you add a 3rd client to the call, then it uses the bridge (JVB). Jitsi has no user-data permanence in its default state, but it you want to use it on an enterprise level (or have specific needs to only allow a set group of users all the time), then you can use the JWT token or LDAP integration. Honestly, the possibilities are near-endless. But hey, here I go again sounding like the marketing director for the company. :joy:

Ideally when sending p2p package you would not need a central (single, central, point) place where everything passes through. Eventually, p2p will be truly p2p. At the moment, the solution to have “partial p2p” is used instead.