Skip to content

j4c0bs/choppy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

chop, encrypt, decrypt, merge

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages