Cifrado Pigpen
En Pigpen, la H es la casilla inferior de la rejilla lisa y la E su centro; la L y la O están en la rejilla con punto. Pase palabras a esas formas de rejilla y de X, escritas como etiquetas legibles, o al revés. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Texto
- HELLO
- Modo de cálculo
- encode
- Resultado
- grid_b grid_c grid_tr_dot grid_tr_dot grid_r_dot
- Codificación
- pigpen
- Longitud de entrada
- 5
- Longitud de salida
- 48
Esta herramienta de cifrado Pigpen codifica letras latinas en la tabla clásica de símbolos masónicos, representada con tokens descriptivos portables, o decodifica un flujo de tokens a texto en mayúsculas. Cada letra de la A a la Z tiene una forma fija tomada de dos rejillas de tres por tres y dos conjuntos de brazos en X, con variante punteada en la segunda mitad de cada familia, de modo que la transformación es una tabla abierta reversible y no una clave secreta.
Qué es el cifrado Pigpen y cómo los tokens representan los símbolos
El cifrado Pigpen, también llamado cifrado masónico o freemason, es una sustitución monoalfabética clásica que reemplaza cada letra latina por una marca geométrica tomada de un par de rejillas de tres por tres y un par de figuras en forma de X.
En el diseño de libro de texto freemason usado aquí, la primera rejilla guarda de la A a la I sin puntos, la segunda de la J a la R con un punto central en cada celda, la primera figura X guarda de la S a la V en sus cuatro brazos diagonales sin puntos, y la X punteada guarda de la W a la Z.
Ese mapeo fijo de veintiséis entradas es exactamente lo que aplica este extremo: no hay flujo de palabra clave, ni desplazamiento modular, ni fichero de alfabeto opcional que pueda divergir entre locales. Si necesita cuadrados de pares de dígitos, códigos biliterales o cifrado autenticado moderno, use esos extremos dedicados; esta página responde solo al contrato clásico Pigpen de rejilla y X que ya describen los libros de acertijos y los capítulos de historia masónica.
Pigpen en clases y búsquedas del tesoro
Desarrolladores y educadores encuentran el cifrado Pigpen en calentamientos de capture-the-flag, búsquedas del tesoro en museos, módulos de historia masónica y demos ligeras que muestran cómo un monoalfabeto geométrico puede llevar texto latino completo sin palabra clave. Los servicios de backend precálculan cadenas de reto para APIs de puzzles o sandboxes didácticos donde el estudiante debe rearmar secuencias completas de tokens para desbloquear el siguiente paso.
Los ingenieros de calidad generan pares deterministas de encode y decode para pruebas de contrato, de modo que un middleware que afirme soporte Pigpen no pueda cambiar en silencio a dígitos de Polibio ni omitir marcas desconocidas. Los organizadores de concursos precálculan claves de respuesta para frases inglesas modestas sin confiar en juguetes web opacos que dibujan glifos de forma inconsistente o rellenan símbolos faltantes.
Las herramientas de producto y educación usan la transformación cuando un aprendiz pega una cadena de tokens al estilo freemason y la interfaz debe mostrar las letras recuperadas bajo la tabla documentada de rejilla y X. Combínelo con otros ayudantes clásicos de codificación al construir un pequeño laboratorio de herramientas de texto gratuitas y deterministas, y no trate Pigpen como sustituto del cifrado autenticado moderno cuando haya secretos reales en juego.
Qué puede hacer con ella
Demos de cifrado masónico en el aula
Codifique y decodifique palabras de muestra en la tabla fija Pigpen de rejilla y X para que las lecciones de introducción a la criptografía y de historia compartan un mapeo de tokens de referencia.
Búsquedas del tesoro y calentamientos CTF
Codifique frases de reto como tokens descriptivos Pigpen o invierta un flujo de tokens sin escribir un script a medida para cada conjunto de problemas.
Preguntas frecuentes
¿Qué es el cifrado Pigpen?
Un cifrado monoalfabético clásico que asigna cada letra latina a una marca geométrica de dos rejillas 3×3 y dos figuras X (con variantes punteadas). Esta herramienta usa tokens descriptivos portables para esas marcas.
¿Por qué tokens en lugar de símbolos dibujados?
El mapeo coincide con el diseño clásico freemason de rejilla y X para A–Z.
¿Se codifican espacios y puntuación?
No. En encode se omiten los no letras. En decode solo se leen tokens separados por espacios; cualquier token desconocido falla en lugar de ignorarse.
¿Cuánto cuesta?
La herramienta del navegador es gratuita y se ejecuta en local.
¿Cómo se reparte el alfabeto en el cifrado Pigpen?
De la A a la I llenan una rejilla lisa de tres por tres y de la J a la R una segunda rejilla con un punto en cada casilla. De la S a la V van en los brazos de una X lisa y de la W a la Z en una X con punto.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/enc/pigpen \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"HELLO"}'const res = await fetch("https://api.kit.forhosting.com/enc/pigpen", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "HELLO"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/pigpen",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "HELLO"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/pigpen", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"HELLO"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"HELLO"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/pigpen", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "HELLO"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.pigpen",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
El modo encode recorre la entrada, conserva solo caracteres alfabéticos y emite tokens separados por espacios, como grid_b para H y grid_c para E; el modo decode acepta esos tokens en mayúsculas o minúsculas habituales, ignora espacios de más y reconstruye el mensaje solo cuando todos los tokens son conocidos. Un símbolo desconocido, un cuerpo vacío o una cadena sin letras para codificar falla con invalid_input y nombra el problema en lugar de adivinar. Úselo gratis en el navegador para lecciones de historia de la criptografía, hojas de búsqueda del tesoro y demos de símbolos masónicos, o llame a la API a $0.002 por solicitud correcta cuando sus pipelines necesiten transformaciones Pigpen reproducibles.
Qué es el cifrado Pigpen y cómo los tokens representan los símbolos
Históricamente esas marcas se dibujaban a mano como paredes de caja incompletas o trazos en ángulo; este producto no puede asumir un conjunto compartido de glifos Unicode, así que cada marca se representa como un token descriptivo estable, por ejemplo grid_tl para la celda superior izquierda simple, grid_c_dot para la celda central punteada, x_ne para el brazo noreste de la X simple y x_sw_dot para el brazo suroeste punteado. La respuesta JSON incluye siempre result para la cadena transformada, encoding fijado a pigpen, mode en encode o decode, input_length y output_length de las cadenas enviadas y recibidas, letter_count y token_count de cuántas letras A–Z o símbolos se produjeron o consumieron, más cadenas alphabet y formula que reexpresan la regla de rejilla y X para documentación y comprobaciones automáticas. No hay camino de streaming ni un respaldo silencioso a dígitos de Polibio, grupos a/b de Bacon o un César: o la carga es válida para el modo elegido, o la solicitud falla con invalid_input.
Cómo se leen text y mode y cómo se informan los símbolos desconocidos
En modo decode la cadena se parte por espacios en tokens, cada token se pasa a minúsculas y todos deben figurar en el vocabulario de veintiséis símbolos. Ese informe es el requisito de producto detrás de «informa símbolos desconocidos»: resolutores y evaluadores ven qué marca falló en vez de recibir un texto truncado en silencio. Los campos preferidos de la carga son text para el mensaje o el criptograma y mode opcional para encode o decode. Text acepta alias como input, value, s, message, plaintext y ciphertext para que formularios y clientes SDK reutilicen nombres de columna existentes. Mode por omisión es encode si se omite y también admite alias cortos como enc, encrypt, e para codificar y dec, decrypt, d para decodificar; cualquier otra cadena falla la validación. En modo encode solo se conservan y mapean letras alfabéticas, se ignora la mayúscula o minúscula de entrada y el resultado son tokens en minúsculas separados por un solo espacio; si tras filtrar no queda ninguna letra, el motor rechaza la solicitud con invalid_input para que una cadena solo de dígitos no parezca un cifrado vacío correcto. Cuando uno o más tokens no se reconocen, la solicitud falla con invalid_input y el mensaje enumera de forma explícita el símbolo o símbolos Pigpen desconocidos en lugar de omitirlos o inventar una letra. Text ausente, text vacío, tipos que no son cadena, cadenas más largas que el máximo documentado y modos desconocidos también lanzan invalid_input. Combine la ejecución gratuita del navegador en esta página con la API de pago cuando necesite el mismo resultado matemático dentro de un pipeline automatizado. Las entradas inválidas devuelven invalid_input y no se cobran, lo que mantiene barata la validación mientras las transformaciones correctas siguen un precio fijo por ítem de $0.002.
Dónde encaja Pigpen en clases, búsquedas del tesoro y fixtures de prueba
Los equipos de frontend pueden mostrar encode y decode lado a lado para que el alumnado vea que grid_b grid_c grid_l grid_l grid_r es exactamente HELLO sin inventar una tabla propia. En esta página el trabajo se ejecuta por completo en su navegador; a través de la API cada consulta correcta cuesta $0.002, la validación fallida no se cobra y no se almacena nada tras devolver la respuesta. Esa división — exploración interactiva gratuita y una API de pago idéntica — coincide con el resto del catálogo KIT de nivel A y le permite pasar de una demo de aula a un pipeline automatizado sin cambiar el resultado transformado.
Casos de integración
Contratos deterministas y pruebas golden
Genere pares estables de encode y decode para pipelines que deben rechazar símbolos desconocidos en lugar de truncar el criptograma en silencio.
Preguntas técnicas
¿Cómo decodifico tokens Pigpen?
Ponga mode en decode y pegue tokens separados por espacios como grid_tl o x_ne_dot. Todo token debe ser conocido; los símbolos desconocidos lanzan invalid_input y se listan en el mensaje de error.