Poor Man's PGP Part 1: RC4 in a shell skript
With a shell account on an arbitrary POSIX semi-compliant system, one should have access to a Bourne-like Shell,
awk
,dc
,sed
and companions. Given a source of randomness this should be sufficient to code RSA + a symmetric cipher, kind of extremely poor man's PGP.I had some problems finding ways to output binary stuff from
ksh
.
UPDATE: New version seems to work with bash.Here is the first step towards it, RC4 in a shell skript. As expected, it's slow as mouldy molasses but it works and passes a test against OpenSSL's test vectors.
On Intel at 1.6 Ghz it encrypts/decrypts at 184 Bytes per second. One optimization could be to put the keystream generation entirely in a dc script, start that in a sub-process, and read single bytes from a fifo.
UPDATE: New version does this, 370 Bytes/sec now.
Sat, 14 Oct 2006
[/projects]
permanent link