¿Por qué el teclado del Samsung Galaxy S3 no puede recopilar contraseñas?

Cuando habilito un método de entrada (una aplicación de teclado) en un dispositivo Nexus, veo el siguiente mensaje de confirmación:

Este método de entrada puede recopilar todo el texto que escribe, incluidos datos personales como contraseñas y números de tarjetas de crédito. Viene de la aplicación Highway. ¿Usar este método de entrada?

Entiendo esta advertencia. Debido a la forma en que funciona un método de entrada, tiene la capacidad de recopilar todo lo que escribo, y debo confiar en que el autor no abusará de esta capacidad. Pero cuando habilito un método de entrada en mi Samsung Galaxy S3 (y tal vez en otros dispositivos Samsung; no lo he probado), recibo un mensaje diferente (mi énfasis):

Este método puede recopilar todo el texto que ingrese, excepto las contraseñas , incluidos los datos personales y los números de tarjetas de crédito. Viene de la aplicación Highway. Usar de todos modos?

Verifiqué ingresar una contraseña en un formulario web y configurar la contraseña del dispositivo. En ambos casos, todavía usa el método de entrada (de terceros) que elijo para ingresar la contraseña. Entonces, ¿por qué Samsung afirma que el método de entrada no puede recopilar contraseñas? ¿Están haciendo algo increíblemente inteligente en su versión de Android o simplemente están diciendo tonterías?

Supongo que es lo último, o una variante de esto: reescribir su declaración a " no recopilará contraseñas" podría ser creíble. En mi humilde opinión, no puede ser mentira, aunque es difícil de probar (excepto contando el ejemplo del usuario escribiendo un texto como "mi contraseña es foobar", ¿cómo reconocerá eso la aplicación?). ¿Cómo puede Samsung estar tan seguro de saber siempre dónde se ingresa una contraseña?
TBH, supongo que significa que no puede usar un teclado de terceros para ingresar la contraseña de la pantalla de bloqueo al desbloquear la pantalla. Pero si todavía usa el teclado seleccionado para configurar la contraseña, eso no es un beneficio de seguridad.
Simplemente no es honesto sugerir que un teclado no tiene acceso a las contraseñas que escribe al usarlo. Eso es una contradicción en sí mismo. La aplicación de teclado tiene acceso a todo lo que escribe (si eso excluyera las contraseñas, no podría escribirlas) y, por lo tanto, puede recopilar todo. Si lo hace , es un problema diferente que no se ajusta a la redacción. No digo que colocaron intencionalmente un "reclamo falso", pero simplemente no puede ser cierto. Lo correcto sería "puede recopilar todo el texto que ingrese, pero posiblemente/con suerte/... excluya...". Para aplicaciones de terceros, no pueden estar seguros. Escriba uno, culpe a ellos :)

Respuestas (1)

Como programador encuentro esto interesante. Los campos de contraseña pueden tratarse (y suelen tratarse) de forma diferente a los cuadros de texto normales. Dado que Android es de código abierto, supongo que es posible que Samsung al menos haya intentado incluir un código que evite que un campo de contraseña pase la información escrita a la aplicación de teclado, pero como otros han dicho, soy escéptico.

Para que una aplicación de teclado recopile sus datos, debe incluir el paso adicional de capturar su entrada, almacenarla en algún lugar, incluso si es solo temporalmente en una variable de instancia, y luego enviarla a un tercero. Me interesaría saber qué dice Samsung sobre esto y cómo supuestamente lo previenen, pero supongo que es una respuesta que no es probable que obtengamos.