ppvtcrypt This is an intentionally minimal encryption tool. It does not attempt to do signing, integrity checking, or authentication. The only operations are encrypting and decrypting a stream of bytes, with a single cipher using a single KDF. Run “ppvtcrypt -h” for a synopsis. Examples Encrypting a backup:: tar -cvf - --posix --lzip directory_to_store | ppvtcrypt >backup.tar.lz.ppen Unpacking a random file for view:: ppvtcrypt -d plaintext.text When reading the pass phrase from the terminal, ppvtcrypt turns off terminal echo and waits for input with the following prompt: ? Building The build.zsh script will run tests and build everything using venv. If you have the necessary dependencies installed on the host, running the make targets directly is another option. The sledgehammer approach of adding the bin directory to your PATH and the src directory to your PYTHONPATH works too, at least for quick testing. Quick build and install:: ./build.zsh pip3 install --user ./dist/ppvtcrypto-x.y.z.tar.gz The ppvtcrypt script will then usually be installed to: ~/.local/bin Reading passwords from a file Putting cleartext passwords in a file is rarely a good idea, the intention of ppvtcrypt's “-p” option is reading the password from a FIFO. (For integration with a password vault.) Tools The subdirectory “tools” contain a collection of different scripts which build on ppvtcrypt or were used when writing ppvtcrypt. Licence Copyright 2019, 2020 Steinar Knutsen Licensed under the EUPL, Version 1.2 or – as soon they will be approved by the European Commission – subsequent versions of the EUPL (the “Licence”); You may not use this work except in compliance with the Licence. You may obtain a copy of the Licence at: https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12 Unless required by applicable law or agreed to in writing, software distributed under the Licence is distributed on an “AS IS” basis, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the Licence for the specific language governing permissions and limitations under the Licence.