4 ms·
Over the last couple of years, there's been huge progress in making end-to-end encryption practical for "real world" apps -- especially stuff running in web bro
by kwindla 9y ago
Over the last couple of years, there's been huge progress in making end-to-end encryption practical for "real world" apps -- especially stuff running in web browsers. Signal is part of that, of course, as is WebRTC, a standard that to its great credit did an excellent job with the encryption pieces from the very beginning.
We built our video calling app, Daily.co, on top of WebRTC and so we could relatively easily include end-to-end encryption from the day we launched.
A few things make e2e harder as you scale up. One is that metadata gets more and more important, for a lot of reasons, as you add features and try to grow a business. As has been pointed out here, Skype was end-to-end encrypted in the pre-Microsoft days.
Another challenge is that it's a lot easier to build e2e encryption for mesh network topologies than if you're routing things through central servers. For video calling, mesh networking breaks down as you add more users to a call. For us, that means we're e2e encrypted up to 4 people in a call. After that, we're forwarding video streams through our servers in the cloud, and we don't do e2e encryption anymore. (Not that we wouldn't like to, it's just a much heavier development lift.)
- jmiserez 9y agoWhy not just forward the e2e encrypted video streams through your servers? Encrypted or not, wouldn’t the amount of traffic be the same?
- VirtruTyler 9y agoIf you wouldn't mind, what server framework are you using to route video? Did you custom roll one? Using a service like twilio for calls with more than a few people?