Cybersicherheit & Web-App

Sésame Éclair

Ein Secret, ein Lesevorgang, keine Spur: Der Schlüssel verlässt den Link nie, der Server behält nur einen unlesbaren Block.

Jahr
2026
Stack
Next.js · React · TypeScript · WebCrypto · WebAssembly · PostgreSQL
  • Product Design
  • Angewandte Kryptografie
  • Webentwicklung
  • Anwendungssicherheit
  • Barrierefreiheit
  • Mehrsprachiges SEO
https://eclair.kayzen-lyon.com/
Startseite der Website Sésame Éclair — Cybersicherheit & Web-App, erstellt von KAYZEN
ohne Konto, ohne Werbung
0 €
Schlüssel des Links, nie an den Server gesendet
256 Bit
gleichzeitigen Lesevorgängen bei einem Secret mit einem einzigen Lesevorgang akzeptiertAutomatisierter Test gegen Postgres.
1 von 100
Sprachen der Website
7
Die Ausgangslage

Was gelöst werden musste.

Der Kontext

Sésame Éclair ist ein kostenloser Dienst zum Teilen von Secrets, die sich nur einmal lesen lassen, herausgegeben von KAYZEN in Lyon. Man fügt ein Passwort oder einen Schlüssel ein und erhält einen Ende-zu-Ende-verschlüsselten Link, der nach dem Lesen oder zum gewählten Ablaufzeitpunkt verschwindet. Es ist das Schwesterprodukt von Sésame, dem Passwortmanager von KAYZEN: Sésame bewahrt auf, was bleiben soll, Éclair übermittelt, was verschwinden soll. Die Software ist kostenlos, aber proprietär. Nur die Web-App ist online, in sieben Sprachen; die Erweiterung, die Desktop- und Mobil-Apps und die Kommandozeile sind entwickelt, aber noch nicht veröffentlicht.

Die Einschränkung

Ein per E-Mail oder in Slack verschicktes Passwort verschwindet nie wirklich: Es bleibt in Verläufen, Sicherungen und Suchindizes, und jeder, der eines Tages Zugriff auf das Postfach erhält, kann es lesen. Dienste für Einmal-Links gibt es, doch manche verschlüsseln auf ihren eigenen Servern, wie es etwa die am 6. Oktober 2026 erfasste Seite von Onetime Secret angibt, und viele behalten Dateien, Secret-Anfragen oder die eigene Domain einem kostenpflichtigen Tarif vor. Gebraucht wurde ein kostenloser Dienst ohne Konto, dessen Vertraulichkeit auch dann hält, wenn man dem Anbieter nicht vertraut.

Die Antwort

Der Schlüssel verlässt den Link nie. Der Browser erzeugt einen zufälligen 256-Bit-Schlüssel, verschlüsselt das Secret und setzt diesen Schlüssel dann hinter das #-Zeichen der Adresse, einen Teil, den Browser nie an Server senden. Der Server speichert nur einen verschlüsselten Block und einige Datumsangaben; er gibt ihn einmal heraus und löscht ihn im selben Vorgang. Alles Weitere folgt aus dieser Regel: Die Seite des Links enthält nie das Secret, der PIN-Code kann vom Server nicht getestet werden, und jede Grenze des Systems steht auf der Website, statt verschwiegen zu werden.

Gemessen, nicht behauptet

Die Werte bei der Auslieferung.

Lighthouse-Werte der Live-Website. Wir veröffentlichen sie unverändert: Ist einer niedrig, stehen Ursache und Korrekturplan weiter unten, statt verschwiegen zu werden.

PageSpeed
96
Performance: 96 von 100
100
Barrierefreiheit: 100 von 100
100
Best Practices: 100 von 100
100
Suchmaschinenoptimierung: 100 von 100
Design & Art Direction

Jede gestalterische Entscheidung – und ihr Grund.

  1. Die Sésame-Familie, ein Akzent für die Marke

    Marineblau #1F3B61 für die Titel, Terrakotta #B7481F für die Hauptaktion: das Erscheinungsbild von kayzen-lyon.com und Sésame. Das „Éclair“-Bernstein #F2C14E ist dem Logo vorbehalten. Das helle Theme wird standardmäßig angezeigt, unabhängig von der Systemeinstellung; das dunkle Theme ist eine Wahl des Nutzers und wird gespeichert.

  2. Das Formular ist der erste Bildschirm

    Man kommt auf diese Website, um ein Secret zu senden, nicht um eine Präsentation zu lesen: Das Eingabefeld nimmt den Hero-Bereich ein. Die Optionen sind eingeklappt, aber in einer gut lesbaren Zeile zusammengefasst, „1 Lesevorgang · läuft ab in 24 Stunden · ohne Code“, und werden nur aufgeklappt, um die Anzahl der Lesevorgänge, den Ablauf, den Schutz oder die Empfänger zu ändern.

  3. Was es noch nicht gibt, wird als solches gekennzeichnet

    Die Seite Funktionen stuft jede Funktion als „Verfügbar“ oder „Geplant“ ein. Die Seite Download zeigt die Erweiterung, Windows, macOS, die Kommandozeile, Android und iPhone als „Demnächst“ an, mit einem Verweis auf die Web-App. Bei einem Sicherheitsprodukt würde die Ankündigung einer fehlenden Funktion mehr Vertrauen kosten, als sie einbrächte.

  4. Bewegung, die das Lesen nicht stört

    Klare Animationskurven, Schaltflächen, die beim Drücken leicht nachgeben, Hover-Effekte nur für die Maus, Karten, die sich beim Scrollen in reinem CSS absetzen, ohne Einblendung, damit der Kontrast nie sinkt. Alles wird deaktiviert, wenn das System reduzierte Bewegung anfordert.

Farbpalette des Projekts

  • Tinte

    #1F2937

    Text

  • Marine

    #1F3B61

    Titel

  • Terrakotta

    #B7481F

    Hauptaktion

  • Éclair-Bernstein

    #F2C14E

    Logo

  • Grün

    #1F6B48

    Bestätigung

Typografisches System

Überschriften

Outfit 800

Fließtext

Plus Jakarta Sans 400

Die Schriftfamilien von kayzen-lyon.com, als variable Versionen von der eigenen Domain ausgeliefert: Die Sicherheitsrichtlinie lässt keine Schrift von Dritten zu.

Engineering

Was unter der Haube steckt.

  • Next.js
  • React
  • TypeScript
  • WebCrypto
  • WebAssembly
  • PostgreSQL
  1. AES-256-GCM, der Schlüssel im Fragment

    Der Inhalt wird per WebCrypto mit AES-256-GCM verschlüsselt, mit einem zufälligen 96-Bit-Initialisierungsvektor und zusätzlichen Daten, die an die Kennung des Secrets gebunden sind. Die Schlüssel werden per HKDF-SHA-256 abgeleitet. Vor der Verschlüsselung wird der Inhalt stufenweise aufgefüllt (1, 4, 16, 64 KiB…), damit der Server seine tatsächliche Länge nicht kennt. Das Format ist mit seinen Testvektoren auf der Seite „Kryptografisches Format v1“ veröffentlicht.

  2. Ein PIN-Code, den der Server nicht testen kann

    Der Code durchläuft Argon2id (64 MiB, 3 Durchläufe), ausgeführt in WebAssembly und nur geladen, wenn ein Code verlangt wird. Der an den Server gesendete Prüfwert wird aus dem Code und dem Schlüssel des Links berechnet: Ohne diesen Schlüssel kann der Server einen Code weder prüfen noch ausprobieren. Er zählt die Fehlversuche und vernichtet das Secret beim fünften Versuch. Die Grenze steht auf der Seite Sicherheit: Wer sowohl den Link als auch eine Kopie der Datenbank besitzt, kann einen kurzen Code offline knacken.

  3. Ein einziger Lesevorgang, selbst bei hundert gleichzeitig

    Die per GET abgerufene Seite eines Links enthält nie den Geheimtext: Er wird erst nach einem Klick auf „Aufdecken“ per POST-Anfrage ausgeliefert. Die Vorschau-Bots von Slack, Teams oder Outlook verbrauchen den Lesevorgang daher nicht. Auslieferung und Löschung erfolgen in einer einzigen SQL-Abfrage; ein Test startet 100 gleichzeitige Aufdeckungen eines Secrets mit einem einzigen Lesevorgang und lässt nur eine zu. Unbekannter, abgelaufener, gelesener oder vernichteter Link: Die Antwort ist dieselbe.

  4. Keine Skripte von Dritten, eine strikte Richtlinie

    Content-Security-Policy mit Nonce pro Anfrage, ohne unsafe-inline oder unsafe-eval für Skripte; nur wasm-unsafe-eval ist zugelassen, für Argon2id. connect-src auf die Domain beschränkt, frame-ancestors auf none, HSTS über zwei Jahre mit Preload, Referrer-Policy auf no-referrer. Der Preis wird in Kauf genommen und dokumentiert: Die Seiten werden bei jeder Anfrage gerendert, statt statisch erzeugt zu werden.

  5. In der Europäischen Union gehostet, ohne IP-Adressen in der Datenbank

    Die Anwendung läuft bei Vercel in Paris; die Postgres-Datenbank liegt bei Neon in Frankfurt. Keine Spalte enthält eine IP-Adresse: Die Ratenbegrenzung stützt sich auf einen nicht umkehrbaren Fingerabdruck, der sich täglich ändert. Der Datenzugriff läuft über Drizzle und ein Standard-Postgres, wodurch der Hoster austauschbar bleibt.

  6. Ein kryptografischer Kern, mehrere Clients in Vorbereitung

    Die gesamte Verschlüsselung steckt in einem einzigen Modul, packages/crypto, das gegen deterministische Vektoren getestet wird. Im Code bedient dasselbe Modul bereits eine Manifest-V3-Erweiterung, Electron-Desktop-Apps, Capacitor-Apps für Android und iOS sowie eine Kommandozeile mit MCP-Server. Keine davon ist bisher veröffentlicht: Die Website stellt sie als kommend vor.

Suchmaschinenoptimierung

Wie die Website gefunden wird.

  1. Eine Seite pro Suchintention

    Fünf Vergleiche (Onetime Secret, Password Pusher, scrt.link, Bitwarden Send, Password.link), vier Seiten zu Anwendungsfällen (Agenturen, DevOps, IT-Support, Privatpersonen), zwei kostenlose Tools, die im Browser laufen (Passwortgenerator, Stärketest), und ein Blog. Jeder Vergleich trägt sein Erhebungsdatum, seine Quellen und eine Zeile „Ein Fehler? Schreiben Sie uns“.

  2. Sieben Sprachen, miteinander verknüpft

    Französisch im Stammverzeichnis, Englisch, Deutsch, Spanisch, Italienisch, Portugiesisch und Niederländisch unter ihrem Präfix. Jede Seite deklariert ihre Entsprechungen per hreflang, mit einem x-default, und die Sitemap führt sie alle auf. Maschinelle Übersetzungen sind als „in Überprüfung“ gekennzeichnet; bei den Rechtstexten ist allein die französische Fassung maßgeblich.

  3. FAQPage, SoftwareApplication und llms.txt

    Die FAQ trägt ein FAQPage-Markup; das Produkt ist als SoftwareApplication mit einem Preis von 0 € deklariert. Eine Datei llms.txt beschreibt Assistenten, was der Dienst garantiert, aber auch seine Grenzen: kein externes Audit, proprietäre Software, Apps noch nicht verfügbar.

Barrierefreiheit

Für alle nutzbar.

Seit Juni 2025 schreibt der European Accessibility Act (EU-Richtlinie 2019/882) für einen großen Teil der Online-Dienste digitale Barrierefreiheit vor. Wir berücksichtigen sie schon bei der Konzeption, nicht erst im Nachhinein.

  1. WCAG 2.2 AA auf 44 Seiten geprüft

    Die End-to-End-Tests führen axe-core auf den Stufen WCAG 2.0, 2.1 und 2.2 AA auf 44 Seiten in mehreren Sprachen aus, außerdem auf der Startseite im hellen und im dunklen Theme. Tastaturnavigation, sichtbarer Fokus und Sprunglink sind in der Erklärung zur Barrierefreiheit aufgeführt.

  2. Kontraste, durch einen Test geprüft

    Jedes Paar von Farb-Tokens hat sein Mindestverhältnis, das automatisch kontrolliert wird: 7:1, Stufe AAA, für Fließtext und Titel auf hellem Hintergrund; 4,5:1 für Sekundärtext, Akzentlinks und Statusmeldungen, in beiden Themes.

  3. Eine Erklärung, die nicht übertreibt

    Mangels eines RGAA-Audits durch eine unabhängige Stelle gibt die Erklärung zur Barrierefreiheit an, dass die Website im Sinne des Referenzrahmens „nicht konform“ ist, auch wenn sie dafür konzipiert wurde. Das ist die Regel des Produkts, angewandt auf die Barrierefreiheit: keine Behauptung ohne Beweis.

Seitenstruktur

Was ausgeliefert wurde.

  • Startseite — ein Secret erstellen, drei Schritte, Mini-Vergleich
  • Funktionen — „Verfügbar“ oder „Geplant“, Funktion für Funktion
  • Sicherheit — Primitive, Bedrohungen, Grenzen; Format v1 und Testvektoren
  • Was der Server sieht — die tatsächliche Anfrage, live angezeigt
  • Secret anfordern — verschlüsselter Einreichungslink nur für den Anfragenden
  • Vergleiche, Anwendungsfälle, FAQ, Preise, Blog, Tools
  • Dienststatus, Transparenz, Neuigkeiten, Roadmap
  • Impressum, Nutzungsbedingungen, Datenschutz, Barrierefreiheit, Meldung
Methode

Der Projektablauf.

  1. Grundlagen

    Monorepo, kontinuierliche Integration mit statischer Analyse, kryptografisches Modul und Format v1 mit seinen Testvektoren, Design-Tokens, Architekturentscheidungen und Bedrohungsmodell.

  2. Server und Anwendung

    Postgres-Datenbank, atomares Aufdecken, PIN-Code mit fünf Versuchen, Verfolgungslink, geplante Bereinigung, Sicherheitsrichtlinie mit Nonces; Bildschirme zum Erstellen, Aufdecken und Verfolgen.

  3. Öffentliche Website

    Funktionen, Sicherheit, datierte Vergleiche, FAQ, Anwendungsfälle, Tools, Rechtsseiten, „Was der Server sieht“, Dienststatus und Transparenz.

  4. Livegang

    Tatsächliches Hosting deklariert (Paris für die Anwendung, Frankfurt für die Datenbank), sieben Sprachen, Performance-Budget bei jeder Änderung kontrolliert, Layout an kayzen-lyon.com angeglichen.

  5. Weitere Plattformen

    Erweiterung, Desktop, Mobil und Kommandozeile auf demselben Kern entwickelt; Veröffentlichung in den Stores ausstehend. Externes Audit vor Version 1.0 geplant.

Fragen

Was man uns oft fragt.

Nein, und das liegt an der Architektur. Das Secret wird im Browser mit einem Schlüssel verschlüsselt, der im Link bleibt, hinter dem #-Zeichen, dem Teil der Adresse, den Browser nie an Server senden. Der Server erhält nur einen verschlüsselten Block und einige Datumsangaben; eine vollständige Kopie der Datenbank erlaubt es ohne den Link nicht, auch nur ein Secret zu lesen.

Noch nicht. Es wurde kein externes Sicherheitsaudit durchgeführt; eines ist vor Version 1.0 geplant, und sein Bericht wird veröffentlicht. Bis dahin sind das kryptografische Format und seine Testvektoren öffentlich, der Code wird durch automatisierte Tests und statische Analyse kontrolliert, und die Website schreibt dies selbst auf ihren Seiten Sicherheit und FAQ.

Noch nicht. Sie sind auf demselben kryptografischen Kern wie die Web-App entwickelt, aber keine davon ist veröffentlicht: Die Seite Download zeigt sie als „Demnächst“ an. Heute geschieht alles im Browser, ohne Installation. Die Software ist kostenlos, aber proprietär; ihr Code ist nicht öffentlich.

Derselbe Anspruch, für Ihre Website.

Kostenloses Audit Ihrer aktuellen Website, Angebot innerhalb von 24 Stunden und eine schriftliche Begründung – wie die, die Sie gerade gelesen haben. Zahlung in drei Raten ohne Aufpreis; lokale Förderungen werden vor der Unterschrift geprüft.

Teilen