Implementation of an End-to-End Encryption Mechanism in WebRTC Video Streaming

This Master’s thesis presents a complete design and implementation of an end-to-end encryption (E2EE) mechanism for WebRTC video streaming. Although WebRTC supports built-in encryption using DTLS-SRTP, it does not guarantee true end-to-end protection, as intermediate servers like TURN or SFUs may still access the media. To address this, the project introduces an additional encryption layer directly between peers using the WebRTC Insertable Streams API. It uses secure symmetric encryption (AES-GCM and ChaCha20-Poly1305), and applies Elliptic-Curve Diffie-Hellman (ECDH) key exchange to establish session keys. A custom signaling server was built using Node.js and Socket.IO to handle peer negotiation and key exchange. The prototype was evaluated for latency, CPU usage, and video quality, and tested against typical attacks such as MITM and replay attacks. This work demonstrates the feasibility of implementing customizable E2EE within WebRTC without sacrificing usability, and provides a solid foundation for further research into secure peer-to-peer real-time communication.

Institutions

Publication Details

Journal
Zenodo (CERN European Organization for Nuclear Research)
Published
2025-06-01
DOI
https://doi.org/10.5281/zenodo.17194787
Primary Topic
Housing Market and Economics
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Implementation of an End-to-End Encryption Mechanism in WebRTC Video Streaming

Zenodo (CERN European Organization for Nuclear Research)
Housing Market and Economics
article

Implementation of an End-to-End Encryption Mechanism in WebRTC Video Streaming

article en

Abstract

This Master’s thesis presents a complete design and implementation of an end-to-end encryption (E2EE) mechanism for WebRTC video streaming. Although WebRTC supports built-in encryption using DTLS-SRTP, it does not guarantee true end-to-end protection, as intermediate servers like TURN or SFUs may still access the media. To address this, the project introduces an additional encryption layer directly between peers using the WebRTC Insertable Streams API. It uses secure symmetric encryption (AES-GCM and ChaCha20-Poly1305), and applies Elliptic-Curve Diffie-Hellman (ECDH) key exchange to establish session keys. A custom signaling server was built using Node.js and Socket.IO to handle peer negotiation and key exchange. The prototype was evaluated for latency, CPU usage, and video quality, and tested against typical attacks such as MITM and replay attacks. This work demonstrates the feasibility of implementing customizable E2EE within WebRTC without sacrificing usability, and provides a solid foundation for further research into secure peer-to-peer real-time communication.

Zenodo (CERN European Organization for Nuclear Research)
Badji Mokhtar-Annaba University (DZ), Bakhtar University (AF)
Openalex Percentile: Top 35%
Housing Market and Economics
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.