<commit_before># Enchive : encrypted personal archives

Enchive is a tool to encrypt files to yourself for long-term archival.
It's a focused, simple alternative to more complex solutions such as
GnuPG or encrypted filesystems. Enchive has no external dependencies
and is trivial to build for local use. Portability is emphasized over
performance.

Supported platforms: Linux, BSD, macOS, Windows

The name is a portmanteau of "encrypt" and "archive," pronounced
en'kīv.

Files are secured with ChaCha20, Curve25519, and HMAC-SHA256.

* [`enchive(1)`](http://nullprogram.com/enchive/)

## Installation

Clone this repository, then:

    $ make PREFIX=/usr install

This will install both the compiled binary and manual page under
`PREFIX`. For staged installs, `DESTDIR` is also supported. The binary
doesn't have any external dependencies and doesn't actually need to be
installed before use.

## Usage

There are only three commands to worry about: `keygen`, `archive`, and
`extract`. The very first thing to do is generate a master keypair
using `keygen`. You will be prompted for the passphrase to protect the
secret key, just like `ssh-keygen`.

    $ enchive keygen

By default, this will create two files in `$XDG_CONFIG_HOME/enchive`
(or `$HOME/.config/enchive`): `enchive.pub` (public key) and<commit_msg>Clarify manual link in README<commit_after># Enchive : encrypted personal archives

Enchive is a tool to encrypt files to yourself for long-term archival.
It's a focused, simple alternative to more complex solutions such as
GnuPG or encrypted filesystems. Enchive has no external dependencies
and is trivial to build for local use. Portability is emphasized over
performance.

Supported platforms: Linux, BSD, macOS, Windows

The name is a portmanteau of "encrypt" and "archive," pronounced
en'kīv.

Files are secured with ChaCha20, Curve25519, and HMAC-SHA256.

Manual page: [`enchive(1)`](http://nullprogram.com/enchive/)

## Installation

Clone this repository, then:

    $ make PREFIX=/usr install

This will install both the compiled binary and manual page under
`PREFIX`. For staged installs, `DESTDIR` is also supported. The binary
doesn't have any external dependencies and doesn't actually need to be
installed before use.

## Usage

There are only three commands to worry about: `keygen`, `archive`, and
`extract`. The very first thing to do is generate a master keypair
using `keygen`. You will be prompted for the passphrase to protect the
secret key, just like `ssh-keygen`.

    $ enchive keygen

By default, this will create two files in `$XDG_CONFIG_HOME/enchive`
(or `$HOME/.config/enchive`): `enchive.pub` (public key) and
{'fraction_non_alphanumeric': 0.07457627118644068, 'fraction_numerical': 0.008286252354048965, 'mean_word_length': 4.724137931034483, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3124282', 'n_tokens_mistral': 807, 'n_tokens_neox': 740, 'n_words': 359}