Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/therockstorm/privacy-protect

Securely share and store passwords and sensitive files.
https://github.com/therockstorm/privacy-protect

cryptography encrypted-email encrypted-messages encryption encryption-decryption encryption-tool end-to-end-encryption password-manager password-send password-storage passwords privacy secret-sharing

Last synced: 2 months ago
JSON representation

Securely share and store passwords and sensitive files.

Awesome Lists containing this project

README

        

PrivacyProtect



End-to-end encryption without special software or accounts; only native web browser crypto APIs.



Website | Launch Blog



Lighthouse Accessibility Badge


Lighthouse Best Practices Badge


Lighthouse Performance Badge


Lighthouse SEO Badge


Security headers


SSL Rating


Ahrefs Health

[![PrivacyProtect](./static/og.png)](https://www.privacyprotect.dev/)

Share passwords and sensitive files over email or store them in insecure locations like cloud drives using nothing more than desktop or mobile web browsers like Chrome and Safari.

No special software. No need to create an account. It’s free, open-source, keeps your private data a secret, and leaves you alone.

## Table of Contents

- [Security](#security)
- [Usage](#usage)
- [CLI](#cli)
- [Acknowledgements](#acknowledgements)
- [Contributing](#contributing)
- [License](#lincense)

## Security

See [SECURITY.md](./SECURITY.md) and [privacyprotect.dev/security](https://www.privacyprotect.dev/security).

## Usage

This project uses:

- [prettier](https://prettier.io/) code formatting
- [commitlint](https://github.com/conventional-changelog/commitlint) commit message formatting
- [ESLint](https://eslint.org/) rules

### Common commands

```bash
# Install dependencies
npm install

# Run development server
npm run dev -- --open

# While editing template.html or template.ts, run watch mode to generate
# template.js and template.css
npm run watch:template
```

## CLI

### Encrypt

```bash
Usage: ./cli encrypt [OPTIONS] [--file OR --message] [OUT]

Encrypt a file or message, creating a PrivacyProtect HTML file.

Options:
--help, -h Print usage.

--file, -f Path to secret file to conceal.
--hint Password hint.
--message, -m Secret message to conceal.
--password, -p Password used to conceal your secret. Provided as a
convenience to allow for scripting. If not provided as an
option, the CLI will prompt for it and hide typed characters.
--deniableMessage Secret message to conceal. If provided, the CLI will prompt
for a second password. Entering this password while under
duress will reveal the deniableMessage instead of the
--message or --file.

Examples:
./cli.ts encrypt -m "My secret" --hint "My hint" ./out/secret.html
```

### Decrypt

```bash
Usage: ./cli decrypt [OPTIONS] [FILE]

Decrypt a PrivacyProtect HTML file.

Options:
--help, -h Print usage.
--file, -f Path to PrivacyProtect HTML file containing secret to reveal.
--password, -p Password used to reveal your secret. Provided as a
convenience to allow for scripting. If not provided as an
option, the CLI will prompt for it and hide typed characters.

Examples:
./cli.ts decrypt ./out/secret.html
```

## Acknowledgements

[`portable-secrets`](https://mprimi.github.io/portable-secret/)

## Contributing

See [CONTRIBUTING.md](./CONTRIBUTING.md). If editing README, conform to [standard-readme](https://github.com/RichardLitt/standard-readme).

## License

[MIT](./LICENSE)