Hace poco os contábamos todo lo que se necesita saber de Smartlock en Android Lollipop, el desbloqueo inteligente de nuestro terminal Android usando dispositivos, personas o sitios de confianza cerca. Lo curioso del asunto es que la forma en la que está implementado deja hueco para pensar que otros desarrolladores pueden expandir su uso.
La clave está en que en el menú de Ajustes -> Seguridad hay que ir a Agentes de confianza y ahí habilitar "Smartlock (Google)" para poder acceder a estas características. ¿Pueden un desarrollador incluir su aplicación en esta lista de agentes de confianza? ¿Cómo?
Agentes de confianza, un API privado
Visto que dentro de Agentes de confianza aparece una lista en la que podemos habilitarlos pero sólo aparece Smartlock (Google) la pregunta clara es si podríamos crear una aplicación que se meta en la lista para que nos ofrezca "Smartlocks" alternativos.
La respuesta es sí pero no. Vamos primero a explicar qué es un Agente de confianza y cómo funciona en Android. Está todo bastante bien documentado en la documentación oficial de Android.
Un Agente de confianza es un servicio que notifica al sistema acerca de cree que el entorno es de confianza. Es el propio agente el que define lo que es "confianza", el sistema símplemente se cree lo que diga este agente. Cuando el agente determina que el entorno es de confianza se lo dice al sistema con una llamada, y entonces el sistema relaja las condiciones de seguridad. Hoy en día esto significa evitar el patrón, PIN o contraseña de desbloqueo.
Para realizar todo esto hay una API específica. Pero, y de aquí la explicación del "sí pero no", no está en la parte pública del SDK. Es decir, sólo está disponible para aplicaciones del sistema, los Agentes de Confianza tienen que integrarse en la ROM del sistema.
¿Puede mejorarse Smartlock?
Esta es la gran pregunta, ¿necesitamos más cosas que no tenga Smartlock de Google? La respuesta para mi es clara, sí. Google ha hecho una implementación buena de este agente de seguridad, tenemos eliminado el desbloqueo si estamos en Wifi, si tenemos un dispositivo Bluetooth conectado, NFC, estamos en una zona concreta o si reconoce nuestra voz o nuestra cara. Pero hay cosas que quedan fuera.
El mejor ejemplo es que muchos dispositivos Bluetooth LE no mantienen una conexión permanente con nuestro Android y no se pueden elegir como dispositivos cercanos de seguridad. Ahí quedan dentro los productos de Fitbit, que hoy por hoy es líder en wearables.
Otras ideas que se me ocurren es la elminación del desbloqueo de seguridad cuando estamos conectados a una estación base de telefonía móvil concreta, cuando lo seleccionamos de un widget (por ejemplo con un tiempo límite), cuando está conectado a un cargador... ideas hay muchas, mejores o peores, y está claro que Google no puede experimentar con todas.
Aquí una buena idea de Google sería abrir esta parte de Android a aplicaciones de terceros, mostrando una buena advertencia de seguridad, y permitir que los desarrolladores implementen sus ideas locas. Algunas podrían ser buenas y funcionar, otras quizá quedarían en el olvido.
¿Cómo podríamos ver próximamente alternativas a Smartlock?
Lo que está claro es que Google ha dejado hueco para Agentes de confianza alternativos a Smartlock, lo vemos claramente cuando nos aparece una lista que, de momento, sólo contiene un elemento. ¿Cómo podríamos ver alternativas a Smartlock?
Lo primero es en las ROMs. Está claro que los Agentes de confianza están limitados a aplicaciones del sistema, pero los desarrolladores de ROMs precisamente hacen eso, aplicaciones de sistema. Podrían implementar en sus ROMs aplicaciones complementarias o alternativas a Smartlock sin muchos problemas. La única pega es que seguiríamos limitados por la ROM que eligiéramos.
La segunda posibilidad es que Google abra la puerta a Agentes de confianza en aplicaciones normales, y por tanto descargables en Google Play, en futuras versiones de Android. Está claro que en Lollipop sólo teníamos una primera versión y tener una lista de estos agentes da pistas de por dónde podrían ir los tiros de Google. ¿Veremos hoy en la presentación de Android M un movimiento en este sentido? Estaría bien.
Ver 8 comentarios