mirror of
https://github.com/silicoflare/confidant.git
synced 2026-05-26 20:48:01 +05:30
63 lines
2.8 KiB
Markdown
63 lines
2.8 KiB
Markdown
# Confidant
|
|
|
|
## Table of Contents
|
|
1. [Introduction](#introduction)
|
|
2. [Installation](#installation)
|
|
a. [Linux](#linux)
|
|
b. [Windows](#windows)
|
|
c. [MacOS](#macos)
|
|
3. [Usage](#usage)
|
|
4. [Build from source](#build-from-source)
|
|
---
|
|
|
|
## Introduction
|
|
Confidant is a CLI tool used to create a triple-layer protected vault, written in TypeScript. It makes use of a combination of ECDH, AES256 and HMAC-SHA256 to create the vault, which can be acessible only if 3 particular files, namely `data.con`, `key.fid` and `vault.ant` (and a `config.toml`), are present. It also requires a password to start the decryption process. In case the password is lost, the vault can be recovered using the recovery phrase, which is a 12-word phrase that is generated during the vault creation process.
|
|
|
|
## Installation
|
|
### Linux
|
|
1. Download the latest release from the releases page.
|
|
2. Give it executable permissions by running `chmod +x confidant`.
|
|
3. Move it to a directory in your PATH, like `/usr/local/bin`.
|
|
4. Run `confidant --help` to verify the installation.
|
|
|
|
### Windows
|
|
1. Download the latest release from the releases page.
|
|
2. Move it to a directory in your PATH.
|
|
3. Run `confidant --help` to verify the installation.
|
|
|
|
### MacOS
|
|
1. Download the latest release from the releases page.
|
|
2. Give it executable permissions by running `chmod +x confidant`.
|
|
3. Move it to a directory in your PATH, like `/usr/local/bin`.
|
|
4. Run `confidant --help` to verify the installation.
|
|
|
|
---
|
|
|
|
## Usage
|
|
### Create a new vault
|
|
To create a new vault, run the following command:
|
|
```bash
|
|
confidant init
|
|
```
|
|
This will show a list of directories in your current directory. Select the directory where you want to create the vault. Also specify a password to encrypt the vault. The recovery phrase will be shown after the vault is created. Save it in a safe place. The following files will be created:
|
|
- `data.con`: Primary key
|
|
- `key.fid`: Secondary key
|
|
- `vault.ant`: Encrypted vault
|
|
- `config.toml`: Configuration file
|
|
- `.gitignore`: To ignore the vault files
|
|
After this, you can push the vault files to a remote repository. The `.gitignore` file will make sure the key files are not pushed to the repository. Make sure to never store the key files in the same place as the vault files.
|
|
|
|
### Decrypt a vault
|
|
To decrypt a vault, run the following command:
|
|
```bash
|
|
confidant decrypt
|
|
```
|
|
Make sure all the files `data.con`, `key.fid` and `vault.ant` are present in the current directory. Also make sure you have the password and the recovery phrase. The vault will be decrypted and the contents will be shown.
|
|
|
|
### Encrypt a vault
|
|
To encrypt a vault, run the following command:
|
|
```bash
|
|
confidant encrypt
|
|
```
|
|
Make sure the files `data.con`, `key.fid` and `vault.ant` are present in the current directory. The vault will be encrypted and the files will be updated, after which you can move them to a safe place.
|