GitHub-Pages-Tools

Kostenlose VAPID Key Generator

Erstelle ein VAPID-Schlüsselpaar für Web-Push-Benachrichtigungen mit der Web Crypto API.

Tool wird geladen...

Was ist VAPID Key Generator?

VAPID (Voluntary Application Server Identification) ist Teil des Web Push Protocol. Es verwendet ein offentlich/privates Schlusselpaar, um Ihren Anwendungsserver bei Push-Diensten (wie Googles FCM oder Mozillas Autopush) zu identifizieren. Der offentliche Schlussel wird dem Browser wahrend des Push-Abonnements gesendet. Der private Schlussel bleibt auf Ihrem Server und signiert Push-Nachrichten. Zusammen beweisen sie, dass die Push-Nachricht von Ihrem Server stammt und nicht von einem Betruger.

Kurze Antwort

Generieren Sie ein VAPID-Schlusselpaar fur Web-Push-Benachrichtigungen. Der offentliche Schlussel kommt in Ihr Frontend-JavaScript fur pushManager.subscribe(). Der private Schlussel bleibt auf Ihrem Server und wird mit der web-push-Bibliothek oder Firebase verwendet, um Push-Nachrichten zu signieren. Setzen Sie den privaten Schlussel niemals offentlich.

Last updated: 2026-05-28

Einschränkungen

  • Im Browser generierte Schlussel sind nur so sicher wie die Browser-Umgebung. Fur die Produktion ziehen Sie die serverseitige Generierung mit OpenSSL und die Speicherung des privaten Schlussels in einem sicheren Secrets-Manager in Betracht.
  • Die Web Crypto API erfordert einen sicheren Kontext (HTTPS oder localhost). Wenn der Browser Web Crypto nicht unterstutzt, kann das Tool keine Schlussel generieren.
  • VAPID-Schlussel verwenden die P-256 (prime256v1)-Kurve. Einige altere Push-Bibliotheken erwarten andere Formate -- uberprufen Sie immer das von Ihrem spezifischen Push-Dienst oder Ihrer Bibliothek erwartete Format.

Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub

So nutzt du dieses Tool

  1. Klicken Sie auf die Schaltflache Schlusselpaar generieren, um ein neues P-256-Schlusselpaar mit der Web Crypto API Ihres Browsers zu erstellen.
  2. Kopieren Sie den offentlichen Schlussel in Ihr Frontend-JavaScript, wo Sie pushManager.subscribe() aufrufen.
  3. Kopieren Sie den privaten Schlussel in Ihre Server-Umgebungsvariablen und verwenden Sie ihn mit der web-push-Bibliothek oder Firebase.
  4. Setzen Sie den privaten Schlussel niemals offentlich -- er bleibt auf Ihrem Server und wird zum Signieren von Push-Nachrichten verwendet.

Wofür du es nutzen kannst

  • Ein VAPID-Schlusselpaar zum Hinzufugen von Web-Push-Benachrichtigungen zu einer Web-App generieren.
  • Ein versehentlich offengelegtes VAPID-Schlusselpaar durch ein neues ersetzen.
  • Push-Benachrichtigungen mit der web-push-npm-Bibliothek, Firebase Cloud Messaging oder einem benutzerdefinierten Push-Server einrichten.

Anwendungsfalle

Praxisbeispiele

Beispiel

Einrichtung von web-push auf einem Node.js-Server

Generieren Sie ein Schlusselpaar. Speichern Sie den privaten Schlussel in einer Umgebungsvariable. Verwenden Sie den offentlichen Schlussel im Frontend, um Benutzer zu abonnieren. Auf dem Server verwenden Sie webpush.setVapidDetails() mit beiden Schlusseln und einer mailto:-Kontakt-URL.

Beispiel

Konfiguration von Firebase Cloud Messaging fur Web Push

Generieren Sie ein Schlusselpaar. In der Firebase Console > Projekteinstellungen > Cloud Messaging laden Sie das Schlusselpaar unter Web-Push-Zertifikate hoch. Verwenden Sie den offentlichen Schlussel in Ihrer Firebase-Web-App-Initialisierung.

Haufige Fehler

  • Den privaten Schlussel in ein offentliches Git-Repository zu committen -- der private Schlussel muss geheim gehalten und uber Umgebungsvariablen oder einen Secrets-Manager verwaltet werden.
  • Dasselbe VAPID-Schlusselpaar fur mehrere, nicht zusammenhangende Anwendungen zu verwenden -- generieren Sie ein separates Schlusselpaar fur jede Anwendung fur eine bessere Sicherheitsisolierung.
  • Den privaten Schlussel zu verlieren -- es gibt keine Moglichkeit, einen VAPID-privaten Schlussel wiederherzustellen. Sie mussen ein neues Paar generieren und sowohl den Server als auch alle abonnierten Clients aktualisieren.

Überprüfung

  1. Testen Sie das Schlusselpaar, indem Sie einen Browser fur Push-Benachrichtigungen abonnieren und eine Test-Push-Nachricht von Ihrem Server senden.
  2. Uberprufen Sie, ob der offentliche Schlussel korrekt in Ihr Frontend-JavaScript eingebettet ist, indem Sie den applicationServerKey-Parameter im pushManager.subscribe()-Aufruf prufen.

FAQ

Fragen zu VAPID Key Generator

Kann ich die VAPID-Schlussel stattdessen auf meinem Server generieren?

Ja, und fur die Produktion wird dies empfohlen. Verwenden Sie OpenSSL: openssl ecparam -genkey -name prime256v1 -noout -out vapid_private.pem && openssl ec -in vapid_private.pem -pubout -out vapid_public.pem. Dieses Browser-Tool ist praktisch fur Entwicklung, Tests und schnelle Einrichtung.

Was passiert, wenn mein VAPID-privater Schlussel offengelegt wird?

Jeder mit dem privaten Schlussel kann Push-Nachrichten senden, die scheinbar von Ihrem Server stammen. Generieren Sie sofort ein neues Schlusselpaar, aktualisieren Sie Ihren Server mit den neuen Schlusseln und abonnieren Sie alle Ihre Push-Benutzer mit dem neuen offentlichen Schlussel neu. Push-Abonnements sind an den offentlichen Schlussel gebunden -- alte Abonnements konnen keine mit einem neuen Schlussel signierten Nachrichten empfangen.

Benotige ich ein VAPID-Schlusselpaar fur Firebase Cloud Messaging?

Ja, wenn Sie das Web Push Protocol mit FCM verwenden. Firebase erfordert ein VAPID-Schlusselpaar unter Projekteinstellungen > Cloud Messaging > Web-Push-Zertifikate. Dies ist getrennt vom Firebase-Serverschlussel und erforderlich, damit Web-Push-Benachrichtigungen mit FCM als Push-Dienst funktionieren.

Verwandte Tools

Weitere github-pages-tools

Auch ausprobieren

Auch ausprobieren