Staticbit is a collection of scripts to encode data as static noise.
The staticbit scripts require Python and NumPy.
To install these on a Debian GNU/Linux system:
$ sudo apt-get install python python-numpy
Encode a file as static noise:
$ python staticbit.py -e foo.wav < staticbit.py
The script prompts for a key (a 32-bit number), reads from standard input, and outputs a WAVE file. Decode it:
$ python staticbit.py -d foo.wav
The staticbyte script is similar to staticbit but encodes bytes not bits. Its output is smaller but decoding takes much longer.
I have encoded two files of equal length:
$ python staticbit.py -e a.wav < README.md
$ wc README.md
4 23 151 README.md
$ python -c "print('\x00' * 150)" | python staticbit.py -e b.wav
Download the files from the release named Puzzle 1.
Determine which file is which and prove it.
There is a message in the file puzzle2.wav. What does it say?
Download the file from the release named Puzzle 2.
Hint: The noise is the message and the message is the noise.
Like Puzzle 2 but using staticbyte instead of staticbit.
Download the file from the release named Puzzle 3.