---
title: Hemmelig
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, file-sharing, pastebin, encryption, secrets]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=File+Sharing, https://github.com/HemmeligOrg/Hemmelig]
---

# 📁 Hemmelig

> Pastebin chiffré côté client pour partager textes et fichiers de manière éphémère, avec durée de vie configurable.

## 📋 Informations Générales

| Attribut | Valeur |
|----------|--------|
| **Nom** | Hemmelig |
| **Slug** | hemmelig |
| **Description** | Pastebin chiffré avec support fichiers, éphémère |
| **Site officiel** | https://hemmelig.app |
| **Repository** | https://github.com/HemmeligOrg/Hemmelig |
| **Stars** | 1 210 ⭐ |
| **Licence** | MIT |
| **Langage principal** | TypeScript |
| **Catégorie** | File Sharing |
| **Tags** | [catalogue, file-sharing, pastebin, encryption, secrets] |

## 📝 Description
Hemmelig (qui signifie "secret" en norvégien) est un service de partage de snippets et de fichiers avec chiffrement côté client. Comme Cryptgeon ou PrivateBin, le serveur ne voit jamais le contenu en clair : tout le chiffrement se fait dans le navigateur de l'émetteur, et seule la clé de déchiffrement transite par le fragment d'URL (partie après `#`).

L'application se distingue par une interface très moderne (React + Vite, thème sombre élégant) et par un système d'expiration unifié pour textes et fichiers. L'utilisateur choisit une durée de vie (10 minutes, 1 heure, 1 jour, 1 semaine ou jamais) et un nombre maximal de lectures, le contenu étant automatiquement détruit passé ces limites.

L'authentification des utilisateurs est supportée (avec OAuth) pour permettre à un compte de gérer ses propres secrets, mais l'usage anonyme reste possible. Hemmelig supporte le multi-fichier (création d'un "secret" contenant plusieurs pièces jointes) et propose des statistiques d'utilisation.

## 🚀 Installation
### Via Docker (recommandé)
```yaml
# docker-compose.yml
services:
  hemmelig:
    image: hemmelig/hemmelig:latest
    container_name: hemmelig
    restart: unless-stopped
    ports:
      - "3000:3000"
    environment:
      - JWT_SECRET=changeme
    volumes:
      - hemmelig_data:/app/uploads
volumes:
  hemmelig_data:
```

### Installation manuelle
```bash
git clone https://github.com/HemmeligOrg/Hemmelig.git
cd Hemmelig
npm install
npm run build
npm start
```

## ⚙️ Configuration
- `JWT_SECRET` : secret pour les tokens d'authentification
- Limites de taille de fichier et de durée de vie configurables
- Support OAuth (Google, GitHub) pour la connexion
- Stockage local ou S3-compatible

## 🔗 Alternatives
- **Cryptgeon** — Rust, plus minimaliste, même philosophie E2E
- **PrivateBin** — référence historique, plus mature
- **FlashPaper** — PrivNote-like, destruction après lecture

## 🔒 Sécurité
- Chiffrement AES côté client, clé dans le fragment d'URL
- Serveur aveugle au contenu (zero-knowledge)
- HTTPS obligatoire via reverse proxy
- Pas de logs applicatifs du contenu (par design)

## 📚 Ressources
- [Site officiel](https://hemmelig.app)
- [Documentation](https://hemmelig.app/documentation)
- [Dépôt GitHub](https://github.com/HemmeligOrg/Hemmelig)

## 🔗 Pages Liées
- [[cat-file-sharing]] (n'existe pas encore, OK)
- [[app-cryptgeon]]
- [[app-traefik]]
- [[recettes-docker-compose]]
- [[securisation-home-lab]]
- [[cat-secrets]] (n'existe pas, OK)
