Herramientas · Privacidad
Una foto privada puede viajar dentro de otra foto
Hay fotos que no deberían quedar "en claro" en la galería ni en el chat: un documento, una evidencia, algo personal. La primera versión de ShadowPhoto nació de esa necesidad concreta: esconder una foto privada dentro de un PNG de portada, cifrarla bien y poder moverla sin depender de un servidor mío ni de una nube propia.
Es una app Android hecha con Kotlin y Jetpack Compose. No hay backend de ShadowPhoto. Lo privado vive en el archivo; la llave la tienes tú.
01 / QUÉ HACEPortada visible, original cifrado
El truco no es magia de steganografía invisible al azar: usamos un chunk privado de PNG llamado shPd. Quien abre el archivo con un visor normal ve la portada. Quien tiene ShadowPhoto (u otro cliente que entienda shPd) y la frase correcta puede recuperar el original.
El cifrado es Argon2id para derivar la clave a partir de la passphrase y AES-256-GCM para el contenido. Sin cuenta, sin subir nada a un servidor de ShadowPhoto.
02 / EL FLUJODe la cámara al sello
- Capturas o eliges la foto privada.
- Eliges una portada (el PNG que se ve).
- Defines una passphrase y sellas.
- La bóveda de la app muestra solo las portadas: el original no queda expuesto en la lista.
- Para verlo, desbloqueas con la frase (y biometría, cuando la configuras).
- Puedes exportar como PNG o como
.shp.
Al ver el original, la app usa FLAG_SECURE: Android evita capturas de pantalla y la aparición en el selector de apps. No es un escudo absoluto contra todo hardware, pero sí una barrera sensata en el uso diario.
03 / COMPARTIRSin recomprimir el PNG
De poco sirve cifrar bien si el canal aplasta el archivo y se lleva el chunk. Por eso el compartir está pensado alrededor de eso:
- Hoja de compartir del sistema, como cualquier archivo.
- Atajo a WhatsApp como documento, para que no lo trate como foto de galería y lo recomprima.
- Álbum MediaStore
Pictures/ShadowPhoto, compatible con el respaldo de Google Fotos. - Intent hacia Google Fotos, con un aviso claro: si vuelves a guardar o editar ahí, el visor puede quitar el chunk
shPdy dejar solo la portada.
Hoy, para descifrar hace falta la app (u otro cliente que entienda shPd). Quien recibe el PNG sin ShadowPhoto solo ve la portada.
04 / PROBARAPK de prueba (debug), no Play Store
Descarga de prueba: puedes instalar una APK debug de ShadowPhoto para probar en tu Android. No es la versión de Play Store ni una release firmada de producción. Paquete com.shadowphoto, Android 11+. Solo para pruebas. Hay que permitir instalación desde orígenes desconocidos; bajo tu propio riesgo. Descargar ShadowPhoto-debug.apk ↘
Si ya tienes una versión anterior instalada con otra firma, Android puede pedirte desinstalarla antes. Esta build es para validar el flujo (sellar, bóveda, desbloquear, compartir), no para depender de ella como producto final.
05 / QUÉ VIENEAlcance natural, sin promesas de tienda
Esta es la primera versión: personal, centrada en privacidad, en Android. El camino natural que veo a partir de aquí incluye:
- QR con la clave aparte de la imagen, para no meter la passphrase en el mismo archivo que viaja.
- Mejoras al compartir, según cómo se comporten los canales reales.
- Un visor web opcional, para quien necesite abrir un
shPdsin instalar la app — siempre como capa aparte, no como servidor que guarde tus fotos.
Cuando haya una vía en Play Store (o una release firmada estable), lo cuento con el enlace correcto. Mientras tanto, la APK de arriba es solo para pruebas.
06 / INDUSTRIASDirecciones posibles, no el producto de hoy
La v1 está pensada para uso personal y privacidad cotidiana. Aun así, el mismo patrón —portada inocua + original cifrado + sin servidor— encaja como dirección en varios mundos, si algún día se endurece con políticas, auditoría y controles propios de cada sector:
- Salud: fotos de documentos o hallazgos que no deberían quedar sueltas en una galería compartida.
- Periodismo: material sensible de campo que necesita viajar sin lucirse en la vista previa del chat.
- Legal: fotos de evidencia o anexos que conviene mover con menos exposición accidental.
- Privacidad personal: lo obvio —familia, identidad, lo que no es para el scroll ajeno.
- Empresa / BYOD: políticas de fotos en el teléfono del trabajo, donde "está en la galería" ya es un riesgo.
Sería deshonesto venderlo hoy como solución hospitalaria o corporativa. Es una base técnica seria; el cumplimiento de cada industria es otro proyecto.
07 / CIERRELa privacidad empieza en el archivo
Me interesa la privacidad que no depende de "confía en mi nube". ShadowPhoto apuesta por eso: el secreto viaja en el PNG, la llave la tienes tú.
Si quieres probarlo ya, arriba está la APK debug. Y si quieres conversar sobre el enfoque (chunk privado, cifrado, compartir sin destruir el contenedor), escríbeme por el contacto de joseareche.com.