The Seedy World Of Message Serialization

Look, I’ve been there too. First the project just prints debug information for a human in nice descriptive strings that are easy to understand. Then some tool needs to log a sensor value so the simple debug messages gain structure. Now your debug messages {{look like : this}}. This is great until a second sensor is added that uses floats instead of ints. Now there are sprinklings of even more magic characters between the curly braces. A couple days later and things are starting to look Turing complete. At some point you look up and realize, “I need a messaging serialization strategy”. Well you’ve come to the right place! Continue reading “The Seedy World Of Message Serialization”

Hiding Data In Music Might Be The Key To Ditching Coffee Shop WiFi Passwords

In a move guaranteed to send audiophiles recoiling back into their sonically pristine caves, two doctoral students at ETH Zurich have come up with an interesting way to embed information into music. What sounds crazy about this is that they’re hiding data firmly in the audible spectrum from 9.8 kHz to 10 kHz. The question is, does it actually sound crazy? Not to our ears, playback remains surprisingly ok.

You can listen to a clip with and without the data on ETH’s site and see for yourself. As a brief example, here’s twelve seconds of the audio presenting two versions of the same clip. The first riff has no data, and the second riff has the encoded data.

You can probably convince yourself that there’s a difference, but it’s negligible. Even if we use a janky bandpass filter over the 8 kHz -10 kHz range to make the differences stand out, it’s not easy to differentiate what you’re hearing:

After many years of performing live music and dabbling in the recording studio, I’d describe the data-encoded clip as having a tinny feedback or a weird reverb effect. However, you wouldn’t notice this in a track playing on the grocery store’s speaker. Continue reading “Hiding Data In Music Might Be The Key To Ditching Coffee Shop WiFi Passwords”

Joe Grand Is Hiding Data In Plain Sight: LEDs That Look Solid But Send A Message

Thursday night was a real treat. I got to see both Joe Grand and Kitty Yeung at the HDDG meetup, each speaking about their recent work.

Joe walked us through the OpticSpy, his newest hardware product that had its genesis in some of the earliest days of data leakage. Remember those lights on old modems that would blink when data is being transmitted or received? The easiest way to design this circuit is to tie the status LEDs directly to the RX and TX lines of a serial port, but it turns out that’s broadcasting your data out to anyone with a camera. You can’t see the light blinking so fast with your eyes of course, but with the right gear you most certainly could read out the ones and zeros. Joe built an homage to that time using a BPW21R photodiode.

Transmitting data over light is something that television manufacturers have been doing for decades, too. How do they work in a room full of light sources? They filter for the carrier signal (usually 38 kHz). But what if you’re interested in finding an arbitrary signal? Joe’s bag of tricks does it without the carrier and across a large spectrum. It feels a bit like magic, but even if you know how it works, his explanation of the hardware is worth a watch!

Continue reading “Joe Grand Is Hiding Data In Plain Sight: LEDs That Look Solid But Send A Message”