◀ HViYou PUBX Respond ✍️

Besitzer · Proof of Possession · 100% lokal

🎯 Challenge des Prüfers laden

Füge den [PUBXCH:…]-Block des Prüfers ein. Der enthaltene Public Key und der zu signierende Challenge-Text werden automatisch angezeigt.

📝 Challenge-Text sichten

Der Original-Challenge-Text erscheint in einem mehrzeiligen Textfeld – inklusive möglicher verschlüsselter Textblöcke. Du kannst Passagen markieren und kopieren, um sie separat zu sichten.

🔑 Public Key sichtbar

Der Public Key aus dem PUBXCH-Block wird in einem eigenen readonly-Feld angezeigt – so siehst du sofort, welcher Schlüssel zur Signatur gehört.

📦 K2-Block entschlüsseln

Dein verschlüsselter Schlüsselblock [K2:…] wird mit deinem Masterpasswort ausschließlich lokal entschlüsselt. Der Private Key verlässt niemals den Browser.

✍️ Ed25519-Signatur erzeugen

Mit einem Klick wird die Challenge mit deinem Private Key signiert. Das Ergebnis ist ein portabler [PUBXBK:…]-Antwortblock, den du zurück an den Prüfer sendest.

🔒 100% lokal

Keine HTTP-Requests, kein Tracking, keine Server. Die komplette Entschlüsselung und Signatur läuft ausschließlich in deinem Browser – du kannst die Seite als .html speichern und offline nutzen.

📌 Beispiel eines PUBXBK-Blocks

[PUBXBK:eyJ2ZXJzaW9uIjoxLCJhbGdvcml0aG0iOiJFZDI1NTE5IiwicHVieGNoX2I2NCI6Ii4uLiIsInNpZ25hdHVyZV9iNjQiOiIuLi4ifQ==]

Der PUBXBK-Block enthält die Referenz auf die ursprüngliche Challenge (pubxch_b64), die Ed25519-Signatur und einen Zeitstempel – alles in einer einzigen Base64-Zeichenkette. Der Prüfer verifiziert diesen Block gegen den Public Key aus der Challenge.

✨ So arbeitest du mit Respond:

1. Öffne die Respond-Seite und füge den [PUBXCH:…]-Block des Prüfers ein.
2. Prüfe den angezeigten Public Key und den Challenge-Text.
3. Füge deinen [K2:…]-Block ein und gib dein Masterpasswort ein.
4. Klicke auf „🔓 K2 entschlüsseln“, dann auf „✍️ Signieren“.
5. Kopiere den [PUBXBK:…]-Antwortblock und sende ihn zurück an den Prüfer.

💡 Tipp: Der Prüfer nutzt die Challenge-Seite, um den Block zu erzeugen und zu verifizieren – das Paket ist so aufeinander abgestimmt, dass keine URL-Parameter oder QR-Codes nötig sind.

💡 Anwendungsbeispiele

  • Proof of Possession – bestätige, dass du den Private Key kontrollierst
  • Zustimmung zu Bedingungen – signiere den Text des Prüfers als Nachweis
  • Geräte-Bindung – signiere eine an deinen Public Key gebundene Challenge
  • Offline-Signatur – Blöcke per Messenger austauschen, lokal signieren
  • Mehrsprachige Challenge-Texte – Unicode-fähig, auch mehrzeilig
  • Verschlüsselte Textblöcke – Challenge-Text kann weitere TX-Blöcke enthalten

🔒 Technische Details

Signatur: Ed25519 – schnell, kompakt, deterministisch.
Kanonische Basis: HVY-PUBXCH-V1\n<challenge_b64>\n<nonce_b64>\n<public_key_b64>.
K2-Entschlüsselung: AES-GCM, PBKDF2-SHA256, 200.000 Iterationen, 16-Byte Salt, 12-Byte IV, 256-bit Key.
Format: [PUBXBK:<Base64>] – enthält JSON mit Version, Algorithmus, Referenz auf die Challenge, Signatur und Zeitstempel.
Lokalität: Keine HTTP-Requests, kein Tracking – die Seite kann als .html gespeichert und offline genutzt werden.

🤝 Paket-Anwendung – Challenge & Respond

Die beiden Seiten sind aufeinander abgestimmt: Der Prüfer erzeugt eine Challenge, der Besitzer signiert sie. Beide Seiten arbeiten ohne URL-Parameter und ohne QR-Codes – der Austausch erfolgt ausschließlich über die Blöcke selbst.