17 ms·
Show HN: A new protocol for packet radio including ECDSA and compression
- Cyph0n 8y agoCool project! I have always been interested in the amateur radio scene. So encrypting amateur radio comms is illegal in the US? Is there a particular reason for this?
- M0 8y agoThis one is not encrypted. Its plaintext or compressed (gzip I think). Crypto is only for digital signatures.
- sneak 8y agoWhat if you used a nonstandard proprietary compression algorithm? Does non-encrypted have to mean “widely documented/implemented compression”?
- souterrain 8y agoI believe the motivation is that the Amateur service is largely self-policed. If communications are encrypted, it becomes harder to encourage such self-enforcement.
- dbcurtis 8y agoAFAIK it dates back to the 1930’s when spy networks were HF Morse code. Clandestine ops used HF morse well into the 1970’s, perhaps later. Pretending to be a ham was a form of cover. Sadly, being a cracker-jack Morse code operstor doesn’t get you a job with the NSA any more :) Technology has moved on.
- brians 8y agoWell, not the NSA, no—but the same skills that help with Morse are still helpful for radio listening. The prohibition on scrambled meaning long pre-dates WW2, and goes back to old analogies about fencing a commons.
- emptybits 8y agoIt's also illegal in Canada. With amateur radio "dying" as an interesting hobby (my opinion, but widely held) it is often speculated that if encryption was permitted in amateur radio communications, there would be quite a resurgence in interest. I predict a new generation would start to pick up the hobby and find untold uses (and abuses) for it.
- wedowhatwedo 8y agoYes, if encryption was permitted, there would be a ton of interest...by commercial companies. Non-licensed users would out number licensed ones by huge amounts. It would put an end to amateur radio.
- tlrobinson 8y agoRequiring messages be signed by and for keys belonging to licensed amateurs might be sufficient to discourage abuse.
- janoc 8y agoAnd how would you distinguish licensed users from unlicensed ones if the messages are encrypted? Heck, the authorities have problems policing the bands even without having to deal with crypto.
- tlrobinson 8y agoLicensed amateurs would be required to register the public keys (not private keys, of course) they want to to sign messages on amateur bands.
- wedowhatwedo 8y agoThat's what this project does. It does signing, just not encryption. I would argue that this is OK legally.
- 8y ago
- vectorEQ 8y agobecause they can't intercept your keys so cleverly as when on the internet ;)
- rtkwe 8y agoThe amateur public radio bands are supposed to be open and useful to everyone so the broadcasts in those spectra are supposed to be readable by everyone as part of the accessible part. On top of that encrypted transmissions would be basically noise pumped into the system making the open uses more difficult and harder to police.
- jimktrains2 8y ago> The amateur public radio bands are supposed to be open and useful to everyone so the broadcasts in those spectra are supposed to be readable by everyone as part of the accessible part. Except that proprietary voice codices are allowed :(
- TrueDuality 8y agoTo a certain extent yes. This is only true on frequencies allowing digital voice encoding and they technically are still required to publish the working of the codec and how to identify them even if they are patent encumbered and you can't legally resell or distribute something to decode them. These protections are to ensure the FCC / government are always able to decode amateur transmissions. These aren't protections for the operators themselves. I completely agree with your sentiments though, the amateur bands should not allow proprietary commercialization.
- rtkwe 8y agoYeah it's a bit of a compromise there it looks like. At the time the only reasonable codecs that existed were proprietary and allowing them with the stipulation that the patents be available on a 'reasonable and non-discriminatory' basis so anyone could make a commercial radio based on the codecs. At least with a proprietary codec with that patent restriction anyone can still go out and buy a compatible radio and jump right on. And if the improvement to capabilities is large enough the trade off is worth it. It's not ideal but it's much better than allowing encryption where the transmissions aren't accessible to anyone by design.
- giancarlostoro 8y ago
- jasonjayr 8y agoThis project seems to just implement signatures + verifiability to clear text messages, which I think(I am not a HAM), is allowed under the rules.
- blattimwind 8y ago> So encrypting amateur radio comms is illegal in the US? Is there a particular reason for this? Encrypting amateur radio is illegal practically world-wide — every ITU member state bans it.
- jauer 8y agoNotable exceptions: emergency communications in .AU and with publication of key in .CA.
- coreymatyas 8y agoA notable exception in the US being for the telecommand of space stations (97.211b). There's also some grey area around encryption for telecommand of terrestrial craft --- you aren't allowed to "obscure the meaning of the communication" (97.215b), but other sections of Part 97 require preventing access to telecommand stations by unlicensed operators. This has raised questions over whether disallowing encryption is more important than risking telecommand stations being maliciously hijacked.
- rphlx 8y agoFWIW there's no conflict there in terms of the cryptography. A replay-protected, keyed authenticator of plaintext commands (HMAC, etc) is not encryption; it is authentication. In a similar sense you are allowed to put a rolling log-in password on a packet radio BBS, so that passive monitoring will see the password, but as soon as it's revealed, it's no longer useful for additional logins.
- bcaa7f3a8bbc 8y agoAnother notable exception: uplink control of certain aircrafts and spacecrafts
- dokument 8y agoAnother reason. If encryption was allowed then you would have a lot of commercial use on public bands but you couldn't enforce it, etc. It would ruin the public bands for everyone.
- leetbulb 8y ago> With amateur packet radio anyone can pretend to be anyone else. With Chattervox, you can be sure you're chatting with the person you intend to. This is a great idea, for both the community and as a hobby project. Has there been any other attempts at similar protocols for amateur radio?
- moftz 8y agoYou can run just about anything over AX.25 since it's just the data link layer in the OSI model. You could run HTTP on top of IP on top of AX.25 with TLS/SSL message encryption turned off so you don't run afoul of FCC rules. The authentication would still be there but everything would be in the clear. You could also run IPsec with just the authentication field in the header, no encryption. Even if you didn't want to get that deep into the layers, you can always just pgp sign your messages on packet radio. Depending on the signature length, it could take several extra seconds to send the pgp signature at the typical 1.2Kb/s! Decreasing the complexity of the stack is a good move forward. The speeds of packet radio require a custom protocol that limits overhead but leaves options for authentication and message signing. Some hams have been using packet radio at wifi frequencies which basically creates a wireless WAN with much higher data rates, making any of the authentication methods much quicker.
- souterrain 8y agoI owe my understanding of TCP/IP to running at 1200 bauds, half duplex, with poor collision detection. http://www.ka9q.net/code/ka9qnos/ http://www.ka9q.net/code/ka9qnos/
- mmirate 8y agoWouldn't they need to significantly decrease the transmission power in order to use the ISM bands, making that application more LAN than WAN? And if the result is both legal and technologically superior to existing WiFi hardware then why hasn't the IEEE picked up on it?
- moftz 8y ago
- mycall 8y agoI would love to another version of this using gnuradio and lime sdr mini (or similar)
- braxxox 8y agoThat's a great idea! The protocol can be implemented entirely separate from this first TypeScript client application. If anyone out there has gnuradio experience, I'd love to chat with them / offer support. I'd imagine the more folks use it the more we'd learn what modifications to v1 of the protocol would be useful.
- kam 8y agoThis looks like it implements the packet processing only, and suggests using Direwolf as a software AX.25 modem. Direwolf can decode audio piped from rtl_fm or gqrx, so using a SDR is likely already possible for receive; not sure about transmit.
- mycall 8y agoMaybe the Direwolf source code can work via the python calls from gnuradio itself.
- ysleepy 8y agoMaybe messages should include a coarse timestamp to prevent replay of old messages by some adversary. Someone could resend a month old "yes" with your valid signature to a question someone asks now. Also it might be beneficial to include sequence numbers or message IDs and for example echo the last 4 ids in following messages so recipients can detect holes. - The chat could insert some placeholder to notify recipients of missing previous messages.
- jenkstom 8y agoThis is a really great idea. Might be a good github issue to open?
- boramalper 8y agoI've opened one lest it gets forgotten: https://github.com/brannondorsey/chattervox/issues/10 https://github.com/brannondorsey/chattervox/issues/10
- braxxox 8y agoI've opened an RFC for this issue and welcome comments here: https://github.com/brannondorsey/chattervox/issues/19 https://github.com/brannondorsey/chattervox/issues/19
- exabrial 8y agoA rolling code might be another similar solution to the counter.
- deleted 8y ago[deleted]
- atomical 8y agoOr a nonce?
- braxxox 8y agoFantastic idea! I intend to implement this in an upcoming release of the protocol and have opened an RFC to discuss this addition here: https://github.com/brannondorsey/chattervox/issues/19 https://github.com/brannondorsey/chattervox/issues/19
- vvanders 8y agoDoes this do any sort of FEC? One of the things that makes stuff like this tricky(and APRS in general) is that one flipped bit throws off the whole decode. From what I've seen out there would be a 40% improvement[1] in just base APRS if there was some form of basic FEC built into the protocol. Sadly most of "state of the art" is stuck back in the 80s. [1] http://eludium.stensat.org/mcguire/projects/FX-25/FX-25_performance.htm http://eludium.stensat.org/mcguire/projects/FX-25/FX-25_perf...
- aidenn0 8y agoDoes AFSK imply the use more than two frequencies? Using 4 or 8 frequencies and trellis modulating should get significant gain (i.e. using 4 frequencies and trellis modulating 1 bit per chip should be more robust than using just 2 frequencies).
- vvanders 8y agoNope, just two pairs of bell tones on the same frequency. Simple FEC just works pretty well with parity bits, just needs to be supported on all encoder/decoders.
- someguydave 8y agoAFSK, as used in amateur radio modems today, uses the Bell 202 modem standard, which is 2-ary FSK https://en.wikipedia.org/wiki/Bell_202_modem https://en.wikipedia.org/wiki/Bell_202_modem Unfortunately, most folks on the VHF/UHF bands use FM radios with pre-emphasis and de-emphasis circuitry, so you would need to design a waveform that deals with those challenges.
- Evidlo 8y agoAlso known as binary frequency shift keying (BFSK).
- moftz 8y agoAX.25 has no FEC but there is FX.25 which is an encapsulation of the AX.25 packet with a preamble at the front and reed soloman at the end. But the issue is the speed of AX.25, 1200baud is dreadfully slow to be adding much onto the packet. The FX.25 protocol is a neat idea that allows for old TNC hardware to still be on the air. However, TNCs can be built with the cheapest of the raspberry pi clones so there really is no good reason as to why things can't progress to something like FX.25. There are certainly limitation to using 1200 baud AFSK but moving outside of the audio band, you could get some higher data rate but maybe loose some dB.
- Cieplak 8y agoIf you every want to listen to ham packet radio in the US, tune your radio to 144.390 MHZ and it sounds like a modem :)
- howard941 8y agoPretty neat. I like the ECDSA for remote control.
- hfdgiutdryg 8y agoAn AX.25 packet radio chat protocol with support for digital signatures and binary compression. Like IRC over radio waves I just wanted to say thank you for such a concise, clear summary. So many projects get posted with cryptic descriptions full of insider terms.
- braxxox 8y agoThanks mate! I appreciate that. I was looking for a way to describe it that seemed as down to earth as possible. Actually I was trying to go for that with most of the documentation so far (and what will be coming). It's not always so easy with stuff this technical but it's good to hear it's working for some people.
- ChuckMcM 8y agoThis is pretty neat, and its nice that I already have all the pre-reqs :-). Although I'm wondering if I have to use the analog cable for the radio as I've got the USB one, that will be a bit of investigation.
- braxxox 8y agoAfter a bit of prodding I caved and bought an aux cable, but I've wondered the same about the audio -> USB cable. It think it's FTDI so I think a clever person might be able to figure it out. If you get anywhere with this let me know!
- deleted 8y ago[deleted]