Skip to content

Generate a Chef program that outputs given string, as a means of creative encryption/obfuscation/steganography

License

Notifications You must be signed in to change notification settings

Maxzilla60/Concoction

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Concoction 🍸

Generate a Chef program that outputs given string, as a means of creative encryption. 🥚

What ❔

This script will take a string and generate a program (concoction.chef) written in the Chef esoteric programming language.

Since Chef is a fairly obscure language that, to those that aren't familiar with it, doesn't really look like code, its use is suggested to be a creative way of encrypting a string.

The way to "decrypt" it is to use a Chef interpreter to run the generated program.

How ❓

Generating:

  • Get yourself Python 3
  • Run the script with a given string
  • Check out the generated .chef file

Running Chef:

Running the Script 📄

concoction.py "Hello World" (Generating)

concoction.py -f my_file.txt (Generating from file contents)

concoction.py -o my_outputfile.txt "Hello World" (Setting the output file name)

chef concoction.chef (Running Chef)

Usage ℹ️

usage: concoction.py [-h] [-o OUTPUT] [-f] [-v] [-s] input

positional arguments:
    input                       string to convert to chef program

optional arguments:
    -h, --help                  show this help message and exit
    -o OUTPUT, --output OUTPUT  set filename for generated chef program, 
                                default is concoction.chef
    -f, --file                  use file as input
    -v, --verbose               allow verbose; the script will print out
                                what it's doing, default is False
    -s, --seeded                allow seeded randomness; the script will
                                use the given input string as a seed for
                                the randomization, default is False

Note ❗

The script currently supports a limited amount of characters, see ingredients.py.

Obviously, do not attempt to create and drink the generated concoctions! 😟

TODO 📋

  • More creative names for ingredients.py!
  • Random recipe title
  • Also get dry ingredients into the mix!
  • Support files as input
  • Remove one-to-one relationship between ASCII character and ingredient name
  • Unit tests
  • Fix web version

About

Generate a Chef program that outputs given string, as a means of creative encryption/obfuscation/steganography

Topics

Resources

License

Stars

Watchers

Forks