WebRTC
What is WebRTC?
WebRTC, an abbreviation for Web Real-Time Communication, is an Internet protocol that enables audio and video communication directly in Web browsers, as well as the exchange of data files. WebRTC supports applications like video conferencing (e.g. Zoom meetings), communication with Internet enabled devices (e.g. smart thermostats), online multi-person gaming, and more. WebRTC capabilities are embedded within the user’s chosen browser, so there’s no need to install or open separate software in order to connect with other people or devices.
WebRTC-based tools use peer-to-peer connectivity—where users’ devices communicate directly with one another and don’t need to be routed first through a central server. This can often result in faster response times and more reliable connections, which means a better experience. WebRTC has been around since 2011, and has gained popularity in recent years. It’s supported by all major browsers, and works on both computers and mobile devices.
What is WebRTC used for?
WebRTC allows Internet users to share content directly with one another through a Web browser. Direct interactions can include video, audio, and exchange of data; when users are communicating via WebRTC, multiple streams of content can be shared simultaneously. WebRTC standardization also improves communication with—and remote control of—Internet-enabled appliances and devices (collectively called the “Internet of Things” or IoT).
Web-based video conferencing services like Zoom, Brave Talk, Slack, and Google Meet all use the WebRTC framework. Other common examples of WebRTC-based video and audio sharing include telehealth calls, online education, and remote access to security cameras. Video from an IoT device such as a smart doorbell or baby monitor may be provided through WebRTC.
WebRTC also includes procedures for sharing data. These data channels may be standalone (for example, a customer support live chat may use a WebRTC data channel to exchange text messages) or be used alongside an audio/video application (such as a chat box within a video conference, or real time captioning of a live stream). Online gaming on platforms like Twitch use WebRTC data channels to keep the game in sync for all players, while also providing audio or video channels for players to talk while playing.
Some streaming platforms, like WebTorrent, use WebRTC data channels to allow users to share large files without the need for a central server.
Why is WebRTC popular?
WebRTC provides a straightforward way for an individual to connect with others. You don’t have to install anything—everything you need to participate in a video conference or game is built into the browser. By defining a single set of data sharing protocols (standard APIs), WebRTC ensures compatibility across all browsers that support it. It doesn’t matter if participants are accessing the video call using Chrome or Brave or any other browser that supports WebRTC—everyone will be connected. With network traffic traveling directly peer-to-peer, the user experiences faster response time, which can also mean smoother feeds in conversations and gaming. The quality of the experience, however, can be affected by the bandwidth available for each peer.
Created as an open source project, WebRTC is available, free, to all developers. WebRTC also includes desirable security features, like requiring a user’s permission to access their camera or microphone. The transmitted data is encrypted to help prevent eavesdropping (which can also help ensure services are in legal compliance).
Is WebRTC safe?
Generally, WebRTC is safe, and designed with security of content in mind. As mentioned above, it includes several standards to protect the user.
There is, however, one facet of WebRTC that has existed since its beginning and may be considered a security issue. As part of establishing communication channels between users, WebRTC accesses and exchanges each user’s IP address. The IP address is not encrypted and can be “leaked” to other users, sometimes even if they have a VPN.
Your IP address can divulge identifying information about you, and enable more accurate fingerprinting.
How to protect your IP address
WebRTC accesses your IP address regardless of who initiates the communication. So, if someone reaches out to you through a WebRTC channel, whether or not you “answer,” your IP address becomes accessible. This can even happen when a website is loaded, if the website owner has included WebRTC processes in their code.
Using a VPN may provide some protection. Some VPN providers can block a WebRTC leak, while others do not. There are tools available to test if your VPN is preventing WebRTC leaks.
Depending on the browser you’re using, you may have other protections available. Some browsers give you the option of disabling WebRTC directly in browser settings, while others have extensions available that can protect in some situations. The Brave browser includes a built-in setting that provides a choice of four levels of protection against WebRTC leak.