Amateur Radio Universal Text Messaging/Contact Initiative
aprs.org
aprs.org
I've built an APRS library for Go as part of a high-altitude balloon project that I've been working on. It can encode and decode APRS messages, ACK received messages, and send/receive APRS packets over AX.25/KISS (over serial or TCP/IP). The library is currently bundled with the balloon code but I plan on breaking it out into its own project soon.
Code here:
APRS library: https://github.com/chrissnell/GoBalloon/tree/master/aprs
AX.25 encoding/decoding: https://github.com/chrissnell/GoBalloon/tree/master/ax25
APRS-IS library (thanks to @dustin): https://github.com/chrissnell/GoBalloon/tree/master/aprsis
This will sound heretical but I simply don't want push mode text. What it fixes will be smaller than what it screws up.
A quarter century ago I was heavily into ham radio packet BBS systems (and also node hopping or node dxing or whatever its called) and before internet spam was a problem we had pbbs spam. I remember the first cantor and siegel usenet spam in 93 or so... Anyway packet bbs spam was "its free to send the entire planet a forsale offer to sell my worn out beaten up dented HT for $5 less than a new one (plus $10 shipping). So why not. In fact why not send my sale notice every freaking 6 hours. For weeks." Or the ever popular "Rusty abused slightly bent rohn 25 tower section in the middle of nowhere, you ship it, $5 less than a new one" or "Willing to trade broken 1975 crystalized FM 2M mobile rig (worth about $10) for brand new icom IC781 (worth at the time about $8K), serious offers only pse 73".
I actually read every PBBS post that went thru the forwarding network until 1991 or so when some categorization scheme was introduced and I could start ignoring forsale posts. Also traffic levels rose over the years.
Another awesome one was back in the early ka9q nos era you'd have people spamming literally the entire planet because they couldn't bother reading the manual to figure out how to calculate an IP netmask, or for the entire era couldn't be bothered to glance at their radio's programming manual so why not just bug 100K people instead.
Anyway, yeah, spam, I'm not imagining things would improve on the spam front, nor is there apparently any technological ideas to fix it.
If you implement a tech thats free to push to a lot of people more or less anonymously, you're going to end up with a steaming pool of spam and no users soon enough.
Finally a huge PBBS problem from a quarter century ago was the proverbial frequency cops would turn into a total PITA with respect to censorship. Its not enough that they felt the need to interpret the regs their way, but god help the souls of anyone else in the world who doesn't interpret the regs the same way. The little old lady busybodies of ham radio. Anyway their attempts to "fix" the spam problems tended to only make things worse. In fact they made things dramatically worse in some areas. Which from their own troll-ish viewpoint was likely a big win. So how is this push tech going to work around both direct and meta-level trolls, which were a huge problem 25 years ago.
If your network is going to broadcast though to many recipients, shaming is about the only way to reduce this. Making sure the sender is who they say they are is very important as well (like it is with email), but I wouldn't suggest it would be successful in making it go away.
Once you start identifying senders explicitly, then circles of nodes can be established that can limit entrance and or ostracise people who are annoying. You have to attach cost to messaging in order to senders to value their message, and other than charging a real amount of money which is probably not a good idea, cultural and social costs are very important in establishing trust and getting people to think more when they send.
Fortunately humans have been doing this for 1000's of years, so if you put all the pieces there, it should work fairly naturally.
Even worse, the few people who ran pbbs'es who felt like gatekeepering and filtering generally made things worse rather than better. The usual social effect of only giving power to the extremists with the strongest feelings.
There wasn't much if any problems 25 yrs ago on pbbs systems that would be fixed by cryptographic identity proofs. In fact I can't remember a problem like that ever having happened.
The very problem with the 1000s of years thing is the "tribe" 8000 years ago was like 10-100 people, but the "tribe" on the worldwide pbbs network got to tens of thousands and collapsed as it expanded. So the "solution" to "fix" multiple small stable current day subnetworks is to merge and interop them together until there's one big tribe that naturally will collapse just like pbbs behavior, or for that matter landline modem bbs behavior or usenet or many other examples.
The fundamental problem of using computers as socialization tools is their tech scales with tribe size a lot better than interpersonal relationships. And it doesn't seem to vary much with culture unlike virtually everything else. It may be a truth there is no way to have a stable "tribe" of 100K users, no matter what technology may permit.
Remembering the BBS days, the only troubles we experienced were on the bigger systems where it became impractical to vet users consistently. Newsgroups that were closed membership worked much better than open ones.
Cryptographic identity makes this easier to handle, but it's not the only way. For example, on a system the size of Facebook, the only one spamming me is Facebook. This is because of the social nature of my group. I know everyone (more or less) and can kick them if need be.
The spammers have to pay to play, which unfortunately isn't keeping it down to 0 on Facebook, but probably less than it would be normally.
The more extreme space bouncing is "moonbounce" where the moon is used as a communications satellite, but that's not APRS, and certainly not doable with small equipment.
In Canada, the Radiocommunication Regulations only permit amateur stations to 'use a code or cipher that is not secret'. That prohibits any form of encryption unless you publish all keys involved in the transmission. By my reading of it, it also seems to prohibit creating a digital signature, since such a signature could be considered a code that is based on a key that is not public (otherwise anyone could forge your signature). I'm not sure if there's any official rulings on this.
APRS is a system that has good uses but the Internet is revolutionary.
EDIT: Though I suspect this isn't really practical. Are there any amateur bands near the GSM/CDMA bands?
How did Chris Paget's IMSI catcher demo at Defcon a few years ago work then? http://blog.marinetelecom.net/2010/08/01/ham-radio-operator-...
Oh, it's actually not too difficult to modify transceivers to work outside their regional prescribed bands. There are usually internal jumpers or, more recently, firmware modifications to expand their tuning ranges to include bands normally only allowed in other regions. Some of the software defined radios are surprisingly malleable. I was actually mostly just thinking about the possibility of getting a GSM phone to hit an amateur band freq or vice-versa without a lot of hacking.
This is why the emcom guys do ham radio instead of just packing a backup smart phone.
Your point still stands that only about 0.3% of the US population have a ham radio license and less have gear stet up for this peculiar mode.