YouTube · KI für Business · Folge 1

Digitale Unterschrift selbst bauen

Alle Prompts aus dem Video „Digitale Unterschrift mieten? Ich bau sie selbst mit KI“, die Architektur zum Nachbauen und die Stelle, an der der KI-Agent Mist baut, ohne dass es knallt.

localhost:3000/pruefen
Ein einziges Zeichen geändert: Die Prüfseite merkt es sofort.

Die Architektur

So ist die App gebaut

Browser, Server, Datenbank. Und das Drumherum. Diese vier Teile hat jede Software, die du selbst baust. Der Ablauf spielt von allein, du kannst auch auf ein Kästchen tippen.

BrowserFrontend

Hier wird unterschrieben.

  • PDF hochladen, Unterzeichner wählen
  • Name und PIN eingeben
ab FES: zweiter Faktor, Code vom Handy
––– –––neu in 30 s

ServerBackend

Hier läuft die Logik.

  • prüft PIN und Code
  • rechnet die Prüfsumme (SHA-256)
  • setzt den Stempel

DatenbankSQL

Hier steht, wer was wann unterschrieben hat.

  • Unterschriften mit Prüfsumme
  • jedes Ereignis im Protokoll
Drumherum (Infrastruktur):DomainBackupsUpdatesLogs

1. Unterschreiben: Frau Stempel gibt im Browser Name und PIN ein und klickt auf „Bestätigen“.

Grün heißt: läuft in der Lern-App, auf meinem Rechner. Für den echten Betrieb fehlt noch das Drumherum: ein echter Server, eine Domain, Backups, ein echtes Login und ein Tresor für die Schlüssel.

Elektronische Signatur einfach erklärt

Drei Stufen: EES, FES, QES

Ob du für digitale Unterschriften ein Abo brauchst, entscheiden diese drei Abkürzungen.

EES

Einfache elektronische Signatur

Name und PIN, dazu die Prüfsumme des Dokuments.

Wofür: Freigaben, Bestellungen, Urlaubsanträge, Übergabeprotokolle.

selbst gebaut mit Prompt A

FES

Fortgeschrittene elektronische Signatur

Eigenes Schlüsselpaar je Person, dazu ein zweiter Faktor vom Handy.

Wofür: Kaufverträge, Geheimhaltungsvereinbarungen, Prüfprotokolle im regulierten Umfeld.

zum Lernen gebaut mit Prompt F2

QES

Qualifizierte elektronische Signatur

Zählt wie mit dem Stift. Das Zertifikat stellt nur ein zugelassener Anbieter nach einer Ausweisprüfung aus.

Wofür: Wo das Gesetz die Schriftform verlangt, zum Beispiel bei Verbraucherkrediten.

nicht selbst baubar, nur anbinden

Für dich: Hast du aufgepasst?

Das Quiz aus dem Video

Drei Dokumente, drei Fragen: Welche Stufe brauchst du?

Frage 1 von 3

Eine Bestellung?

Für Firmen: Kosten-Check

Mieten oder selbst bauen?

Ein Mittelständler mit 200 Leuten zahlt für digitale Unterschriften je nach Anbieter schnell an die 100.000 € im Jahr. Selbst betrieben sind es rund 75 € im Monat.

Für Freigaben und Übergabeprotokolle im Haus reicht eine EES oder FES, und die kannst du selbst bauen. Verlangt das Gesetz die Schriftform, brauchst du für die QES einen zugelassenen Anbieter.

Digitale Unterschrift, pro Monat

Gemietet

rund0 €

200 Leute × 40 € im Monat, je nach Anbieter

Selbst gebaut, mit eingekaufter Zeit

unter0 €

Aufbau und Pflege komplett eingekauft, im ersten Jahr

Selbst gebaut, Betrieb

rund0 €

Server 30 € · Datenbank 25 € · KI-Abo 20 €

Auch bei zehn Leuten sind es gemietet noch 4.800 € im Jahr. Jedes Jahr.

Und Geld ist nicht alles: Bei der eigenen Lösung liegen Dokumente und Prüfprotokoll von Anfang an bei dir.

Probier's aus

Ein Zeichen ändert alles

So arbeitet die Prüfseite aus dem Video: Beim Unterschreiben wird die Prüfsumme gespeichert. Ändert später jemand auch nur ein Zeichen, passt sie nicht mehr. Die Rechnung läuft nur hier in deinem Browser, es wird nichts verschickt.

Ändere ein einziges Zeichen, zum Beispiel den Preis.

Prüfsumme beim Unterschreiben (SHA-256)

…

Prüfsumme jetzt

…

Zum Nachbauen

Die drei Prompts aus dem Video

Sie funktionieren mit jedem KI-Agenten, der Code schreiben und Dateien anlegen kann. Reihenfolge: A → F2 → B.

Wichtig: Das ist eine Lern-App. Sie zeigt die einfache (EES) und eine fortgeschrittene elektronische Signatur (FES) zum Lernen. Sie ist keine qualifizierte elektronische Signatur (QES) und nicht für den echten Betrieb gedacht. Die Hinweise im Video sind keine Rechtsberatung.
  1. A

    Prompt A: Grundgerüst: einfache elektronische Unterschrift (EES)

    Zuerst, in einem leeren Ordner. Danach den Server selbst starten (npm start) und mit Frau Stempel unterschreiben.

    Baue eine kleine lokale Web-App „Rothaar Sign" für interne elektronische Unterschriften.
    Technik: Node.js + Express, Datenhaltung in einer SQLite-Datenbank über das eingebaute Node-Modul node:sqlite (keine zusätzlichen Datenbank-Pakete, Datei rothaar.db), Oberfläche als schlichtes HTML ohne Framework, alles in diesem Ordner, Start mit `npm start` auf Port 3000.
    Nutzer sind fest hinterlegt (kein echtes Login): Frau Stempel (PIN 1111), Herr Siegel (PIN 2222).
    Oberfläche auf Deutsch mit echten Umlauten (UTF-8).
    Funktionen:
    1. PDF hochladen und einen oder mehrere Unterzeichner in Reihenfolge wählen.
    2. Unterzeichner bestätigt mit Name + PIN. Beim Bestätigen wird gespeichert: wer, Zeitpunkt, SHA-256 des Dokuments.
    3. Ein Protokoll je Dokument, das alle Ereignisse in Reihenfolge zeigt.
    4. Eine Prüfseite: PDF erneut hochladen → App sagt, ob die Prüfsumme zu einer bekannten Unterschrift passt.
    5. Ein Dokument kann gelöscht werden, dabei werden auch seine Unterschriften und Protokolleinträge entfernt.
    Halte es klein und lesbar. Keine Tests, keine Auth-Bibliothek. Lege eine README mit den zwei Nutzern an. Starte den Server nicht selbst, das mache ich.
    localhost:3000/dokumente
    Frau Stempel unterschreibt mit ihrer PIN. Der Stempel zeigt wer, wann und die Prüfsumme.
  2. F2

    Prompt F2: Upgrade: fortgeschrittene Unterschrift (FES) mit zweitem Faktor

    Nach der ersten Unterschrift. Danach den Server neu starten (Strg+C, dann npm start) und auf der Seite „2FA einrichten“ den QR-Code mit einer Authenticator-App scannen.

    Mach aus der einfachen Unterschrift eine fortgeschrittene (FES), mit zweitem Faktor:
    1. Jeder Nutzer bekommt ein eigenes Schlüsselpaar (Ed25519, eingebautes Node-Modul crypto). Erzeuge es beim Serverstart für jeden Nutzer ohne Schlüssel und speichere es in keys.json. Der private Schlüssel wird mit der PIN verschlüsselt (PKCS8, aes-256-cbc, PIN als Text-passphrase).
    2. Zweiter Faktor: TOTP nach RFC 6238 (6 Ziffern, 30 Sekunden, HMAC-SHA1), kompatibel mit Microsoft und Google Authenticator. TOTP selbst mit Node-crypto umsetzen: pro Nutzer ein 20-Byte-Zufalls-Secret als Base32 ohne „=" (ebenfalls in keys.json), Code mit führenden Nullen auf 6 Stellen auffüllen, beim Prüfen ±1 Zeitfenster erlauben.
    3. Neue Seite „2FA einrichten" (/2fa, im Menü verlinkt) zeigt pro Nutzer einen QR-Code, erzeugt nur mit dem Paket qrcode, Inhalt: otpauth://totp/Rothaar%20Sign:<Name>?secret=<Secret>&issuer=Rothaar%20Sign. Name und Issuer mit encodeURIComponent kodieren (Leerzeichen in den Namen). QR mindestens 280 px groß, scharf (image-rendering: pixelated oder SVG), Fehlerkorrektur M, weißer Rand. Darunter das Secret zum Abtippen.
    4. Eine FES-Unterschrift geht nur mit richtiger PIN UND gültigem 6-stelligem Code (neues Feld im Unterschriftsformular). Ein falscher Code wird abgelehnt und im Protokoll festgehalten.
    5. Beim Unterschreiben: SHA-256 des PDFs mit dem privaten Schlüssel signieren (crypto.sign mit null), Signatur und öffentlichen Schlüssel im Protokoll speichern (gekürzt anzeigen, zum Aufklappen).
    6. Neben jeder Unterschrift (in der Unterzeichner-Liste und im Protokoll) steht ein Stempel: „EES" für bisherige Unterschriften, „FES" für neue.
    7. Die Prüfseite prüft zusätzlich die Signatur und zeigt „Signatur gültig – unterschrieben von <Name>". Bei verändertem PDF zeigt sie „Dokument verändert oder unbekannt – keine gültige Signatur".
    Bestehende Daten bleiben erhalten. Ändere sonst nichts an der App. Starte den Server nicht selbst, das mache ich. Setz es direkt um, ohne Rückfragen.
    localhost:3000/dokumente
    Herr Siegel unterschreibt mit PIN und Code vom Handy. Neben der Unterschrift steht jetzt „FES“.
  3. Vor Prompt B selbst testen

    Der leise Fehler

    Prompt A enthält absichtlich den Fehler aus dem Video. Lösch ein Dokument, das schon unterschrieben ist. Die App fragt nett nach, und dann: nichts. Kein Fehler, keine Sperre. Der Vertrag ist weg, die Unterschrift ist weg und das Protokoll gleich mit.

    Der Agent hat beide Wünsche brav erfüllt: „Protokolliere alles“ und „Dokumente kann man löschen“. Aber er hat nicht gefragt, ob man einen unterschriebenen Vertrag überhaupt löschen darf. Das musst du entscheiden, nicht er.

    localhost:3000/dokumente
    Unterschriebenes Dokument gelöscht, ohne Warnung. Danach sagt die Prüfseite nur noch „unbekannt“.
  4. B

    Prompt B: Reparatur: unterschriebene Dokumente sperren

    Nachdem du den leisen Fehler selbst gesehen hast: ein unterschriebenes Dokument löschen, dann die Prüfseite fragen.

    Ein Dokument, das schon unterschrieben wurde, darf nicht mehr gelöscht werden. Jeder Löschversuch — erlaubt oder abgelehnt — wird im Protokoll festgehalten, mit wer (Name + PIN wie beim Unterschreiben) und wann. Beim erlaubten Löschen bleibt der Datensatz samt Protokoll erhalten, nur die PDF-Datei wird entfernt. Starte den Server nicht selbst, das mache ich. Setz es direkt um, ohne Rückfragen.
    localhost:3000/dokumente
    Nach der Reparatur: Löschen abgelehnt. Und der Versuch steht im Protokoll.

Für dich: KI lernen

Tipp für deine Bewerbung

Bau das nach, aber nicht eins zu eins: Bau eine eigene Funktion dazu. Und erzähl im Gespräch, welchen Fehler der Agent gemacht hat und wie du ihn gefunden hast.

Ich sitze oft selbst in Bewerbungsgesprächen, auf der anderen Seite vom Tisch. Auf dem Kanal zeige ich dir, was Firmen wirklich suchen.

Kanal abonnieren

Für Firmen: KI-Beratung

So etwas für deine Firma?

Im kostenlosen Erstgespräch (30 Minuten) schauen wir, welche Software du selbst bauen kannst und wo sich Mieten weiter lohnt.

Ich bin selbst IT-Manager und sitze auf deiner Seite des Tisches. Ich befähige dein Team, statt es an ein Abo zu binden.

Erstgespräch anfragen