Files
wiki/Catalogue-Self-Hosted/apps/app-cryptpad.md
T
2026-06-09 18:40:21 +02:00

4.0 KiB


title: CryptPad created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, file-transfer-and-sync, e2ee, collaboration, office, js] confidence: high contested: false sources: [https://selfh.st/apps/?tag=file-transfer-and-sync]

CryptPad 🔒

Suite collaborative (Docs, Sheets, Slides…) chiffrée bout-en-bout.

Métadonnée Valeur
Site web https://cryptpad.org
GitHub https://github.com/cryptpad/cryptpad
License AGPL-3.0
Langage JavaScript (Node.js)
Étoiles 6000+
Dernière MAJ 2025
Catégorie cat-file-transfer-and-sync

Description

CryptPad est une alternative chiffrée bout-en-bout (E2EE) à Google Docs/Office 365. La suite couvre les usages principaux : document texte (équivalent Docs), tableur (Sheets), présentations (Slides), whiteboard, diagrammes, kanban, formulaires, code (Monaco), et même file sharing (fichiers chiffrés).

L'architecture zero-knowledge est remarquable : tout le contenu, métadonnées comprises, est chiffré côté client en AES-GCM 256 bits avant d'être stocké sur le serveur. Le serveur ne voit que des blobs opaques, les URLs des documents contiennent elles-mêmes la clé de déchiffrement (hash fragment), donc même le admin de l'instance ne peut pas lire le contenu.

Les documents peuvent être partagés par lien, par équipe (avec ACL), avec expiration temporelle, et même stockés de manière persistante dans le Drive de l'utilisateur. Le produit est utilisé massivement par des journalistes, ONG, équipes privacy-conscious, et institutions européennes (le projet reçoit des financements BPI/NGI).

Installation

Docker Compose

services:
  cryptpad:
    image: cryptpad/cryptpad:latest
    container_name: cryptpad
    hostname: cryptpad.local
    environment:
      - CPAD_MAIN_DOMAIN=cryptpad.example.com
      - CPAD_SANDBOX_DOMAIN=sandbox.example.com
      - CPAD_INSTANCES=2
    volumes:
      - ./config:/cryptpad/config
      - ./data:/cryptpad/data
      - ./blob:/cryptpad/blob
      - ./customize:/cryptpad/customize
    ports:
      - "3000:3000"
    restart: unless-stopped

  cryptpad-db:
    image: postgres:13-alpine
    environment:
      - POSTGRES_USER=cryptpad
      - POSTGRES_PASSWORD=changeme
      - POSTGRES_DB=cryptpad
    volumes:
      - ./pgdata:/var/lib/postgresql/data
    restart: unless-stopped

Manuelle

Voir https://docs.cryptpad.fr/en/Admin_guide/installation.html — installation manuelle réservée à des cas avancés (Sandstorm, Yunohost, Kubernetes).

Configuration

  1. Configurer le reverse proxy HTTPS (Caddy, Nginx, Traefik) avec les bons headers.
  2. Définir main_domain et sandbox_domain (obligatoire pour le sandboxing iframes).
  3. Créer un compte admin via http://cryptpad.example.com/#1 puis /admin/.
  4. Personnaliser la page d'accueil via customize/application_config.js.
  5. Activer les onlyOffice (optionnel) pour le support de formats Office.
  6. Configurer les sauvegardes : data/ et blob/ doivent être sauvegardés quotidiennement.

Alternatives

  • Open source : Etherpad (texte), Nextcloud Office (sans E2EE), HedgeDoc (markdown), OnlyOffice (communautaire), app-microbin (partage fichiers).
  • Propriétaire : Google Workspace, Microsoft 365, Notion, Quip.

Sécurité

  • E2EE systématique : serveur ne peut lire aucun document.
  • Sandboxing des iframes pour limiter les fuites XSS.
  • Hash de chiffrement dans l'URL (jamais transmis au serveur).
  • Authentification par mot de passe + option TOTP 2FA.
  • Le modèle de menace exclut les extensions de navigateur et les sauvegardes serveur non chiffrées.

Ressources

Pages Liées