https://github.com/valflrt/fencryption
Fencryption is program to encrypt and decrypt files and full directories. Development stopped.
https://github.com/valflrt/fencryption
cli encryption-decryption rust
Last synced: 6 months ago
JSON representation
Fencryption is program to encrypt and decrypt files and full directories. Development stopped.
- Host: GitHub
- URL: https://github.com/valflrt/fencryption
- Owner: valflrt
- License: mit
- Created: 2022-08-31T17:24:43.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-01-21T11:20:36.000Z (over 2 years ago)
- Last Synced: 2026-01-14T11:50:23.166Z (6 months ago)
- Topics: cli, encryption-decryption, rust
- Language: Rust
- Homepage:
- Size: 252 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
- [Fencryption (binary)](#fencryption-binary)
- [Preview](#preview)
- [Limitations/Issues](#limitationsissues)
- [Roadmap](#roadmap)
- [fencryption-lib](#fencryption-lib)
# Fencryption (binary)
> I first built this program with typescript (see [fencryption-typescript](https://github.com/valflrt/fencryption-typescript)) but I switched to Rust because typescript was not the most suitable language for this kind of project and also because I wanted to try Rust and low-level programming.
Fencryption is program to encrypt and decrypt files and full directories. Note that this project is at an early stage of development.
**THERE IS ABSOLUTELY NO WARRANTY THAT THIS PROGRAM DOES NOT CONTAIN VULNERABILITIES. USE IT AT YOUR OWN RISK.**
This program is not supposed to be used in "real conditions" as it is a mere personal project. Although I think above v1.0 (not released yet) the commands encrypt and decrypt should be pretty safe.
> jan 2024 edit: I am currently in intensive studies, so I won't be able to continue working on this project for the next two years.
## Preview
```
fencryption --help
```
```
A program to encrypt/decrypt text and files
Usage: fencryption [OPTIONS]
Commands:
encrypt Encrypt text or files
decrypt Decrypt text or files
help Print this message or the help of the given subcommand(s)
Options:
-D, --debug Enable debug log
-h, --help Print help
-V, --version Print version
```
encrypt file
```
fencryption encrypt file --help
```
```
Encrypt files and directories
Usage: fencryption encrypt file [OPTIONS] ...
Arguments:
... Paths of the files to encrypt
Options:
-o, --output-path Set output path (only supported when one input path is provided)
-O, --overwrite Overwrite output
-d, --delete-original Delete original files after encrypting
-D, --debug Enable debug log
-h, --help Print help
```
decrypt file
```
fencryption decrypt file --help
```
```
Decrypt files and directories
Usage: fencryption decrypt file [OPTIONS] ...
Arguments:
... Paths of files to encrypt
Options:
-o, --output-path Set output path (only supported when one input path is provided)
-O, --overwrite Overwrite output
-d, --delete-encrypted Delete encrypted files after decrypting
-D, --debug Enable debug log
-h, --help Print help
```
encrypt text
```
fencryption encrypt text --help
```
```
Encrypt text
Usage: fencryption encrypt text [OPTIONS]
Arguments:
Text to encrypt
Options:
-D, --debug Enable debug log
-h, --help Print help
```
decrypt text
```
fencryption decrypt text --help
```
```
Decrypt text
Usage: fencryption decrypt text [OPTIONS]
Arguments:
Text to decrypt (base64 encoded)
Options:
-D, --debug Enable debug log
-h, --help Print help
```
## Limitations/Issues
- When encrypting files, make sure to encrypt and decrypt them with the same version of fencryption (it is very likely that different versions will not work the same way)
## Roadmap
- [x] Provide better help about commands
- [x] Add default file encryption features
- [x] Add stream enc-/decryption features
- [x] Setup directory recursive mapping
- [x] Improve log, error handling and cli
- [x] Implement multithreading
- [x] Edit encryption process so the output file is smaller
- [x] Add commands to enc/decrypt text/base64
- [ ] Come up with a stable version (v1.0)
# fencryption-lib
The lib used in the fencryption binary. You can [take a look](https://docs.rs/fencryption/latest/fencryption_lib/), it has some interesting things...