Codificador y decodificador de cifrado baconiano
Convierta letras en los códigos de cinco símbolos a y b de Francis Bacon, o decodifique una serie de ellos: HI se convierte en aabbb abaaa. Cada grupo debe estar completo, así que nada se adivina. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Texto
- HI
- Modo de cálculo
- encode
- Resultado
- aabbb abaaa
- Codificación
- bacon
- Longitud de entrada
- 2
- Longitud de salida
- 11
Esta herramienta de cifrado baconiano codifica letras normales en el clásico alfabeto de cinco símbolos a/b de Francis Bacon, o decodifica una secuencia válida de a/b de vuelta a texto en mayúsculas. Cada letra latina de la A a la Z tiene un código fijo de cinco caracteres formado solo por a y b, así que la transformación es una simple tabla reversible en lugar de una clave secreta. El modo de codificación recorre la entrada, conserva los caracteres alfabéticos, y emite grupos separados por espacios como aabbb para H; el modo de decodificación acepta a y b en cualquier mayúscula o minúscula, ignora los separadores habituales, y reconstruye el mensaje solo cuando cada grupo es un conjunto completo de cinco símbolos.
El cifrado baconiano en clases y acertijos
Los desarrolladores y educadores se encuentran con el cifrado de Bacon en calentamientos de captura la bandera, capítulos de libros de texto sobre esteganografía clásica, y demostraciones ligeras que muestran cómo un alfabeto de dos símbolos aún puede transportar texto latino completo cuando los mensajes se empaquetan de cinco en cinco símbolos. Los equipos de frontend pueden mostrar la codificación y la decodificación lado a lado, para que los estudiantes vean que aabbb abaaa es exactamente HI, sin inventar una tabla personalizada.
Los ingenieros de calidad generan pares de codificación y decodificación deterministas para pruebas de contrato, de modo que un middleware que dice admitir baconiano no pueda cambiar en silencio a Morse ni descartar grupos incompletos. Los organizadores de concursos precalculan claves de respuesta para frases modestas en inglés sin depender de juguetes web opacos que rellenan grupos cortos o fuerzan una salida a/b solo en mayúsculas con un espaciado distinto.
Las herramientas de producto y educación usan la transformación cuando un estudiante pega una cadena biliteral y la interfaz debe mostrar las letras recuperadas bajo la tabla documentada. Combínela con otros ayudantes de codificación clásica cuando esté construyendo un pequeño laboratorio de herramientas de texto gratuitas y deterministas, y nunca trate el cifrado baconiano como sustituto del cifrado moderno autenticado cuando haya secretos reales en juego.
Qué puede hacer con ella
Práctica de cifrado clásico y CTF
Codifique y decodifique grupos a/b de cinco símbolos para hojas de aula, módulos de historia, y calentamientos de captura la bandera.
Demostraciones de tablas de esteganografía
Muestre el alfabeto biliteral simple que históricamente ocultaba mensajes en la tipografía, sin necesitar incrustación de fuentes en la herramienta.
Preguntas frecuentes
¿Cuánto cuesta la herramienta de cifrado baconiano?
Es gratis en su navegador, en esta página.
¿Cómo decodifico un mensaje baconiano?
Envíe el texto cifrado a/b como text y establezca mode en decode (o dec, decrypt, d). La codificación es la opción por defecto cuando se omite mode. Los grupos pueden llevar espacios; cada uno debe tener cinco símbolos a/b.
¿Qué ocurre si un grupo no tiene cinco símbolos?
Tras eliminar los separadores, la longitud del flujo a/b debe ser múltiplo de cinco; los grupos finales incompletos no se rellenan.
¿Qué caracteres se codifican?
Solo letras alfabéticas A–Z en cualquier mayúscula o minúscula. Los espacios, dígitos y la puntuación se omiten al codificar. La decodificación acepta a/b (en cualquier caso) más los separadores habituales.
¿Es seguro el cifrado baconiano para secretos reales?
No. Es un cifrado didáctico clásico con una tabla fija y pública. Use cifrado moderno autenticado, como AES-GCM, para confidencialidad real.
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/bacon \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"HI"}'const res = await fetch("https://api.kit.forhosting.com/enc/bacon", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "HI"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/bacon",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "HI"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/bacon", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"HI"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"HI"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/bacon", 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": "HI"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.bacon",
"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
Un último grupo incompleto, un patrón de cinco símbolos desconocido, o un carácter que no sea a, b, o un separador, falla con invalid_input en lugar de adivinar. Utilícela gratis en el navegador para lecciones de historia de la criptografía, demostraciones de esteganografía que aún necesiten la simple relación del alfabeto, y hojas de ejercicios reversibles, o llame a la API por $0.002 por solicitud exitosa cuando las canalizaciones necesiten transformaciones baconianas reproducibles.
Qué es el cifrado baconiano y qué devuelve esta herramienta
El cifrado baconiano, también llamado cifrado de Bacon, es una sustitución biliteral clásica en la que cada letra de un mensaje se reemplaza por una palabra de cinco símbolos tomada de un alfabeto de dos letras, escrito habitualmente a y b. La tabla moderna de veintiséis letras trata esos símbolos como dígitos binarios, con a igual a cero y b igual a uno, así que A es aaaaa, B es aaaab, y así hasta Z como bbaab. Históricamente los códigos debían ocultarse dentro de texto ordinario cambiando la tipografía o las mayúsculas; este producto solo expone la tabla simple de codificación y decodificación, para que profesores, autores de acertijos y de pruebas puedan trabajar con los propios códigos sin simular tipografías. Esa relación fija es exactamente lo que aplica este endpoint: no hay flujo de palabra clave, ni desplazamiento modular, ni fichero de alfabeto opcional que pueda variar entre idiomas. La respuesta en JSON siempre incluye result para la cadena transformada, encoding fijo en bacon, mode establecido en encode o decode, input_length y output_length para las cadenas crudas que usted envió y recibió, letter_count para cuántas letras A–Z se produjeron o consumieron, y una cadena formula que reafirma la regla de la tabla binaria para documentación y comprobaciones automatizadas. No hay ruta en streaming ni una alternativa silenciosa a Morse, Base64, o una palabra clave Vigenère: o la carga es válida para el modo elegido, o la solicitud falla con invalid_input. Si necesita cifrados polialfabéticos, variantes ROT, o cifrado moderno autenticado, use esos endpoints específicos; esta página responde únicamente el contrato baconiano A/B de cinco símbolos que ya describen los capítulos de historia de la criptografía.
Cómo se interpretan el texto y el modo, y cómo fallan los grupos incompletos
Los campos de carga preferidos son text para el mensaje o el texto cifrado, y mode opcional para encode o decode. En modo de decodificación, cada a o b se recopila en un flujo continuo, mientras que los espacios, tabulaciones, saltos de línea, guiones, guiones bajos, comas, puntos, barras y barras verticales se tratan como separadores inofensivos entre grupos. Cualquier otro carácter se rechaza de inmediato. Cada segmento completo de cinco símbolos también debe existir en la tabla de veintiséis letras; los patrones fuera de los códigos A–Z fallan como grupos desconocidos. Text acepta alias como input, value, s, message, plaintext y ciphertext, para que formularios y clientes de SDK puedan reutilizar nombres de columna existentes. Mode toma encode por defecto cuando se omite, y también acepta alias cortos como enc, encrypt, e para encode, y dec, decrypt, d para decode; cualquier otra cadena falla la validación. En modo de codificación, solo se conservan y relacionan las letras alfabéticas, las mayúsculas se ignoran al entrar, y el resultado son grupos a/b en minúscula separados por un espacio; si no queda ninguna letra tras el filtrado, el motor rechaza la solicitud con invalid_input, para que una cadena de solo dígitos no parezca un cifrado vacío exitoso. Tras la limpieza, la longitud del flujo debe ser múltiplo de cinco: un resto de uno a cuatro símbolos significa un grupo que no tiene cinco símbolos, y esa condición siempre eleva invalid_input con un mensaje explícito de grupo incompleto, en lugar de rellenar con ceros o inventar una letra. El texto ausente, el texto vacío, los tipos que no son cadena, y los modos desconocidos también elevan invalid_input. Combine la ejecución gratuita en el navegador de esta página con la API de pago cuando necesite el mismo resultado matemático dentro de un flujo automatizado. Las entradas inválidas devuelven invalid_input y no se cobran, lo que mantiene la validación barata mientras las transformaciones exitosas siguen teniendo un precio fijo por elemento.
Dónde encaja el cifrado baconiano en lecciones, acertijos y fixtures de prueba
Los servicios de backend precalculan cadenas de desafío para API de acertijos o entornos de enseñanza donde los estudiantes deben reensamblar grupos completos de cinco símbolos para desbloquear el siguiente paso. En esta página el trabajo se ejecuta enteramente en su navegador; a través de la API, cada consulta exitosa cuesta $0.002, la validación fallida no se cobra, y no se almacena nada después de que se devuelve la respuesta. Esa división —exploración interactiva gratuita y una API de pago idéntica— coincide con el resto del catálogo tier A del KIT y le permite pasar de una demostración de aula a un flujo automatizado sin cambiar el resultado transformado.
Casos de integración
Fixtures deterministas de integración continua
Genere pares reproducibles de texto cifrado y texto plano baconiano para pruebas unitarias, ficheros golden, y comprobaciones de contrato.