Find a file
James Bowes e2f492f120 Add command line modes to unpack
Add modes to print stats, dump the content sets, and check a path to see
if it matches a content set.
2012-08-11 15:02:00 -03:00
.gitignore Fix bug in duplicate detection. 2012-07-28 12:46:03 -03:00
huffman.c Decoding working for C 2012-08-11 14:16:29 -03:00
huffman.h Add huffman decoding for C 2012-08-09 17:51:05 -03:00
huffman.rb Add huffman decoding for C 2012-08-09 17:51:05 -03:00
Makefile Add huffman decoding for C 2012-08-09 17:51:05 -03:00
README.md update readme for markdown header format 2012-08-08 09:27:36 -03:00
thing.rb Decoding working for C 2012-08-11 14:16:29 -03:00
unpack.c Add command line modes to unpack 2012-08-11 15:02:00 -03:00
unpack.rb making the ruby unpacker have the same outcome as unpack.c 2012-08-07 09:49:21 -04:00

Overview

POC to compile a data set into a modified radix tree, and applying huffman encoding.

Usage

Take in an v1 x509 certificate, and extract the content sets, output them to newline delimited output

$> ruby ./thing.rb d this-cert.pem

This would produce a file named 'this-cert.txt'

To see this txt list, in the tree format, do:

$> ruby ./thing.rb p this-cert.txt | less

Process this output to generate the compiled dictionary output

$> ruby ./thing.rb c this-cert.txt

This would produce a file named 'this-cert.bin' Then, the unpack the binary with:

$> ./unpack this-cert.bin or $> ruby ./unpack.rb this-cert.bin

The 'thing.rb' supports a "-v" verbose flag.

Code compiles

To compile the 'unpack' command, just run make. ( this requires make, gcc, and zlib-devel)