Articles

Who implemented the exchange of data via WebRTC using sound

by Bob F. CCO

Everyone is familiar with the hissing and squeaking sound that dial-up modems used to make when connecting. Today these devices are still used in remote regions of the planet, but the idea of connection by means of sound finds only niche applications. One of them is WebRTC connectivity.

What's the idea

WebRTC technology allows two browsers on different devices to exchange data without additional plugins or applications, this technology could speed up downloading, transferring or calculating copyright free music. To establish a connection, the devices broadcast contact information - IP addresses, ports and session identifiers - to each other. However, there are no specific requirements for the signaling protocol in the WebRTC specification, and the connection can be made in any way. One enthusiast decided to use sound for this purpose and developed a utility for p2p data transfer - wave-share.

In this case, the mechanism of IP-address exchange consists of three steps: a) the transmitter encodes the session data into an audio sequence and broadcasts it through the speakers b) the receiver, located within the audible range, receives the signal and sends a response in a similar format c) the initiator decodes the received information and establishes a connection.

To convert data to audio the author of wave-share used frequency shift keying (FSK). In this case frequency of carrier signal changes depending on symbols of transmitted sequence. Thus, the utility splits the information into four-bit fragments, each of which corresponds to a sound of a certain pitch (in the range of 4.5 kHz). The receiver and transmitter exchange blocks of three bytes with each other.

The work of the utility can be evaluated in practice, as the author has prepared a demo. However, the test application may not work in some browsers. What is interesting, the author also formalized his algorithm for coding information into the ggwave library and transferred it to open source.

What are the nuances?

The acoustic concept of the project imposes serious limitations on it, and the two devices must be side by side to transmit data. In addition, the author has not yet implemented error correction methods, so it is better to conduct the signaling in a relatively quiet room. At the same time, the devices must be connected to the same local network, as wave-share does not support working with NAT.

Residents of Hacker News expressed interest in the utility. In the thread where the discussion unfolded, one of them noted potential problems with information security. Attackers could tamper with the beeper and intercept data if conducting the alarm in a public place. Of course, in the context of a niche home file transfer utility, it doesn't make sense to worry about such attacks. It is also fair to note that wave-share is only a concept and not yet ready to be implemented in serious projects.

If the author (or the open source community) decides to develop the system further, perhaps he will pay special attention to information security issues. There are already mechanisms capable of resisting audio data interception, such as Acoustic Integrity Codes (AIC) that detect third-party connections.

Similar projects

The Ozzillate web application, which is a full analog of wave-share, also allows transferring data between adjacent devices. It is hard to say yet about the algorithms used by the developers, but they plan to transfer all the sources to open source in the nearest future. But, of course, wave-share and ozzillate developers are not the first in this field.

History remembers projects in which audio signals were used not only to establish a connection, but also to transmit data directly. Back in the 1980s, DJs from Bristol were encoding and broadcasting images and simple video games over the radio. They used special noises and the cassette format BASICODE, based on the BASIC programming language.

Google experimented with something similar in 2014. The corporation acquired SlickLogin technology, which is an auditory method of user identification. Before logging in to the account, the computer played a unique signal, the application on the phone read it and provided access to the account. However, the further fate of the project is unknown - it was probably phased out.

But it is safe to say that scientific research in this area will continue. Experts see one of the most promising applications of data transmission technology through sound in new protocols for the Internet of Things devices. They are expected to enable smart gadgets to communicate more efficiently.


Sponsor Ads


About Bob F. Junior   CCO

5 connections, 0 recommendations, 15 honor points.
Joined APSense since, September 23rd, 2019, From Croydon, United Kingdom.

Created on Nov 29th 2021 14:18. Viewed 1,919 times.

Comments

No comment, be the first to comment.
Please sign in before you comment.