Live data from Hacker News

Show HN: TCP/UDP over sound

github.com

51–60 of 81 posts

Re: Show HN: TCP/UDP over sound

#51
More interesting IMO would be to embed data stream into normal audio stream within human-audible range. Something like MP3 steganography, but decodable after air transfer. Had anyone tried that?

I can imagine some interesting potential applications, including weird ones.

Re: Show HN: TCP/UDP over sound

#52

I've been prototyping a dail-up concept (like CSD) over 2G networks. Combined with heavy server-side compressing, the goal is to achieve speeds faster than GPRS in areas that have no data coverage to speak of. TCP over sound was the first part. I'll have to study this implementation.

Note that your audio will get fed through the AMR codec and then limited by the bandwidth available to that. For best results reverse-engineer the codec so your symbols are maximally distinguished by it.

It should not be possible to exceed the carrier's CSD rate over the link, but it's an interesting way of circumventing their billing.

Re: Show HN: TCP/UDP over sound

#53

More interesting IMO would be to embed data stream into normal audio stream within human-audible range. Something like MP3 steganography, but decodable after air transfer. Had anyone tried that? I can imagine some interesting potential applications, including weird ones.

You may be interested in https://github.com/quiet/quiet-js and https://danielrapp.github.io/spectroface/, both encode text / images over audible frequencies, but of course they sound weird.

However it is technically trivial to encode "hidden" data at inaudible frequencies (>25 kHz) along with a song/whatever in the audible range and recover the data with a high pass filter. You would have to explain, however, the need for >48kHz sample rate.

Another, stealthier option would be to encode information in the background noise of a recording, but this would require more complex encoding/filtering techniques.

Re: Show HN: TCP/UDP over sound

#54
post #46
post #36

Earlier quoted context omitted.

Not sure if this is what you meant, but Chromecast's guest mode will pair using ultrasound. The guy who worked on it has some code using the WebAudio API on github and his linked blog: https://github.com/borismus/sonicnet.js

No there was an article on here several months ago that I couldn't find when searching where someone wrote a PoC for the transmission of data via near-ultrasonic sounds from a computer speaker and microphone. I don't think it was this [1] one, but it shows the concept being used. Maybe I'm misintepreting the OP's work and not realising how it differs in some subtle way? I get that they've put TCP/UDP over it, but is…

Maybe this one? https://github.com/quiet/quiet-js I remember it sparked a discussion about airgap breaking.

Re: Show HN: TCP/UDP over sound

#55

Earlier quoted context omitted.

>I don't mean sound converted to electricity, or to represent 0s and 1s, but using a specific frequency range to represent 1, another range to represent 2, another for 3... I don't know the terms for these things. Frequency-shift keying? https://en.wikipedia.org/wiki/Frequency-shift_keying

Yup, a company I co-founded http://chirp.io has been using this technique (well, MFSK) to share data over the air, between mobile and embedded devices for a while now. Easy to describe, hard to do robustly.

I'm curious, did you selected audible frequencies (1760hz-10.5khz) because there were the only ones technically feasible with the current popular mics/speakers or because you actually wanted users to hear the data?

I have played with minimodem to do this (FSK) and while cool, it is an unpleasant noise. I managed to transmit at inaudible frequencies but certainly it was very very unreliable with normal consumer hardware.

Re: Show HN: TCP/UDP over sound

#57
post #42
post #26

Earlier quoted context omitted.

Good catch, but it was actually over audio signals. Sound was just for monitoring.

That's a distinction without a difference. If another family member picked up the phone while you were dialed up, they certainly heard it.

That's why it was just for monitoring - you could hear, but the communication itself was not done via sound.

Re: Show HN: TCP/UDP over sound

#58
post #3

Clever, an audio soft-modem. Was there a reason to not implement this as an actual modem with a frequency band assigned to either channel and then to run SLIP or PPP over it?

Difficulty level, probably. I'd love to see both and also one that can survive over GSM audio (is that even possible?)

There's dialup over GSM. Though those modems does this by piping data through a software modem and then onto the GSM channel, however it requests a clear channel, so no transcoding is done by the network or the phone (the lossy GSM codecs arn't suitable for this)

GPRS made that pretty much obsolete though.

Re: Show HN: TCP/UDP over sound

#59

Earlier quoted context omitted.

>I don't mean sound converted to electricity, or to represent 0s and 1s, but using a specific frequency range to represent 1, another range to represent 2, another for 3... I don't know the terms for these things. Frequency-shift keying? https://en.wikipedia.org/wiki/Frequency-shift_keying

Yup, a company I co-founded http://chirp.io has been using this technique (well, MFSK) to share data over the air, between mobile and embedded devices for a while now. Easy to describe, hard to do robustly.

Can it survive a vocoder?

Re: Show HN: TCP/UDP over sound

#60
I wonder would it be possible - like in steganography - to hide the waveform in ambient noise or music so that it's not perceptible if used with speakers and microphone within audible ranges?
Post reply on HN