Skip to content

Commit 3a7a2b3

Browse files
xrissoulaaryanjassal
authored andcommitted
feat: restructured layout, added encryption-at-rest detail
fix: lint fix: frontmatter sidebar
1 parent 6f1404d commit 3a7a2b3

File tree

2 files changed

+86
-91
lines changed

2 files changed

+86
-91
lines changed

docs/README.md

Lines changed: 73 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -3,120 +3,110 @@ slug: /
33
displayed_sidebar: docs
44
---
55

6-
# Polykey Documentation
6+
# **Welcome to the Polykey documentation**
77

8-
Welcome to the Polykey documentation.
8+
- [Tutorials:](https://polykey.com/docs/tutorials) Step-by-step guides that
9+
introduce Polykey through practical outcomes.
910

10-
- [Tutorials](./tutorials) - these are a series of steps to introduce Polykey to
11-
new beginners to achieve a practical outcome
12-
- [How-To Guides](/docs/how-to-guides) - these are short guides on how to
13-
achieve a specific use-case which makes assumptions on the reader
14-
- [Theory](./theory/) - these are important for understanding the "why" of
15-
Polykey
16-
- [Reference](./reference/) - these are useful when you need remember how to use
17-
a particular command or function
11+
- [How-To Guides:](https://polykey.com/docs/how-to-guides) Short, targeted
12+
instructions for achieving specific use-cases, assuming prior familiarity.
13+
14+
- [Theory:](https://polykey.com/docs/theory/) Conceptual foundations explaining
15+
the rationale behind Polykey.
16+
17+
- [Reference:](https://polykey.com/docs/reference/) Lookup documentation for
18+
commands, functions, and technical specifications.
1819

1920
## Introduction
2021

21-
Polykey helps yourself, teams and software agents to manage and share secrets in
22-
a secure and easy-to-use manner.
23-
24-
- Usable for the average person, you don't need to be a cryptography or
25-
cybersecurity expert to securely manage and share secrets.
26-
- Can be integrated into software for automation of secret workflows.
27-
- Unifies the workflow between interactive password management and
28-
infrastructure key management.
29-
- Decentralized and local-first software that does not hand over your secrets to
30-
the cloud. You maintain sovereignty over your secrets on your devices.
31-
- Easily backup and synchronise your secrets across all your devices: desktop,
32-
mobile or server.
33-
- End to end encryption for all network communication.
34-
- All data is encrypted at rest, thus preventing compromise even if devices are
35-
lost or stolen.
36-
37-
PolyKey is an open-source decentralised peer to peer secrets management system.
38-
It provides a software agent that runs on your device locally. Each agent
39-
process is a node in the Polykey peer to peer network. This agent manages your
40-
secret data and is capable of sharing secrets with other trusted Polykey agents.
41-
The secret data can be placed inside any directory on your computer including on
42-
USB storage.
22+
Polykey helps individuals, teams, and software agents manage and share secrets
23+
securely and intuitively.
4324

44-
## Features
25+
- **User-Friendly:** Designed for everyday users, with no need to be a
26+
cryptography or cybersecurity expert.
4527

46-
## Features
28+
- **Automation-Ready:** Integrates into software workflows for automated secret
29+
handling.
30+
31+
- **Unified Secrets Management:** Bridges the gap between personal password
32+
management and infrastructure-level key handling.
4733

48-
Polykey is designed to offer a robust, decentralized secrets management experience. Key features include:
34+
- **Decentralized and Local-First:** Your secrets never leave your device unless
35+
you choose to share them.
4936

50-
- **Decentralized & Local-First:**
51-
Polykey operates locally on your device in a peer-to-peer network, ensuring your secrets remain under your control without reliance on centralized cloud services.
37+
- **Seamless Synchronization:** Backup and sync secrets across desktops, mobile
38+
devices, and servers.
5239

53-
- **State-of-the-Art Cryptography:**
54-
Utilizes modern encryption protocols such as XChaCha20-Poly1305 for secure symmetric encryption, complemented by secure key exchange (X25519) and digital signatures (Ed25519), providing both confidentiality and data integrity.
40+
- **Comprehensive Encryption:** All data is end-to-end encrypted in transit and
41+
encrypted at rest.
5542

56-
- **Secure Vault Architecture:**
57-
Secrets are organized into fully encrypted, version-controlled vaults that function like a secure, virtual filesystem - enabling safe storage, backup, and sharing with trusted peers.
43+
Polykey is an open-source, peer-to-peer secrets management system. Each Polykey
44+
agent runs locally as a node in the network, managing secrets and enabling
45+
sharing with trusted peers. Secrets are stored within encrypted vaults and can
46+
be placed anywhere on your system, including external storage like USB drives.
5847

59-
- **Gestalt Identity Model:**
60-
Employs a unique decentralized identity system where multiple digital identities combine to form a Gestalt Identity, ensuring secure and trusted secret sharing across the network.
48+
## Features
6149

62-
- **Seamless Integration & Automation:**
63-
Designed for both interactive use and automated workflows, Polykey easily integrates into existing systems for streamlined secret management and operational efficiency.
50+
Polykey delivers robust, decentralized secrets management through the following
51+
capabilities:
6452

65-
- **Cross-Platform & Open-Source:**
66-
As an open-source solution, Polykey is available on multiple platforms and benefits from community contributions, ensuring transparency and continuous improvement.
53+
- **Decentralized & Local-First:** Operates entirely on your device in a
54+
peer-to-peer network, giving you full control over your secrets.
6755

68-
- **Future-Proof Security:**
69-
With ongoing developments, Polykey is actively exploring post-quantum cryptography and other advanced security measures to keep pace with emerging threats.
56+
- **State-of-the-Art Cryptography:** Employs XChaCha20-Poly1305 for encryption,
57+
X25519 for key exchange, and Ed25519 for signatures, ensuring confidentiality
58+
and integrity.
7059

71-
## Principles
60+
- **Secure Vault Architecture:** Secrets are organized into fully encrypted,
61+
version-controlled vaults that function like a secure, virtual filesystem,
62+
enabling safe storage, backup, and sharing with trusted peers. Data remains
63+
encrypted at rest, even when the Polykey agent is not running. It is only
64+
decrypted when the agent is launched and the user authenticates.
7265

73-
There are 2 main concepts to understand in Polykey:
66+
- **Gestalt Identity Model:** Aggregates multiple digital identities into a
67+
unified, trusted representation to facilitate secure sharing.
7468

75-
- Secrets Management
76-
- Decentralized Trust
69+
- **Integration & Automation:** Works interactively or via CLI integration for
70+
seamless inclusion in CI/CD pipelines and system workflows.
7771

78-
### Secrets Management
72+
- **Cross-Platform & Open Source:** Actively maintained, open-source, and
73+
operable across multiple environments.
74+
75+
- **Forward-Looking Security:** Investigating post-quantum cryptography and
76+
advanced protective mechanisms to stay ahead of evolving threats.
7977

80-
Polykey was built from the ground up to focus on secrets management.
78+
## Core Concepts
79+
80+
### Secrets Management
8181

82-
Secrets can be any kind of data that enables some sort of capability in the
83-
physical or virtual world.
82+
Polykey was purpose-built for secrets management: any data that enables
83+
capability.
8484

85-
The world is full of secrets. For example, a password is a secret that enables
86-
you to login to a website. A private key is a secret that enables you to sign
87-
and verify some data. A symmetric key is a secret that enables you to encrypt
88-
and decrypt some data. A token is a secret that enables software agents and
89-
machines to authenticate to remote services. A credit card is a secret that
90-
enables payments.
85+
- **Passwords** for authentication
9186

92-
Polykey is designed to manage all kinds of secrets. It is not limited to
93-
passwords or keys.
87+
- **Private Keys** for signing or decryption
9488

95-
For this reason, we think of secrets as "capabilities".
89+
- **Tokens** for machine-to-service authentication
9690

97-
All secrets are put into vaults. Each vault is a persistent, fully encrypted
98-
virtual filesystem with automatic version history. Vaults can be shared with
99-
other Polykey agents.
91+
- **Credit Card Info** for payments
10092

101-
Polykey's secrets management system provides users with secure communication and
102-
secure computation.
93+
All secrets are stored in encrypted vaults with automatic versioning. Vaults can
94+
be shared securely with other Polykey agents. Secrets are treated as
95+
capabilities, or elements that grant power in both digital and physical systems.
10396

10497
### Decentralized Trust
10598

106-
Sharing secrets depends on secure communications. Secure communications depends
107-
on trusted identities.
99+
Secret sharing relies on secure communications, which require trusted
100+
identities. Polykey introduces this via the concept of a Gestalt.
108101

109-
Polykey introduces a concept called "Gestalt Identity".
102+
A **Gestalt Identity** is a collection of digital identities (e.g. social
103+
profiles or Polykey nodes) representing the same person or agent.
110104

111-
A Gestalt Identity is a collection of digital identities (i.e. social media
112-
profiles and Polykey nodes) that all represent the same entity.
105+
- When a Polykey agent starts, it begins with a single-node gestalt.
113106

114-
When you start a Polykey agent, it immediately forms its own gestalt with the
115-
Polykey node as its only identity. Link up your digital identities to the node
116-
in order to expand your gestalt.
107+
- Users can link other identities to expand trust.
117108

118-
As you deploy more Polykey agents, you can join existing gestalts.
109+
- Gestalts allow others to verify and trust your identity when sharing secrets.
119110

120-
Your gestalt is how other users are able to share secrets with a trusted
121-
identity. Your identity is the sum of the reputation of all your digital
122-
identities that are part of the gestalt.
111+
Trust in Polykey is compositional, built from the integrity of all linked
112+
identities in your gestalt.

docs/reference/architecture/encryption-algorithms.md

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,19 @@ cryptographic algorithms for optimal security and performance.
1616

1717
-### Symmetric Encryption
1818

19-
- **XChaCha20-Poly1305 (IETF)**
20-
- **Key Size:** 256 bits
21-
- **Nonce Size:** 192 bits
22-
- **MAC Size:** 128 bits
23-
- This extended 192-bit nonce allows random nonces to be safely used, reducing the risk of nonce reuse and making the encryption scheme misuse-resistant.
24-
- A stream cipher approach is employed, encrypting data per block with a fresh, random nonce each time.
25-
- Polykey stores its persistent state in an encrypted database, protected by a “Data Encryption Key” (DEK). This DEK is not derived from the root key, so rotating the root key does not require re-encrypting the entire database.
26-
- By combining encryption and authentication, XChaCha20-Poly1305 ensures both confidentiality and integrity of the stored data.
19+
- **XChaCha20-Poly1305 (IETF)**
20+
- **Key Size:** 256 bits
21+
- **Nonce Size:** 192 bits
22+
- **MAC Size:** 128 bits
23+
- This extended 192-bit nonce allows random nonces to be safely used, reducing
24+
the risk of nonce reuse and making the encryption scheme misuse-resistant.
25+
- A stream cipher approach is employed, encrypting data per block with a
26+
fresh, random nonce each time.
27+
- Polykey stores its persistent state in an encrypted database, protected by a
28+
“Data Encryption Key” (DEK). This DEK is not derived from the root key, so
29+
rotating the root key does not require re-encrypting the entire database.
30+
- By combining encryption and authentication, XChaCha20-Poly1305 ensures both
31+
confidentiality and integrity of the stored data.
2732

2833
### Asymmetric Encryption
2934

0 commit comments

Comments
 (0)