2022-12-12 13:12:44 +01:00
# Split Secret
2022-12-08 14:08:07 +01:00
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
```
2022-12-13 15:55:01 +01:00
## decrypt
2022-12-11 13:55:55 +01:00
2022-12-11 14:55:17 +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-08 14:08:07 +01:00
2022-12-13 16:23:24 +01:00
### decrypt accumulated file
2022-12-13 15:55:01 +01:00
To decrypt the accumulated datafile execute:
```bash
2022-12-13 16:23:24 +01:00
python scripts/main.py --mode decrypt --meta
2022-12-13 15:55:01 +01:00
```
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-08 14:08:07 +01:00
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
2022-12-13 15:55:01 +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-13 15:55:01 +01:00
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
2023-03-28 19:57:06 +02:00
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
2023-03-28 19:57:06 +02:00
Washington D.C.
< 3 < 3 < 3
2022-12-14 00:31:46 +01:00
EOL
```