Ocultar texto en una imagen
Oculta un mensaje de texto secreto en una imagen con esteganografía LSB, con cifrado AES-256-GCM opcional, y revélalo después. Todo en local, sin subidas.
Cómo ocultar un mensaje en una imagen
- Suelta una imagen en la zona de carga o haz clic en ella para elegirla. Lo mejor es un PNG, pero sirve cualquier imagen que tu navegador pueda abrir: el resultado se guarda siempre como un PNG nuevo.
- En Ocultar un mensaje, escribe tu texto en Mensaje secreto. La línea Capacidad indica cuántos bytes ocupa el mensaje y cuántos caben en la imagen.
- Si quieres confidencialidad, marca Cifrar el mensaje con una frase de contraseña (AES-256-GCM) y escribe una Frase de contraseña. Mostrar la frase de contraseña te permite comprobar lo que has escrito.
- Haz clic en Ocultar mensaje y descargar PNG. El archivo se guarda como
nombre-hidden.pngy la línea de estado te dice cuántos valores de color se han modificado.
Cómo revelar un mensaje oculto
- Suelta el PNG en la misma zona de carga. Si contiene un mensaje ocultado con esta herramienta, un aviso te lo indica en cuanto se carga la imagen.
- Si el mensaje está cifrado, escribe la frase en Frase de contraseña (solo si el mensaje está cifrado).
- Haz clic en Revelar mensaje oculto. El texto aparece en Mensaje oculto, listo para copiar.
Todo ocurre en tu navegador: la imagen, el mensaje y la frase de contraseña nunca se suben.
Cómo funciona: el bit menos significativo (LSB)
Cada píxel guarda un valor de rojo, uno de verde y uno de azul entre 0 y 255. Esta herramienta sustituye el último bit (el bit menos significativo) de esos tres valores por un bit de tu mensaje, píxel a píxel en orden de lectura. Por ejemplo, un rojo de 200 es 11001000 en binario; al guardar el bit 1 queda 11001001, es decir, 201. Un valor de color nunca cambia en más de 1, una diferencia que el ojo no puede ver.
Solo se usan los píxeles totalmente opacos, y el canal alfa no se toca nunca. Los píxeles semitransparentes se saltan, porque los navegadores no pueden conservar exactamente sus bits bajos. Antes del mensaje, la herramienta escribe una cabecera de 13 bytes: una firma, un indicador de si el mensaje está cifrado, la longitud y una suma de verificación CRC-32 que detecta los datos dañados.
La Capacidad es aproximadamente (número de píxeles opacos × 3 ÷ 8) − 13 bytes. Una foto de 1000 × 1000 admite unos 375 000 bytes, mucho más que cualquier mensaje de texto. El cifrado añade 49 bytes (versión, número de iteraciones, sal de 16 bytes, IV de 12 bytes y etiqueta de autenticación de 16 bytes). Con cifrado, la clave se deriva de tu frase de contraseña con PBKDF2-SHA-256 (600 000 iteraciones) y el texto se cifra con AES-256-GCM, que además detecta cualquier manipulación.
Lo que la esteganografía no hace
La esteganografía oculta que existe un mensaje; por sí sola no es una protección fuerte. Una inserción LSB secuencial como esta se detecta fácilmente con herramientas de estegoanálisis (pruebas de chi cuadrado, análisis del plano LSB), y cualquiera que abra la imagen en esta herramienta puede leer un mensaje sin cifrar. Si el contenido debe seguir siendo privado, usa la opción de cifrado con una frase de contraseña larga y única: la protección es tan fuerte como la frase. Incluso así, el cifrado protege el contenido, no el hecho de que haya algo oculto.
Los bits ocultos también son frágiles. La recompresión JPEG o WebP, el redimensionado, el recorte, las capturas de pantalla, los filtros y la mayoría de las redes sociales y aplicaciones de mensajería (que recomprimen y a menudo convierten las imágenes) destruyen el mensaje. Comparte el PNG como archivo: un adjunto de correo, un enlace de almacenamiento en la nube o la opción «enviar como documento» de una aplicación de mensajería.
Uso responsable
Algunos buenos usos son acertijos, juegos de escape y retos CTF, marcar tus propias imágenes, enseñar cómo funcionan las imágenes digitales o guardar notas privadas. No la uses para saltarte las normas de tu trabajo o centro educativo ni la ley, y respeta las imágenes y los derechos de autor de los demás.
Preguntas frecuentes
¿Se puede ver que mi imagen contiene un mensaje?
No a simple vista: cada valor de color cambia como mucho en 1. Pero una herramienta de estegoanálisis suele poder detectar la inserción LSB, y esta misma herramienta avisa de que hay un mensaje en cuanto se carga la imagen.
¿Por qué se ha perdido mi mensaje oculto?
Probablemente la imagen se recomprimió, se redimensionó o se convirtió, por ejemplo en una red social, una aplicación de mensajería o un editor de fotos. Solo el archivo PNG exacto conserva los bits intactos.
¿Puedo partir de una foto JPEG?
Sí. La foto se decodifica y el resultado se guarda como PNG, que no tiene pérdida. Mantenla en PNG: si la vuelves a guardar como JPEG, el mensaje se borra.
¿Qué pasa si olvido la frase de contraseña?
El mensaje no se puede recuperar. No hay ninguna puerta trasera, y la comprobación de autenticación de AES-GCM rechaza una frase incorrecta.
¿Por qué el PNG pesa más que el original?
PNG no tiene pérdida, así que suele ocupar más que un JPEG de la misma foto. Es el precio de conservar intactos todos los bits ocultos.
Herramientas relacionadas
- Cifrar texto con contraseña Cifra y descifra texto con una frase de contraseña en tu navegador, con AES-256-GCM y PBKDF2 a 600.000 iteraciones. No se sube nada.
- Quitar metadatos EXIF Quita los datos EXIF y la ubicación GPS de tus fotos antes de compartirlas. Sin pérdida en JPEG y PNG, por lotes y sin subir nada.
- Convertir imagen a Base64 Convierte una imagen a Base64 o a data URI con CSS y HTML listos para pegar, o decodifica Base64 a imagen con vista previa. Gratis, privado y sin subidas.
- Convertidor de formatos de imagen Convierte imágenes entre PNG, JPG, WebP, BMP e ICO en tu navegador. Conversión por lotes, tamaños de favicon y transparencia, sin subir nada.