optimisticninja / liberprimus-tool

Python tool/libraray for evolving solutions toward the Liber Primus from Cicada 3301
1 stars 1 forks source link

liberprimus-tool

liberprimus-tool is a Python library/program to decrypt the Liber Primus from the 2014 Cicada 3301 puzzle.

Requirements

Running

Setup

$ docker-compose up -d
$ virtualenv venv
$ source venv/bin/activate
(venv) $ pip install -r requirements.txt

Testing

$ virtualenv venv # if not already created
$ source venv/bin/activate
(venv) $ ./test.sh

Usage

usage: main.py [-h] [--pages PAGES [PAGES ...]] [--lines LINES [LINES ...]] [--segments SEGMENTS [SEGMENTS ...]] [--paragraphs PARAGRAPHS [PARAGRAPHS ...]]
               [--clauses CLAUSES [CLAUSES ...]] [--words WORDS [WORDS ...]] [--runes | --no-runes] [--ga | --no-ga]

Options for Liber Primus Tool

options:
  -h, --help            show this help message and exit
  --pages PAGES [PAGES ...]
  --lines LINES [LINES ...]
  --segments SEGMENTS [SEGMENTS ...]
  --paragraphs PARAGRAPHS [PARAGRAPHS ...]
  --clauses CLAUSES [CLAUSES ...]
  --words WORDS [WORDS ...]
  --runes, --no-runes
  --ga, --no-ga

Genetic Algorithm

(venv) $ ./main.py --ga

Known Solutions

(venv) $ ./main.py

Design

See doc/DESIGN.md

Diagrams

See doc/DIAGRAMS.md