BookinglyTech News
Software

Ente Photos cifra el reparto de bibliotecas y mueve su ML a la GPU

La app de fotos de código abierto permite compartir álbumes enteros sin que el servidor pueda descifrarlos y acelera por diez el indexado local al pasar sus modelos a la GPU

2 min de lecturaAlternativeTo0 vistas

Ente Photos ha metido dos cambios en la misma versión: compartir la biblioteca fotográfica completa con otra persona en un solo paso, y una reescritura de su motor de ML que, según la compañía, acelera por diez el indexado en el dispositivo al mover los modelos a la GPU.

Lo primero responde a una petición recurrente: compartir todo el catálogo con la pareja, al estilo del Partner Sharing de Google Photos o la biblioteca compartida de iCloud, con una diferencia que Ente subraya: el cifrado de extremo a extremo se mantiene por defecto. Desde los ajustes se comparten de golpe todos los álbumes propios, con la opción de que los nuevos se compartan solos a partir de ahí.

Cómo se reparten las claves

Cada álbum conserva su propia clave de cifrado. Al activar el uso compartido, el dispositivo del propietario sella cada una de esas claves con la clave pública del destinatario. Así los servidores pueden establecer el intercambio sin poder descifrar nada: ven los sobres, no el contenido. El reparto arranca en iOS y Android para los planes familiares, que admiten hasta cinco miembros sin coste extra, y web y escritorio van detrás. El código es abierto y está disponible también para quien lo monte en su propio servidor.

La segunda parte toca el rendimiento. El ML de Ente alimenta el reconocimiento facial y la búsqueda, y corre entero en el dispositivo porque el diseño zero-knowledge le impide procesar fotos en el servidor. Ahora se ejecuta por primera vez en la GPU. En un iPhone reciente, todos los modelos juntos tardan unos 40 milisegundos por foto, diez veces menos que la implementación anterior, atada a la CPU.

No fue cuestión de dar una palanca. El equipo reescribió trozos de los modelos para sustituir operaciones que los aceleradores GPU de CoreML y WebGPU no soportan —activaciones PReLU y GELU expandido— por operadores fusionados matemáticamente equivalentes, y evitar así caídas costosas a la CPU. A eso se suman ajustes en el pipeline de Rust: un decodificador HEIC más rápido y búferes de imagen sin copia que dejan el pre y postprocesado en unos pocos milisegundos por foto. El mismo pipeline corre igual en móvil y escritorio, con soporte de GPU en macOS, Windows y Linux.

Lo jugoso no está en la app de fotos en sí, sino en cómo se resuelven dos problemas que aparecen en cuanto un producto promete cifrado de extremo a extremo: compartir de verdad sin que el servidor vea nada, y hacer trabajo pesado de ML en local cuando no puedes mandar los datos fuera. Los números son de Ente, no de un tercero, y no hay banco de pruebas independiente que los respalde. Queda por ver si el reparto de bibliotecas llega a web y escritorio al ritmo que promete.