You should reread the thread. In short, first you compress the data to 28 bytes (at which point "all manner of control characters and 8-bit characters" are perfectly acceptable), then you encode it into 45 safe characters using a 32 bit variant of Base64.