mirror of https://github.com/mitchell/selfpass.git
Refactor all project READMEs
This commit is contained in:
parent
ce8596ce8a
commit
80f9705b19
|
@ -0,0 +1,69 @@
|
||||||
|
# selfpass
|
||||||
|
|
||||||
|
This is the project home of *selfpass*, the self-hosted password manager. This project is
|
||||||
|
a single-user password manager capable of encrypting/decrypting credentials and storing them
|
||||||
|
remotely through encrypted transportation. All of which is deployable locally or to popular cloud
|
||||||
|
platforms such as GCP and AWS.
|
||||||
|
|
||||||
|
It is still currently in development. However, the server is already capable of serving a gRPC
|
||||||
|
based API using mutual TLS encryption, backed by Redis and Docker. It is also capable of being
|
||||||
|
deployed in a semi-automated fashion locally and to GCP thanks to Docker.
|
||||||
|
|
||||||
|
**Server Roadmap**
|
||||||
|
|
||||||
|
| Goal | Progress | Comment |
|
||||||
|
| --- | :---: | --- |
|
||||||
|
| Support credentials CRUD on gRPC API. | 100% | |
|
||||||
|
| Enable server-side mutual TLS, using cfssl. | 100% | |
|
||||||
|
| Deployable on Docker. | 100% | |
|
||||||
|
| Automatically deployable to GCP using docker-machine and Terraform. | 50% | TODO: Terraform |
|
||||||
|
| Automatically deployable to AWS using docker-machine and Terraform. | 0% | |
|
||||||
|
|
||||||
|
## sp CLI
|
||||||
|
|
||||||
|
In addition to the server there is `sp`, which is a fully fledged *selfpass* client capable of
|
||||||
|
interacting with the whole selfpass API and creating AES-CBC encrypted credentials using a *private
|
||||||
|
key* and *master password*. All of which is done using mutual TLS and an AES-GCM encrypted config.
|
||||||
|
|
||||||
|
**CLI Roadmap**
|
||||||
|
|
||||||
|
| Goal | Progress | Comment |
|
||||||
|
| --- | :---: | --- |
|
||||||
|
| Support mutual TLS. | 100% | |
|
||||||
|
| Support credentials CRUD via gRPC. | 100% | |
|
||||||
|
| Support storage of certs, PK, and host in AES-GCM encrypted config. | 100% | |
|
||||||
|
| Support AES-CBC encryption of passes and OTP secrets, using MP and PK. | 100% | |
|
||||||
|
| Support AES-GCM encryption of local files, using MP and PK. | 100% | |
|
||||||
|
|
||||||
|
## Client
|
||||||
|
|
||||||
|
The newest addition to the *selfpass* project is the client built using Flutter, which makes it
|
||||||
|
capable of targeting to iOS, Android, and Desktop. It supports all the same features as the CLI tool
|
||||||
|
using GUIs, with all the same safety and encryption as the CLI.
|
||||||
|
|
||||||
|
| Goal | Progress | Comment |
|
||||||
|
| --- | :---: | --- |
|
||||||
|
| Support mutual TLS. | 100% | |
|
||||||
|
| Support credentials CRUD via gRPC. | 25% | TODO: CUD |
|
||||||
|
| Support storage of certs, PK, and host in shared preferences, encrypted. | 100% | |
|
||||||
|
| Support AES-CBC encryption of passes and OTP secrets, using MP and PK. | 50% | TODO: decryption |
|
||||||
|
|
||||||
|
## Other Info
|
||||||
|
|
||||||
|
**Unplanned Goals**
|
||||||
|
|
||||||
|
- Sensitive financial info support.
|
||||||
|
- Miscellaneous text/file encryption and storage support.
|
||||||
|
- Vault separation.
|
||||||
|
|
||||||
|
**Architectural 3rd-party Technologies in Use (and where)**
|
||||||
|
|
||||||
|
- Golang (services & protobuf)
|
||||||
|
- Dart (client & protobuf)
|
||||||
|
- Flutter (client)
|
||||||
|
- Go-Kit (services)
|
||||||
|
- gRPC & Protobuf (all)
|
||||||
|
- Cobra Commander & Viper Config (spc)
|
||||||
|
- Redis (services)
|
||||||
|
- Docker (services)
|
||||||
|
- Debian (docker images and machines)
|
|
@ -1,3 +1,5 @@
|
||||||
# selfpass_client
|
# selfpass_client
|
||||||
|
|
||||||
This is the multi-platform native Selfpass client built with the Flutter framework.
|
This is the multi-platform native Selfpass client built with the Flutter framework.
|
||||||
|
|
||||||
|
Still under early development.
|
|
@ -1,52 +1,5 @@
|
||||||
# selfpass
|
# services
|
||||||
|
|
||||||
This is the project home of *selfpass*, the self-hosted password manager. This project is intended
|
This is project home of *selfpass* API services and the server entrypoint.
|
||||||
to be a single-user (or **trusted** multi-user) password manager capable of encrypting/decrypting
|
|
||||||
credentials and storing them remotely through encrypted transportation, all of which is deployable
|
|
||||||
locally or to popular cloud platforms such as GCP and AWS.
|
|
||||||
|
|
||||||
It is still currently in development. However, the service is already capable of serving a gRPC based
|
For more project level information see the root `README.md`.
|
||||||
API using mutual TLS encryption, backed by Redis and Docker. It is also capable of being deployed in
|
|
||||||
a semi-automated fashion locally and to GCP thanks to Docker.
|
|
||||||
|
|
||||||
In addition to the service there is `spc` (**s**elf**p**ass **C**LI), which is a fully fledged *selfpass* client
|
|
||||||
capable of interacting with the whole selfpass API and creating AES-GCM encrypted credentials using
|
|
||||||
a *private key* and *master password*. All of which is done using mutual TLS and an AES-GCM
|
|
||||||
encrypted config.
|
|
||||||
|
|
||||||
#### Service Roadmap
|
|
||||||
|
|
||||||
| Goal | Progress | Comment |
|
|
||||||
| --- | :---: | --- |
|
|
||||||
| Support credentials CRUD on gRPC API. | 100% | |
|
|
||||||
| Enable server-side mutual TLS, using cfssl. | 100% | |
|
|
||||||
| Deployable on Docker. | 100% | |
|
|
||||||
| Automatically deployable to GCP using docker-machine and Terraform. | 50% | TODO: Terraform |
|
|
||||||
| Automatically deployable to AWS using docker-machine and Terraform. | 0% | |
|
|
||||||
|
|
||||||
#### SPC Roadmap
|
|
||||||
|
|
||||||
| Goal | Progress | Comment |
|
|
||||||
| --- | :---: | --- |
|
|
||||||
| Support credentials CRUD via gRPC. | 100% | |
|
|
||||||
| Support mutual TLS. | 100% | |
|
|
||||||
| Support storage of certs, PK, and host in AES-CBC encrypted config. | 100% | |
|
|
||||||
| Support AES-GCM encryption of passes and OTP secrets, using MP and PK. | 100% | |
|
|
||||||
| Support AES-GCM encryption of local files, using MP and PK. | 100% | |
|
|
||||||
|
|
||||||
|
|
||||||
#### Unplanned Goals
|
|
||||||
|
|
||||||
- Web client.
|
|
||||||
- Sensitive financial info support.
|
|
||||||
- Miscellaneous text/file encryption and storage support.
|
|
||||||
- Vault separation.
|
|
||||||
|
|
||||||
#### 3rd-party Technologies in Use (and where):
|
|
||||||
- Golang (all)
|
|
||||||
- Go-Kit (all)
|
|
||||||
- gRPC (all)
|
|
||||||
- Cobra Commander & Viper Config (spc)
|
|
||||||
- Redis (service)
|
|
||||||
- Docker (service)
|
|
||||||
- Debian (docker images and machines)
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
# sp
|
||||||
|
|
||||||
|
This is the project home of `sp` the *selfpass* CLI.
|
||||||
|
|
||||||
|
To install with Go run `go get -u github.com/mitchell/selfpass/sp`.
|
||||||
|
|
||||||
|
Help menu:
|
||||||
|
```
|
||||||
|
This is the CLI client for Selfpass, the self-hosted password manager. With this tool you
|
||||||
|
can interact with the entire Selfpass API.
|
||||||
|
|
||||||
|
Usage:
|
||||||
|
sp [command]
|
||||||
|
|
||||||
|
Available Commands:
|
||||||
|
create Create a credential in Selfpass
|
||||||
|
decrypt Decrypt a file using your masterpass and secret key
|
||||||
|
decrypt-cfg Decrypt your config file
|
||||||
|
delete Delete a credential using the given ID
|
||||||
|
encrypt Encrypt a file using your masterpass and secret key
|
||||||
|
get Get a credential info and copy password to clipboard
|
||||||
|
help Help about any command
|
||||||
|
init This command initializes SPC for the first time
|
||||||
|
list List the metadata for all credentials
|
||||||
|
update Update a credential in Selfpass
|
||||||
|
|
||||||
|
Flags:
|
||||||
|
--config string config file (default is $HOME/.sp.toml)
|
||||||
|
-h, --help help for sp
|
||||||
|
--version version for sp
|
||||||
|
|
||||||
|
Use "sp [command] --help" for more information about a command.
|
||||||
|
```
|
||||||
|
|
||||||
|
For more project-level information see the root `README.md`.
|
Loading…
Reference in New Issue