# Decodificador de tramas WebSocket (RFC 6455)

Pega tramas WebSocket en hexadecimal o base64 y decodifica byte a byte la cabecera RFC 6455: FIN, RSV, opcode (texto/binario/cierre/ping/pong), bit MASK, longitud extendida de 7/16/64 bits, clave de enmascaramiento y el payload tras deshacer el XOR. Admite varias tramas seguidas, semántica de códigos de cierre, avisos de violaciones del protocolo y un mapa de campos coloreado con offsets de bytes.

> Página canónica: https://elysiatools.com/es/tools/websocket-frame-decoder

- **Categoría:** Development

- **Palabras clave:** websocket, rfc6455, decodificador de tramas, opcode, clave de máscara, volcado hexadecimal, código de cierre

## Descripción general

Formato de trama (RFC 6455 §5.2): byte 1 = FIN(0x80) + RSV1-3(0x40/0x20/0x10) + opcode(0x0F); byte 2 = MASK(0x80) + longitud de 7 bits (126 → uint16 BE en 2 bytes siguientes, 127 → uint64 BE en 8 bytes); si MASK=1 siguen 4 bytes de clave; el payload se desenmascara con XOR mask[i mod 4]. Las tramas de control (opcode ≥ 8) exigen FIN=1 y payload ≤ 125 bytes; el cliente siempre debe enmascarar (§5.1). En la trama de cierre, los 2 primeros bytes del payload son el código de estado (1000 normal, 1001 going away, 1002 error de protocolo, 1007 UTF-8 inválido, 1009 demasiado grande…).

## Entradas

- **Datos de trama WebSocket (hex o base64)** (textarea): 81 85 37 fa 21 3d 7f 9f 4d 51 58 (hex dump or base64, multiple frames allowed)
- **Codificación de entrada** (select)
- **Bytes máximos de payload a mostrar** (number)

## Cuándo usarlo

- Cuando tienes un volcado hexadecimal o base64 de una captura WebSocket y necesitas ver FIN, opcode y payload desenmascarado.
- Al depurar tramas de control (ping, pong, cierre) o comprobar si el cliente enmascaró correctamente según RFC 6455.
- Para inspeccionar longitudes extendidas de 16 o 64 bits y el mapa de bytes con offsets en implementaciones propias.

## Cómo funciona

- Pega las tramas en el campo de datos (hex con o sin espacios, o base64); puedes incluir varias tramas seguidas.
- Elige detección automática o fuerza hex/base64; opcionalmente limita los bytes de payload mostrados (16–4096).
- La herramienta parsea byte 1 (FIN+RSV+opcode), byte 2 (MASK+longitud), clave de 4 bytes si hay máscara y aplica XOR al payload.
- Obtienes un HTML con cada trama etiquetada, semántica de códigos de cierre, avisos de protocolo y el mapa de campos coloreado.

## Casos de uso

- Inspeccionar capturas hex de clientes que envían texto o binario enmascarado.
- Verificar ping, pong y cierre (código 1000 y motivo) en un único volcado.
- Comprobar longitudes extendidas de 16 bits y el mapa de offsets en tramas binarias grandes.

## Preguntas frecuentes

### ¿Qué formatos de entrada admite?

Volcado hexadecimal o base64. Puedes dejar detección automática o elegir el formato de forma explícita.

### ¿Puede decodificar varias tramas en un solo pegado?

Sí. Acepta varias tramas consecutivas en el mismo volcado y las muestra una a una.

### ¿Cómo se desenmascara el payload?

Si MASK=1 extrae los 4 bytes de clave y aplica XOR con mask[i mod 4] a cada byte del payload.

### ¿Qué se muestra en una trama de cierre?

Los dos primeros bytes del payload como código de estado (1000, 1001, 1002, etc.) y el motivo restante si existe.

### ¿Qué avisos de protocolo genera?

Señala, entre otros, tramas de control sin FIN=1, payload de control mayor de 125 bytes o tramas de cliente sin máscara.

## Herramientas relacionadas

- [Codificador/Decodificador Base64](https://elysiatools.com/es/tools/base64-encoder): Codifica y decodifica cadenas Base64
- [Codificador/Decodificador Base64URL](https://elysiatools.com/es/tools/base64url-encoder): Codifica y decodifica Base64URL (variante URL-segura usada por JWT/JWS/JWE) y convierte entre Base64 estándar y URL-segura
- [Decodificador de assertions WebAuthn Passkey y depurador de challenge](https://elysiatools.com/es/tools/webauthn-passkey-assertion-decoder-challenge-debugger): Decodifica clientDataJSON, authenticatorData, flags, rpIdHash y signCount; verifica ES256, RS256 o Ed25519 cuando se proporciona una clave pública.
- [Decodificador de trazas distribuidas y waterfall](https://elysiatools.com/es/tools/distributed-trace-decoder-waterfall-visualizer): Analiza JSON de Jaeger, Zipkin u OpenTelemetry y muestra spans, tiempos y errores en un waterfall
- [Decodificador NTP RFC 5905 / SNTP de segundo intercalar y época](https://elysiatools.com/es/tools/ntp-rfc-5905-sntp-leap-second-epoch-decoder): Decodifica un paquete NTP/SNTP de 48 bytes: byte 0 bitfields, stratum/poll/precision, root delay/dispersion, reference ID, cuatro timestamps de 64 bits (época 1900)
- [Decodificador de campos de bits Snowflake / Discord](https://elysiatools.com/es/tools/snowflake-discord-id-bit-decoder): Analiza IDs Snowflake de 64 bits sin pérdida, extrae timestamp, worker, process, sequence o campos de plataforma y estima el shard de Discord.
- [Decodificador de IDs léxicos ULID / NanoID / KSUID / Snowflake](https://elysiatools.com/es/tools/ulid-nanoid-ksuid-snowflake-id-decoder): Decodifica ULID (base32 Crockford), KSUID (base62), NanoID, MongoDB ObjectId y snowflakes Discord/Twitter/Sonyflake: desglosa marca de tiempo, bits aleatorios y de máquina, muestra la hora ISO y el hex sin procesar, y estima la probabilidad de colisión con el límite de cumpleaños.
- [Convertidor Base64](https://elysiatools.com/es/tools/base64-converter): Codifica y decodifica datos hacia/desde formato Base64 con opciones URL-safe

## Ejemplos

- [Ejemplos WebSocket](https://elysiatools.com/es/samples/websocket): Ejemplos de comunicación en tiempo real usando el protocolo WebSocket incluyendo chat, notificaciones y streaming de datos
- [Ejemplos de Procesamiento de Imágenes Android Java](https://elysiatools.com/es/samples/android-image-processing-java): Ejemplos de procesamiento de imágenes Android Java incluyendo lectura/escritura, escalado y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Android Kotlin](https://elysiatools.com/es/samples/android-image-processing-kotlin): Ejemplos de procesamiento de imágenes Android Kotlin incluyendo lectura/escritura, escalado y conversión de formato
- [Ejemplos de Procesamiento de Imágenes Web Python](https://elysiatools.com/es/samples/web-image-processing-python): Ejemplos de procesamiento de imágenes Web Python usando PIL/Pillow incluyendo lectura, guardado, redimensionamiento y conversión de formato

## Contenido relacionado

- [Herramientas para Analizar Texto Semiestructurado y Extraer Tablas](https://elysiatools.com/es/hubs/semi-structured-text-table-extraction): Convierte texto de ancho fijo, registros con delimitadores mixtos, logs y tablas HTML o Markdown en salidas limpias de CSV, JSON, XML o Excel.
