Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 0 additions & 7 deletions .prettierrc

This file was deleted.

54 changes: 38 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,22 +16,41 @@

## What is Polykey?

**Polykey is an open-source, peer-to-peer system** that addresses the critical challenge in cybersecurity: **the secure sharing and delegation of authority**, in the form of secrets like keys, tokens, certificates, and passwords.

It allows users including developers, organizations, and machines—to **store these secrets in encrypted vaults on their own devices, and share them directly with trusted parties.**

- **All data is end-to-end encrypted**, both in transit and at rest, eliminating the risk associated with third-party storage.
- **Polykey provides a command line interface**, desktop and mobile GUI, and a web-based control plane for organizational management.
- By treating secrets as tokenized authority, it offers a fresh approach to **managing and delegating authority in zero-trust architectures** without adding burdensome policy complexity - a pervasive issue in existing zero-trust systems.
- Unlike complex self-hosted secrets management systems that require specialized skills and infrastructure, Polykey is **installed and running directly from the end-user device**.
- It is built to **automatically navigate network complexities** like NAT traversal, connecting securely to other nodes without manual configuration.
**Polykey is an open-source, peer-to-peer system** that addresses the critical
challenge in cybersecurity: **the secure sharing and delegation of authority**,
in the form of secrets like keys, tokens, certificates, and passwords.

It allows users including developers, organizations, and machines—to **store
these secrets in encrypted vaults on their own devices, and share them directly
with trusted parties.**

- **All data is end-to-end encrypted**, both in transit and at rest, eliminating
the risk associated with third-party storage.
- **Polykey provides a command line interface**, desktop and mobile GUI, and a
web-based control plane for organizational management.
- By treating secrets as tokenized authority, it offers a fresh approach to
**managing and delegating authority in zero-trust architectures** without
adding burdensome policy complexity - a pervasive issue in existing zero-trust
systems.
- Unlike complex self-hosted secrets management systems that require specialized
skills and infrastructure, Polykey is **installed and running directly from
the end-user device**.
- It is built to **automatically navigate network complexities** like NAT
traversal, connecting securely to other nodes without manual configuration.

**Key features:**

- **Decentralized Encrypted Storage** - No storage of secrets on third parties, secrets are stored on your device and synchronised point-to-point between Polykey nodes.
- **Secure Peer-to-Peer Communication** - Polykey bootstraps TLS keys by federating trusted social identities (e.g. GitHub).
- **Secure Computational Workflows** - Share static secrets (passwords, keys, tokens and certificates) with people, between teams, and across machine infrastructure. Create dynamic (short-lived) smart-tokens with embedded policy for more sophisticated zero-trust authority verification.
- With Polykey Enterprise, you can create private networks of Polykey nodes and apply mandatory policy governing node behaviour.
- **Decentralized Encrypted Storage** - No storage of secrets on third parties,
secrets are stored on your device and synchronised point-to-point between
Polykey nodes.
- **Secure Peer-to-Peer Communication** - Polykey bootstraps TLS keys by
federating trusted social identities (e.g. GitHub).
- **Secure Computational Workflows** - Share static secrets (passwords, keys,
tokens and certificates) with people, between teams, and across machine
infrastructure. Create dynamic (short-lived) smart-tokens with embedded policy
for more sophisticated zero-trust authority verification.
- With Polykey Enterprise, you can create private networks of Polykey nodes and
apply mandatory policy governing node behaviour.

## Table of Contents

Expand All @@ -46,7 +65,8 @@ It allows users including developers, organizations, and machines—to **store t

## Installation

Note that JavaScript libraries are not packaged in Nix. Only JavaScript applications are.
Note that JavaScript libraries are not packaged in Nix. Only JavaScript
applications are.

Building the package:

Expand Down Expand Up @@ -114,7 +134,8 @@ When calling commands in development, use this style:
npm run polykey -- p1 p2 p3
```

The `--` is necessary to make `npm` understand that the parameters are for your own executable, and not parameters to `npm`.
The `--` is necessary to make `npm` understand that the parameters are for your
own executable, and not parameters to `npm`.

### Docs Generation

Expand All @@ -137,4 +158,5 @@ git push --tags

## License

Polykey-CLI is licensed under the GPLv3, you may read the terms of the license [here](LICENSE).
Polykey-CLI is licensed under the GPLv3, you may read the terms of the license
[here](LICENSE).
2 changes: 1 addition & 1 deletion npmDepsHash
Original file line number Diff line number Diff line change
@@ -1 +1 @@
sha256-aPi3zvTpqF8gN+cEz5A+F1fjN6jB4alkxhoLcFomr8c=
sha256-AmceWTFRZhQwgCaeNYxbx472oAfSczYh5E1Bw/xEGs0=
8 changes: 4 additions & 4 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -136,7 +136,7 @@
"sodium-native": "*"
},
"devDependencies": {
"@matrixai/lint" : "^0.2.6",
"@matrixai/lint" : "^0.2.11",
"@matrixai/errors": "^2.1.3",
"@matrixai/logger": "^4.0.3",
"@matrixai/exec": "^1.0.3",
Expand Down