¿Se verá impactado el rendimiento de mi dispositivo Android si activo el cifrado de almacenamiento?

A día de hoy nuestros smartphones almacenan una gran cantidad de información personal sobre nosotros mismos, tales como cuentas bancarias, fotografías, mensajes de correo electrónico, etc.

Las pantallas de bloqueo han demostrado no ser una forma efectiva de proteger el acceso a nuestro teléfono salvo que optemos por contraseñas fuertes o lectores de huella dactilar. Por ello cada vez más usuarios optan por cifrar el almacenamiento de su dispositivo.

A partir de Lollipop, los smartphones con Android cuentan con la opción de cifrar el almacenamiento a nivel de kernel utilizando una clave AES de 128 bits que se genera durante el primer arranque, y que se combina con sistemas de autenticación basados en hardware como TrustZone.

El cifrado del almacenamiento se puede realizar a dos niveles: hardware o software. El cifrado software utiliza la CPU para cifrar/descifrar datos, bien sea utilizando una clave que se desbloquea con la contraseña del usuario, o utilizando la propia clave del usuario para autenticar las operaciones.

Por otro lado, el cifrado hardware utiliza un módulo de procesamiento dedicado que genera la clave de cifrado y libera ciclos de CPU a la hora de cifrar/descifrar, además de proteger las claves críticas y los parámetros de seguridad frente a posibles ataques.

Aunque los nuevos chips de Qualcomm son compatibles con cifrado por hardare, Google ha optado por el cifrado por software en Android, lo que fuerza al teléfono a consumir ciclos de CPU y, por tanto, degradar el rendimiento del dispositivo.

El Nexus 6 de Motorola fue el primer teléfono que forzó el cifrado por software, dado que Lollipop llegó con el cifrado del almacenamiento activado. Al poco de su lanzamiento, diversas pruebas mostraron diferencias en el rendimiento de varios Nexus 6, con y sin cifrado activado. Los resultados eran alarmantes, ya que mostraban que el Nexus 6 con cifrado era bastante más lento que el que no estaba cifrado.

Al poco tiempo del anuncio del Nexus 5X y el Nexus 6P, el Vice Presidente de Google para Ingeniería, Dave Burke, confirmó que los nuevos dispositivos también contarían con cifrado por software, argumentando que los nuevos procesadores de 64 bits ofrecen mejores resultados a la hora de cifrar por software que los chips de cifrado por hardware.

Sin embargo, los chicos de AnandTech nos han demostrado que, aunque el rendimiento ha mejorado, el Nexus 5X queda un 30% por detrás del LG G4 en rendimiento a pesar de tener unas especificaciones similares y utilizar el mismo almacenamiento eMMC 5.0 de Toshiba (número de modelo 032G74). Por otro lado, los dispositivos de Apple siempre han contado con cifrado por hardware desde el iPhone 3GS.

Diversas optimizaciones en Lollipop hicieron que el Nexus 6 con Lollipop tuviera un rendimiento bastante mejor que el Nexus 6 con KitKat a la hora de cifrar. Sin embargo, todavía se pueden notar unos ciertos parones al abrir y utilizar aplicaciones que leen o escriben muchos datos, como la galería de fotografías, en comparación con los dispositivos sin cifrar.

Otro aspecto importante es que a algunos fabricantes no les acaban de gustar las soluciones de cifrado de Google. Por ejemplo, el Gear S2 de Samsung y su plataforma de pagos móviles, Samsung Pay, son incompatibles con dispositivos Samsung que hayan sido cifrados para ciertas operaciones (por ejemplo, para añadir tarjetas de crédito a Samsung Pay).

Por tanto ¿deberías activar el cifrado en tu dispositivo? Para la mayoría de los usuarios, posiblemente el cifrado no sea algo estrictamente necesario. Si no quieres sufrir una cierta degradación del rendimiento de tu dispositivo, quizás prefieras optar por desactivarlo y utilizar un buen sistema de control de acceso al terminal, como la huella dactilar o una contraseña fuerte, en lugar del habitual PIN o patrón. Aunque los datos seguirán estando en tu teléfono, será más complicado que alguien pueda acceder a ellos.

¿Qué opinas del cifrado? ¿Crees que Google debería habilitar el cifrado por hardware? ¿Tienes activado el cifrado? En ese caso ¿has notado algún problema de rendimiento?