I don't think this question is one topic for the Cryptography Stack Exchange, but, just for the sake of anyone who finds it on Google, let me give what I think is the answer.
I don't have Uplink for iPad (nor, in fact, an iPad at all), but I do have it for Windows, so I went and took a look at my save file. After stripping off the
REDSHRT2 prefix and XORing every byte with
0x80 (which is what's supposed to do the trick for plain old REDSHIRT encoding), a hex dump of the output looks like this:
0000000: 8099 f313 630f 668b 0fb8 c492 3e98 3bd1 ....c.f.....>.;.
0000010: 80b9 2b9e 6953 4156 3632 0001 0000 0001 ..+.iSAV62......
0000020: 0000 0016 0000 0020 0000 0007 0000 0001 ....... ........
... some lines omitted for brevity ...
0000170: 0010 0000 0042 656e 6a61 6d69 6e20 486f .....Benjamin Ho
0000180: 7765 6c6c 000a 0000 0053 6561 6e20 4d65 well.....Sean Me
0000190: 6164 0002 0000 0020 0001 0000 0000 0001 ad..... ........
The rest of the output looks like plain ASCII text interspersed with binary data containing lots of null bytes, just about what you'd expect from a binary save-game format. So it looks like the
SAV62 is in fact the internal header for the unencrypted save file format, and you don't need to do anything to decrypt your files any further.
(I'm not sure what the 21 bytes before the
SAV62 header are about, but I suspect they're some kind of checksum. The first byte after
REDSHRT2 is null in all the save files I have, which would leave 20 bytes = 160 bits for the checksum. That's about right for, say, an SHA-1 hash, but they don't seem to actually match the SHA-1 hash of the remaining data.)