in reply to Re: Obfu/golf Contest
in thread Obfu/golf Contest

I just realized something to hide&reduce those strings: You use exactly 32 different characters (excluding newline), so you might be able to encode them with 5-bit codes and pack them tightly into a bitstring which you put as raw binary data into the file. This will make all strings almost twice as short and totally unreadable.

•Update: sorry, mind blurp.. I was already thinking a bit ahead. You use less than 32 chars, but if you take a..z and add the remaining ones you use ('P', 'S', ' ', '.', "'", ':') it adds up to 32. Using a..z is useful since it's more compact than explicitly listing all chars you really use.

The issue is how to compactly write the decoding logic. You'll have to play with unpack 'B*' etc. Also use barewords when possible (unpack B99, or if you need a list of chars for the logic you can do a..z)

I don't have time to try this myself right now, maybe someone else can figure it out from here