Skip to content

Latest commit

 

History

History
73 lines (44 loc) · 1.68 KB

README.rst

File metadata and controls

73 lines (44 loc) · 1.68 KB

choppy

chop -> encrypt -> (?) -> decrypt -> merge

Choppy partitions files and encrypts using symmetric authenticated cryptography. After decryption, embedded metadata provides for the original input file to be recreated and verified.

  • selectable number of partitions and randomized file size
  • secure cryptographic key/password input or via file
  • sequential numeric or randomized file names
  • encrypted file chunks can have name and extension altered with no detriment to recreating input file
  • chunks from multiple files can be located within the same directory and the merge command will locate and reassemble original input files

All cryptographic operations are handled by the pyca-cryptography library. My knowledge of cryptography is limited but I know enough to not write my own crypto functions.

Installation

Using pip:

pip install choppy

Without pip - clone repository:

python setup.py install

Command Line Usage

See Usage for advanced use and expanded options.

generate cryptographic key file (key.txt)

choppy gen -k

create 10 partitions of infile.txt, randomize partition size by 50% and encrypt with key file

choppy chop infile.txt -n 10 -w 50 --use-key -i key.txt

decrypt partitions and merge to reassemble original file

choppy merge *.chp.* --use-key -i key.txt

Requirements

  • Python 3.6 or greater
  • cryptography 2.1.3

License

choppy is released under the BSD 2-clause license. See LICENSE for details.