(Link to a program that does this.)
Perhaps a little bit of topic but this post takes me back 40 years. In the '80s computer code was distributed over a radio signal. First on FM later on AM. On the receiving end me and many other computer enthusiasts were recording this signal on a little cassette recorder. The recorder was then connected to the computer and we could load the source. O, sweet nostalgia. Copyright on software didn’t exists and we had never heard of Bill Gates. I suddenly feel very old now ;-)
Whoa that’s pretty innovative.
Takes me back to the Spectrum days! Copying cassettes using my parents twin deck separates system with the volume dial down to 0.
This is basically how internet modems over telephone lines used to work.
I was gonna say, isn’t this exactly what dial up was?
BRRRRRRRRRRRT BEEP BOOP BOOOOP BRRRRRRP
MOM GET OFF THE PHONE I’M DOWNLOADING SEVEN OF NINE
Apparently, there are SO many ways to do this. If anyone is interested in this sort of thing, check out the papers made by Ben-Gurion University’s Cyber-Security Research Center. They discovered all kinds of methods which can be used to steal data, which are, but are not limited to:
- using Keyboard LEDs
- heat emanations
- screen brightness
Seriously, it’s as insane as it is fascinating. They even know how to extract data through a Faraday cage. Their latest discovery seems to be this article and their previous ones can be found towards the bottom of the same page.
By listening to the sound of your typing - https://github.com/ggerganov/kbd-audio - although it works best/only with mechanical keyboards in a noise-free environment.
That said, and not to discount the possibility, but most of these techniques are generally impractical and tend to require mostly perfect conditions - like the source code linked above working with mechanical keyboards.
…for now
10 kB / s isn’t bad. I wonder if there’s some other innovative way to do this, like with cameras instead of microphones, so pictures, or video.
There’s an Android app that lets you transfer files/text via a stream of QR codes - https://f-droid.org/en/packages/com.github.xloem.qrstream/
Looks like it’s no longer maintained though.
Ahhh dang that’s too bad, its a really neat idea.
Li-Fi.
I once saw a project being shared on Reddit that encodes arbitrary data as a video of coloured blocks. It’s apparently even pretty robust to compression/transcoding, as the OP uploaded a generated video to YouTube and still managed to decode it after it’s been processed. I seem to have lost the link to it though :(
I wonder how fast data could be transferred over a series of QR Codes being scanned sequentially.
You also have the benefit of choosing how resilient the data transfer should be to loss by adjusting the error correction level at the detriment of how much data per QR code you can transmit.
Apparently this is how Google Chromecast was supposed to pair with your phone. Also how ads on TV or radio can be tracked from an app.
https://arstechnica.com/gadgets/2014/06/chromecast-will-talk-to-smartphones-using-ultrasonic-tones/
I worked on a POC app a couple years ago using the LISNR sdk to authenticate touchless payments.
It’s a neat technology.
If your ok with the lower bandwith you can also use >17kHz which old folks can’t really hear :D
A research group once, I shit you not, put varying CPU loads on a target airgapped computer and “transmitted” data encoded as fan noises going high and low. There have also been cases of getting GPG keys in lab settings by literally listening to the tiniest of noises made by the processor as it works! (I believe it’s coil whine? But I can’t seem to find the article explaining it) Information leakage is an absolute nightmare to try and completely prevent if your attacker is determined/skilled enough.
The thing you tell about processor is right.
There is a thing called cache timing and a vulnerability was discovered for the same with but the voltage used.