split-secret/README.md

114 lines
2.6 KiB
Markdown
Raw Permalink Normal View History

2022-12-12 13:12:44 +01:00
# Split Secret
The purpose of this software is to splitt a secret over multiple people. Just if a defined amount of this people meet together they can encrypt the secret and have access to it.
2022-12-11 13:55:55 +01:00
## requirements
### system
2022-12-11 16:47:07 +01:00
This software is developed for and on an [Arch Linux](https://archlinux.org/) system.
2022-12-11 13:55:55 +01:00
### setup
Before executing the script it may be necessary to install the following software packages:
```bash
pacman -S gpg tar python pip python-pip
pip install numpy
```
## commands
## cleanup data
2022-12-15 09:33:30 +01:00
### cleanup for user
To delete all data which isn't necessary for the user:
```bash
python scripts/main.py --mode cleanup --user "<<user>>"
```
2022-12-11 13:55:55 +01:00
### delete all data
To delete all data execute:
```bash
python scripts/main.py --mode cleanup
```
### delete decrypted data
2022-12-14 00:31:46 +01:00
To delete all decrypted data execute:
2022-12-11 13:55:55 +01:00
```bash
python scripts/main.py --mode cleanup --file-types decrypted
```
### delete all encrypted data
To delete all encrypted data execute:
```bash
python scripts/main.py --mode cleanup --file-types encrypted
```
## decrypt
2022-12-11 13:55:55 +01:00
### decrypt automatic
2022-12-11 18:46:32 +01:00
To decrypt the data execute:
2022-12-11 13:55:55 +01:00
2022-12-09 20:54:33 +01:00
```bash
2023-03-28 19:43:23 +02:00
python scripts/main.py --mode decrypt
2022-12-09 20:54:33 +01:00
```
2022-12-13 16:23:24 +01:00
### decrypt accumulated file
To decrypt the accumulated datafile execute:
```bash
2022-12-13 16:23:24 +01:00
python scripts/main.py --mode decrypt --meta
```
2022-12-11 13:55:55 +01:00
### decrypt defined user
2022-12-11 18:46:32 +01:00
To decrypt the data for a defined user execute:
2022-12-09 11:19:21 +01:00
```bash
2022-12-11 13:55:55 +01:00
python scripts/main.py --mode decrypt --user "<<user_id>>"
2022-12-09 11:19:21 +01:00
```
2022-12-08 21:25:03 +01:00
### addtional instructions
2022-12-14 00:31:46 +01:00
In the [INSTRUCTIONS.md](./INSTRUCTIONS.md) file the master encrypter can leave additional instructions.
2022-12-11 13:55:55 +01:00
## encrypt
2022-12-11 18:46:32 +01:00
### encrypt main data
2022-12-11 13:55:55 +01:00
```bash
2022-12-11 18:46:32 +01:00
python scripts/main.py --secret-holders-amount "<<amount>>" --quota "<<quota>>" --mode encrypt --master-password "<<master_password>>" --input-directory "<<input_directory>>"
2022-12-11 13:55:55 +01:00
```
2022-12-14 00:31:46 +01:00
### generate encryption data
2022-12-11 18:46:32 +01:00
To encrypt the master-password file and to create the neccessary encrypted meta data execute:
```bash
2022-12-13 16:23:24 +01:00
python scripts/main.py --secret-holders-amount "<<amount>>" --quota "<<quota>>" --mode encrypt --add-user-information --master-password "<<master_password>>" --meta
2022-12-12 13:12:44 +01:00
```
2022-12-14 00:31:46 +01:00
### generate encryption data with user info
To encrypt the master-password file and to create the neccessary encrypted meta data with additional user infos data execute:
```bash
python scripts/main.py --secret-holders-amount "3" --quota "50" --mode encrypt --add-user-information --master-password "<<master_password>>" --meta --add-user-information << EOL
Alan Turing
+ 12358
turing@turing-bomb.world
Bletchley Park
¯\_(ツ)_/¯
Ada Lovelace
+ 132134
best@algorythm.ai
Somewhere in London
:)
John von Neumann
+ 5488142
2022-12-14 00:31:46 +01:00
test@test3.de
Washington D.C.
<3 <3 <3
2022-12-14 00:31:46 +01:00
EOL
```