Peergos: A P2P Secure File Storage, Social Network, and Application Protocol

Peergos: A P2P Secure File Storage, Social Network, and Application Protocol

Summary

Peergos is a peer-to-peer, secure platform designed for private file storage, social networking, and application hosting. It emphasizes user control over data, offering end-to-end encryption and fine-grained access control. Built on a decentralized architecture, Peergos aims to create a private web experience where users are protected from surveillance and data tracking.

Repository Info

Updated on October 21, 2025
View on GitHub

Tags

Click on any tag to explore related repositories

Introduction

Peergos is a groundbreaking peer-to-peer, secure platform that redefines file storage, social networking, and application protocols. It champions the vision of a "private web" where end-users maintain absolute control over their data, free from surveillance and tracking. At its core, Peergos provides an encrypted global filesystem with fine-grained access control, designed to resist data content or friendship graph surveillance. Key features include a secure messenger, an encrypted email client, and a completely private social network, all built on strong cryptographic principles. The name Peergos, derived from the Greek word ?????? (Pyrgos) meaning stronghold or tower, phonetically connects to its peer-to-peer nature, emphasizing its commitment to user data security.

For more in-depth information, explore the official Peergos website and its comprehensive tech book.

Installation

Getting started with Peergos involves running a local instance, which can connect to an existing Peergos account or host a new one.

Prerequisites:
You will need Java Development Kit (JDK) version 21 or higher installed.

Running Locally (Client Mode):

  1. Download the latest Peergos.jar release from the official releases page.
  2. Execute the daemon:
    java -jar Peergos.jar daemon
    
    This will store Peergos data in ~/.peergos by default. You can then access the web interface and log in via http://localhost:8000. In this mode, your local instance proxies writes to your home server and caches accessed blocks.

Self-Hosting (Server Mode):
To run your own Peergos home-server, which is ideal for a publicly routable and always-on machine:

  1. Download the Peergos.jar as above.
  2. Run with a token generation flag:
    java -jar Peergos.jar daemon -generate-token true
    
    This will provide a single-use signup token for creating new accounts on your server.

Docker images are also available for easier deployment:

docker pull ghcr.io/peergos/web-ui:master
docker run --volume $(PEERGOS_PATH):/opt/peergos/data ghcr.io/peergos/web-ui:master daemon -listen-host 0.0.0.0 -public-domain $YOUR_DOMAIN_NAME -log-to-console true

Examples

Peergos offers a robust command-line interface (CLI) for various operations, including an interactive shell.

Interactive Shell:
Connect to a Peergos server and manage your files and social interactions:

java -jar Peergos.jar shell

You will be prompted for the server address, username, and password. Once logged in, you can use commands like help to see available options or put local_path remote_path for uploading files.

Native File Access:
Peergos supports mounting your encrypted storage space natively using FUSE (Filesystem in Userspace) on Linux/macOS or WinFsp on Windows, and also provides a WebDAV bridge for accessing files with any WebDAV compatible client.

Why Use Peergos?

Peergos is built on the principle, "Control your data, control your destiny." It offers a compelling alternative to traditional centralized services by prioritizing user privacy and security through a decentralized architecture.

Key Advantages:

  • Ultimate Privacy and Security: End-to-end encryption ensures that your data content and metadata, including friendship graphs, are protected from surveillance. Private keys never leave your client device.
  • Decentralized Control: Store files in a peer-to-peer network without a central node, making it resilient to disruption and censorship. Users own their data and decide where it is stored.
  • Self-Hostable: Easily run your own Peergos server, gaining complete control over your storage space and communication platform.
  • Secure Web Applications: Load and run web apps directly from Peergos within a sandbox, preventing data exfiltration and allowing user-granted permissions.
  • Post-Quantum Resistance: Files not shared with other users are designed to be resistant to quantum computer-based attacks, leveraging hashing and symmetric encryption.
  • Trustless Servers: Your data and metadata remain secure even if your server is compromised, as encryption happens client-side.

Peergos is actively audited for security, with reports available on its website and GitHub repository.

Links