Elysia Tools

Parcourez outils, exemples, explications visuelles et guides thématiques dans un espace clair.

Catégories populaires

Dossiers

Langue
ZHESPTRUFRDEEN

Elysia Tools

Navigation mobile

Format Conversion

Encodeur Web Push : requête RFC 8030 + VAPID + chiffrement RFC 8291

· Dernière mise à jour:2026-09-23

Encode un envoi Web Push complet : chiffrement aes128gcm (RFC 8291), JWT ES256 VAPID (RFC 8292), en-têtes RFC 8030, correspondance APNs/FCM et vérification par déchiffrement aller-retour.

Détails

Ce que cet outil vous aide à faire

Le chiffrement suit la RFC 8291 à la lettre : ECDH sur P-256 entre une clé éphémère du serveur applicatif et la clé p256dh de l’abonnement, combinaison HKDF-SHA256 avec le secret d’auth (contexte « WebPush: info »), sel aléatoire de 16 octets, dérivation CEK/nonce via les contextes « Content-Encoding » et AES-128-GCM avec l’en-tête binaire RFC 8188 (sel + taille d’enregistrement + id de clé). L’implémentation reproduit octet par octet les exemples de la RFC 8291 §5 et du draft-ietf-webpush-encryption-04.

Exécution

Exécuter cet outil

Remplissez le formulaire, lancez l’outil et consultez le résultat au même endroit.

Exemples

Exemples adaptés à cet outil

Associé

Continuer avec des outils et dossiers associés

Rédigé par l'équipe Elysia Tools

Guide d'utilisation de l'outil

Découvrez quand utiliser cet outil, ce qu'il prend en charge et comment les utilisateurs l'appliquent.

Points clés

Catégorie
Format Conversion
Types d’entrée
textarea, select, text, number, checkbox
Type de sortie
html
Exemples associés
4
API disponible
Oui

Aperçu

Cet outil génère et inspecte une requête complète d'envoi Web Push conforme aux normes RFC 8030, RFC 8291 et RFC 8292. Il chiffre le corps du message en AES-128-GCM (ou le format hérité aesgcm), génère le jeton JWT VAPID signé en ES256, structure les en-têtes HTTP de transport et valide le résultat par déchiffrement aller-retour.

Quand l’utiliser

  • Lors du débogage d'une implémentation de serveur d'application Web Push générant des erreurs 400 ou 401 sur les passerelles FCM, Mozilla Push ou Apple Web Push.
  • Pour valider manuellement les étapes intermédiaires de cryptographie ECDH P-256 et de dérivation HKDF-SHA256 (IKM, CEK, nonce).
  • Pour préparer et tester des charges utiles chiffrées avec des paramètres personnalisés de TTL, d'urgence et d'identifiant de regroupement (Topic).

Fonctionnement

  1. 1Saisissez la charge utile en clair ainsi que les clés de souscription du client (`p256dh` et `auth`) fournies par l'API Push du navigateur.
  2. 2Renseignez la clé privée éphémère du serveur applicatif, le sel de 16 octets et les informations d'authentification VAPID (clé de signature, contact `sub` et audience `aud`).
  3. 3Configurez les paramètres de transport RFC 8030 tels que l'urgence, le TTL et le topic de remplacement.
  4. 4Générez le rapport complet affichant les en-têtes HTTP, la trace des dérivations cryptographiques RFC 8291, le corps chiffré binaire et la vérification de déchiffrement.

Cas d’usage

  • Vérification octet par octet d'une bibliothèque backend Web Push par comparaison avec les vecteurs de test officiels.
  • Construction de requêtes HTTP/2 Push prêtes à être envoyées via curl ou des clients REST de test.
  • Diagnostic d'incompatibilité de jetons VAPID ou de format de clé publique entre différents navigateurs clients.

Exemples

1. Vecteur de référence RFC 8291 §5 (aes128gcm)

Ingénieur Backend

Contexte

Développement d'un service de notification autonome en Go sans dépendance externe.

Problème

Vérifier que les étapes HKDF-SHA256 et AES-GCM reproduisent scrupuleusement les valeurs intermédiaires du standard.

Utilisation

Sélectionner aes128gcm, saisir la charge utile du RFC §5 ainsi que les clés p256dh, auth, la clé éphémère et le sel spécifiés.

payload: 'When I grow up, I want to be a watermelon'
encoding: 'aes128gcm'
uaPublicKey: 'BCVxsr7N_eNgVRqvHtD0zTZsEc6-VV-JvLexhqUzORcxaOzi6-AYWXvTBHm4bjyPjs7Vd8pZGH6SRpkNtoIAiw4'
authSecret: 'BTBZMqHH6r4Tts7J_aSIgg'
asPrivateKey: 'yfWPiYE-n46HLnH0KqZOF1fJJU3MYrct3AELtAQ-oRw'
saltB64: 'DGv6ra1nlYgDCS1FRnbzlw'

Résultat

Obtention de la trace complète confirmant le CEK, le nonce, le corps binaire chiffré de 144 octets et la validation du déchiffrement aller-retour.

2. Notification urgente avec écrasement (Topic)

Développeur Web

Contexte

Intégration d'un système de messagerie instantanée Web Push avec renouvellement d'alertes.

Problème

Formater une requête Web Push haute priorité qui remplace les alertes précédentes sur l'appareil récepteur.

FAQ

Quelle est la différence entre les codages aes128gcm et aesgcm ?

aes128gcm est le standard officiel de la RFC 8291 incluant les métadonnées de chiffrement dans l'en-tête binaire RFC 8188 du corps, tandis qu'aesgcm est l'ancienne spécification draft-04 utilisant les en-têtes HTTP Encryption et Crypto-Key.

À quoi sert la clé privée du récepteur (uaPrivateKey) ?

Elle est facultative et sert uniquement à exécuter un déchiffrement aller-retour immédiat pour valider que le client recevra et décodera fidèlement le message original.

La clé privée VAPID peut-elle être identique à la clé éphémère du serveur ?

Non, la RFC 8292 impose que la paire de clés VAPID soit distincte des clés éphémères générées pour le chiffrement ECDH de la charge utile.

Comment le champ Topic est-il géré par les services de push ?

Le champ Topic sert de clé d'écrasement (coalescing key) : un nouveau message portant le même topic remplace un message en attente non encore délivré sur le terminal.

Quelles correspondances sont fournies pour APNs et FCM ?

L'outil traduit automatiquement les en-têtes RFC 8030 (TTL, Urgency, Topic) en leurs équivalents respectifs pour Apple Push Notification service (apns-expiration, apns-priority, apns-collapse-id) et Firebase Cloud Messaging.

Accueil
Outils3201
Exemples593
Visualisations465
Visionneuses de fichiers103
Dossiers233
Étiquettes333
Images, audio et vidéo657

Outils de traitement, conversion et optimisation d’images, d’audio et de vidéo

Maths, dates et finance644

Calculateurs, outils numériques, logique de dates, statistiques et finance

Design et couleur297

Outils de couleur, mise en page, graphisme, style visuel et assistance design

Texte et rédaction209

Outils de rédaction, nettoyage, formatage, extraction et analyse de texte

Développement et Web193

Utilitaires développeur, réseau, débogage Web et assistants d’automatisation

Conversion et encodage175

Outils de conversion de formats, fichiers, archives, unités et encodages

Examen des sources FLAC/WAV et transmission des preuves
Revue et livraison d’un module de jeu promotionnel auto-hébergé
Relecture d'un lot de codes Stripe et contrôle préalable à l'importation
Tri technique des photos et transmission des candidates à la retouche
Structurer une capture d'interface, la relire et la transmettre au développement

© 2026 Elysia Tools. Tous droits réservés.

DocumentationTarifsÀ proposConditions d'utilisationPolitique de confidentialitéCookiesContact
Python

Exemples de Traitement d'Images Web Python

Exemples de traitement d'images Web Python utilisant PIL/Pillow incluant la lecture, l'enregistrement, le redimensionnement et la conversion de format

Rust

Exemples de Traitement d'Images Web Rust

Exemples de traitement d'images Web Rust incluant lecture/écriture, redimensionnement et conversion de format

TypeScript

Exemples de Traitement d'Images Web TypeScript

Exemples de traitement d'images Web TypeScript incluant lecture/sauvegarde, redimensionnement et conversion de format

Go

Exemples d'Opérations sur Fichiers Web Go

Exemples d'opérations sur fichiers Web Go incluant lecture/écriture de fichiers texte, copier/déplacer, parcours de répertoires et validation de fichiers

Development

Générateur de Data URI

Convertit les fichiers en Data URI (Base64 ou pourcentage-encodé) pour intégrer images, polices et ressources directement dans HTML, CSS ou Markdown

Cryptography

Comparateur d’algorithmes de hachage

Hache la même entrée avec MD5, SHA-1, SHA-256, SHA-512, BLAKE2b et BLAKE3 et les compare : longueur, digest hex/Base64, statut de sécurité (cassé/moderne) et benchmark de vitesse relatif. Idéal pour l’enseignement, le choix d’algorithme ou la vérification de checksums.

Security

Chiffrement / Déchiffrement RSA

Chiffre du texte avec une clé publique RSA ou déchiffre le texte chiffré avec la clé privée correspondante, en utilisant le padding OAEP (SHA-1 ou SHA-256). Gère les longs messages par blocs. Les clés et données restent locales. PKCS#1 v1.5 n'est pas proposé (Node le désactive pour le déchiffrement à cause des attaques Bleichenbacher).

Development

Validateur de propagation OpenTelemetry W3C traceparent / tracestate / baggage et en-têtes OTLP

Valide traceparent selon l'ABNF de W3C Trace Context (version / trace-id 16 octets / parent-id 8 octets / trace-flags 1 octet ; zéros et version ff rejetés, majuscules signalées), tracestate (≤32 membres, clés simples et tenant@système, doublons signalés) et baggage (valeurs percent-encodées avec propriétés opaques) ; vérifie le Content-Type d'export OTLP et le contexte binaire de 25 octets de grpc-trace-context-bin ; corrèle deux traceparent dans un aller-retour simulé (stabilité du trace-id et collision d'un span-id enfant aléatoire) et émet des en-têtes normalisés.

Utilisation

Saisir le payload JSON, définir l'urgence sur 'high', renseigner le topic 'chat-message' et activer la génération VAPID.

payload: '{"title":"Nouveau message","unread":3}'
urgency: 'high'
topic: 'chat-message'
ttl: 60
vapidEnabled: true
vapidSub: 'mailto:[email protected]'

Résultat

Génération de la requête RFC 8030 complète avec en-têtes Urgency, TTL, Topic et la table de correspondance correspondante pour FCM et APNs.