Elysia Tools

Просматривайте инструменты, примеры, визуальные объяснения и тематические руководства в одном понятном пространстве.

Популярные категории

Темы

Язык
ZHESPTRUFRDEEN

Elysia Tools

Навигация

Format Conversion

Кодировщик Web Push: запрос RFC 8030 + VAPID + шифрование RFC 8291

· Последнее обновление:2026-09-23

Кодирует полную отправку Web Push: шифрование aes128gcm по RFC 8291, VAPID ES256 JWT по RFC 8292, заголовки RFC 8030, соответствие APNs/FCM и проверку расшифровкой в оба направления.

Детали

С чем помогает этот инструмент

Шифрование строго по RFC 8291: ECDH на P-256 между эфемерным ключом сервера приложения и ключом подписки p256dh, комбинирование ключей HKDF-SHA256 с auth secret (контекст «WebPush: info»), случайная 16-байтовая соль, вывод CEK/nonce через контексты «Content-Encoding» и AES-128-GCM с бинарным заголовком RFC 8188 (соль + размер записи + id ключа). Реализация побайтово воспроизводит примеры RFC 8291 §5 и draft-ietf-webpush-encryption-04.

Запуск

Запустить этот инструмент

Заполните форму, запустите инструмент и посмотрите результат на этой же странице.

Примеры

Примеры для этого инструмента

Связано

Продолжить с похожими инструментами и темами

Подготовлено командой Elysia Tools

Руководство по использованию инструмента

Узнайте, когда использовать этот инструмент, что он поддерживает и как его применяют пользователи.

Ключевые факты

Категория
Format Conversion
Типы ввода
textarea, select, text, number, checkbox
Тип вывода
html
Покрытие примерами
4
API доступен
Да

Обзор

Онлайн-инструмент для генерации и проверки полных HTTP-запросов Web Push в соответствии со стандартами RFC 8030, RFC 8291 и RFC 8292. Он выполняет шифрование полезной нагрузки алгоритмами aes128gcm или aesgcm, формирует заголовок VAPID Authorization (ES256), рассчитывает параметры срочности и темы, а также валидирует результат с помощью сквозной тестовой расшифровки.

Когда использовать

  • При разработке и отладке серверных библиотек для отправки браузерных Web Push уведомлений.
  • Для верификации промежуточных криптографических вычислений ECDH P-256, HKDF-SHA256, CEK и nonce по эталонным векторам.
  • При необходимости проверить валидность токена VAPID JWT и соответствие заголовков спецификациям RFC 8030, FCM и APNs.

Как это работает

  1. 1На основе открытого текста, параметров подписки (p256dh, auth) и ключа сервера вычисляется общий секрет ECDH на кривой P-256.
  2. 2С помощью HKDF-SHA256 и случайной соли формируются рабочий ключ шифрования (CEK) и одноразовый вектор (nonce) в контексте aes128gcm (RFC 8291) или aesgcm (draft-04).
  3. 3Полезная нагрузка шифруется методом AES-128-GCM, параллельно генерируется токен авторизации VAPID (RFC 8292) и формируются заголовки RFC 8030 (TTL, Urgency, Topic).
  4. 4Инструмент выводит полный HTTP/2-запрос, пошаговую трассировку промежуточных байтов, таблицу соответствия для FCM/APNs и статус тестовой расшифровки.

Сценарии использования

  • Формирование эталонных тестовых данных и сверка байтов при разработке бэкенд-сервисов push-рассылок.
  • Диагностика ошибок 400 Bad Request и 401 Unauthorized от push-серверов Apple, Google и Mozilla.
  • Генерация готовых curl-запросов и дампов HTTP/2 для ручного тестирования доставки push-уведомлений на клиентские устройства.

Примеры

1. Шифрование тестового вектора RFC 8291 §5 (aes128gcm)

Бэкенд-разработчик

Контекст

Разработчик реализует отправку Web Push на собственном сервере и хочет убедиться в побайтовом соответствии вычислений официальной спецификации.

Проблема

Необходимо сверить производные ключи HKDF, nonce и итоговый бинарный заголовок RFC 8188 с эталонным примером из RFC 8291.

Как использовать

Укажите полезную нагрузку «When I grow up, I want to be a watermelon», выберите aes128gcm, вставьте ключи подписки, эфемерный ключ и соль из RFC 8291 §5, затем запустите расчет.

Результат

Сгенерирован полный HTTP/2-запрос, промежуточные значения CEK и nonce совпали со спецификацией, а обратная расшифровка подтвердила целостность.

2. Формирование запроса с устаревшим кодированием aesgcm

Инженер по интеграциям

Контекст

Инженер тестирует совместимость инфраструктуры с устаревшими клиентами, поддерживающими только спецификацию draft-ietf-webpush-encryption-04.

Проблема

Требуется передать метаданные шифрования через заголовки Encryption и Crypto-Key с добавлением байтов заполнения (padding).

Как использовать

Выберите кодирование aesgcm, задайте 2 байта заполнения, укажите параметры подписки, тему chat-message и ключи VAPID.

FAQ

В чем главное отличие кодирования aes128gcm от aesgcm?

Стандартный aes128gcm (RFC 8291 / RFC 8188) помещает соль и длину записи в бинарный заголовок тела запроса, тогда как устаревший aesgcm (draft-04) передает их через заголовки Encryption и Crypto-Key.

Зачем указывать приватный ключ приёмника (uaPrivateKey)?

Это поле необязательно и служит для проверки: с его помощью инструмент расшифровывает полученный шифртекст обратно и подтверждает корректность всей цепочки шифрования.

Как заголовки RFC 8030 соотносятся с FCM и APNs?

Заголовок Urgency сопоставляется с приоритетами доставки APNs и FCM, а заголовок Topic транслируется в идентификаторы схлопывания уведомлений apns-collapse-id и FCM collapse_key.

Какой алгоритм используется для подписи VAPID JWT?

Используется алгоритм ES256 (ECDSA на кривой P-256 с SHA-256), при этом закрытый ключ VAPID не должен совпадать с эфемерным ключом шифрования полезной нагрузки.

Отправляются ли закрытые ключи на сторонние серверы?

Нет, все криптографические операции, генерация токенов и сборка запроса выполняются локально в клиенте.

Главная
Инструменты3201
Примеры593
Визуализации465
Средства просмотра файлов103
Темы233
Теги333
Изображения, аудио и видео657

Инструменты для обработки, конвертации и оптимизации изображений, аудио и видео

Математика, даты и финансы644

Калькуляторы, числовые инструменты, логика дат, статистика и финансы

Дизайн и цвет297

Инструменты для цвета, макетов, графики, визуального стиля и дизайна

Текст и письмо209

Инструменты для письма, очистки, форматирования, извлечения и анализа текста

Разработка и Web193

Инструменты разработчика, сетевые утилиты, веб-отладка и автоматизация

Преобразование и кодирование175

Инструменты для преобразования форматов, файлов, архивов, единиц и кодировок

Проверка источников FLAC/WAV и передача доказательств
Проверка и передача виджета розыгрыша для собственного хостинга
Проверка пакета кодов Stripe перед локальным импортом
Технический отбор фотографий и передача кандидатов на обработку
Структура интерфейса по скриншоту: проверка и передача разработчику

© 2026 Elysia Tools. Все права защищены.

ДокументацияТарифыО насУсловия использованияПолитика конфиденциальностиCookieКонтакты
Python

Примеры Обработки Изображений Web Python

Примеры обработки изображений Web Python используя PIL/Pillow включая чтение, сохранение, изменение размера и преобразование формата

Rust

Примеры Обработки Изображений Web Rust

Примеры обработки изображений Web Rust включая чтение/запись, масштабирование и преобразование форматов

TypeScript

Примеры Обработки Изображений Web TypeScript

Примеры обработки изображений Web TypeScript включая чтение/сохранение, масштабирование и конвертацию форматов

Go

Примеры Файловых Операций Web Go

Примеры файловых операций Web Go включая чтение/запись текстовых файлов, копирование/перемещение, обход директорий и валидацию файлов

Development

Генератор Data URI

Преобразует файлы в Data URI (Base64 или процентное кодирование) для встраивания изображений, шрифтов и ресурсов прямо в HTML, CSS или Markdown

Cryptography

Сравнение хеш-алгоритмов

Хеширует один и тот же вход с помощью MD5, SHA-1, SHA-256, SHA-512, BLAKE2b и BLAKE3 и сравнивает их: длину, hex/Base64-дайджест, статус безопасности (взломан/современный) и относительный бенчмарк скорости. Полезно для обучения, выбора алгоритма и проверки контрольных сумм.

Security

Шифрование / Расшифрование RSA

Шифрует текст открытым ключом RSA или расшифровывает шифртекст соответствующим закрытым ключом, с OAEP-паддингом (SHA-1 или SHA-256). Длинные сообщения бьются на блоки. Ключи и данные обрабатываются локально. PKCS#1 v1.5 не предлагается (Node отключает его для расшифровки из-за атак Bleichenbacher).

Development

Валидатор распространения OpenTelemetry W3C traceparent / tracestate / baggage и заголовков OTLP

Проверяет traceparent по ABNF W3C Trace Context (версия / 16-байтовый trace-id / 8-байтовый parent-id / 1-байтовый trace-flags; нули и версия ff отклоняются, верхний регистр предупреждает), tracestate (≤32 членов, простые и tenant@system ключи, предупреждение о дублях) и baggage (процентно-кодированные значения с непрозрачными свойствами); проверяет Content-Type экспорта OTLP и 25-байтовый двоичный контекст grpc-trace-context-bin; коррелирует два traceparent в симулированном round-trip (стабильность trace-id и коллизия случайного дочернего span-id) и выдаёт нормализованные заголовки.

Результат

Сформирован запрос с корректными заголовками Crypto-Key (dh=...), Encryption (salt=...) и таблицей соответствия collapse key для FCM и APNs.