Compressed SMS (and other text messages)

Mikko Rauhala mjrauhal at
Wed Mar 21 00:15:55 CET 2007


Didn't appear in the wiki, so I figured I'd throw it out there first:
compressed SMS for when a persistent TLS-encrypted and -compressed
Jabber connection just isn't there (eg. if it would be too expensive in
a particular locale), but you need to send "long" text messages. With
SMS, every 140 bytes costs loads of money. (Yes, it's 140 bytes, people;
160 characters in 7-bit charsets.)

So. We can't very well send a compression dictionary along with each
SMS. Instead, we'll start producing one upon sending the first SMS to
another Moko user (might be necessary to mark Moko peers manually, or is
there a way to identify them?). The recipient produces the same.

The next message between the two will be compressed with the compression
dictionary previously generated. The new data will deterministically
modify the compression dictionary on both ends. These are cyclically
numbered and several previous versions will be stored in case the
parties get out of sync.

Optional: Allow compression dictionary to be generated from a set of
messages, and be transferred to another phone as a baseline (presumably
when better connectivity is available). Or even as a final frozen
dictionary, which would avoid possible races and other sync problems.

Aside: Encrypt SMSs, either with a shared secret or a one-time pad
similarly pre-copied between phones.

That's it for tonight. Probably not very essential, but it's a thought.

Mikko Rauhala   - mjr at     - <URL:>
Transhumanist   - WTA member     - <URL:>
Singularitarian - SIAI supporter - <URL:>

More information about the community mailing list