Gegen EU-Chatkontrolle

Nachrichten,
die niemand
lesen kann.

Hazelnut verschlüsselt Chats Ende-zu-Ende mit ML-KEM768 Schlüsselaustausch und AES-256-GCM — quantensicher, dezentral, vollständig open source.

ML-KEM768 AES-256-GCM Ed25519 E2E-Verschlüsselung Self-hosted Open Source

Schutzhülle für
deine Gedanken.

ML-KEM768

Post-quantum Schlüsselaustausch nach NIST-Standard. Resistent gegen Quantencomputer-Angriffe, jetzt und in Zukunft.

Kyber-768 · NIST PQC

AES-256-GCM

Jede Nachricht wird mit AES-256-GCM verschlüsselt und authentifiziert — keine Manipulation, kein Mitlesen möglich.

Symmetric · AEAD

Ed25519

Jede Verbindung wird kryptografisch signiert. Geplant: ML-DSA statt Ed25519 für vollständige Quantensicherheit.

Signature · Roadmap: ML-DSA

Chatrooms

Erstelle beliebig viele Räume mit Namen und optionalem Passwort. Jeder Raum ist ein separater verschlüsselter Kanal.

Multi-Room · Passwortschutz

Dezentral

Lauf auf deiner eigenen Hardware. Kein zentraler Provider, kein Datenleck, keine Abhängigkeit von Dritten.

Self-hosted · Node.js

Open Source

Client (Flutter) und Server (Node.js) vollständig auf GitHub. Auditierbar, transparent, keine Hintertüren.

MIT · Dart + JavaScript

Quantensicherer
Schlüsselaustausch

Bevor die erste Nachricht gesendet wird, führt Hazelnut einen ML-KEM768 Schlüsselaustausch durch — der gemeinsame Session-Key verlässt niemals ein Gerät im Klartext.

Schlüsselpaar generieren Client erzeugt ein temporäres ML-KEM768-Schlüsselpaar (EncapsKey + DecapsKey)
Kapselung Server kapselt den Shared Secret mit dem EncapsKey des Clients
Signatur & Verifikation Beide Seiten signieren den Handshake mit Ed25519 (bald: ML-DSA)
AES-256-GCM Sitzung Alle Nachrichten werden symmetrisch mit dem Shared Secret verschlüsselt
$ node main.js

Dein Server,
deine Regeln.

Beliebig viele Räume

Erstelle so viele Chatrooms wie nötig — auf deinem eigenen Server, ohne Beschränkungen.

Optionale Passwörter

Schütze Räume mit einem Passwort vor unerwünschten Teilnehmern.

Eigene Server-Adresse

Im Client trägst du IP oder Domain deines Servers ein und verbindest dich direkt.

WebSocket-Echtzeit

Sofortige Nachrichtenübertragung über eine persistente, verschlüsselte Verbindung.

In 3 Schritten live.

Der Hazelnut-Server ist ein Node.js-Prozess — kein Docker, keine Cloud. Läuft auf jedem Linux-Server.

Repository klonen

git clone https://github.com/synxrhyme/HazelnutServer cd HazelnutServer

Abhängigkeiten installieren

npm install

Server starten

node main.js

Danach trägst du in der Hazelnut-App die Server-Adresse ein (z. B. 192.168.1.1:3000), verbindest dich und kannst sofort Chatrooms erstellen und ihnen beitreten.