¿Cómo autenticar una aplicación legítima en Internet of Things?

2

Quiero desarrollar un servidor para un sensor en Internet of things (IoT). Todos pueden comprar la aplicación para ese sensor específico. La aplicación intercambiará datos con el servidor. ¿Cómo puede el servidor validar que los datos realmente provienen de una aplicación legítima?

Dado que todos pueden comprar la aplicación y un sensor compatible, 'todos' también pueden desarmar / piratear y copiar la autenticación en una aplicación que no sea legítima, también si el servidor proporcionara un código de licencia de una sola vez o un archivo compartido previamente. clave, o un certificado.

Mirando Seguridad basada en DTLS con autenticación bidireccional para IoT , parece que un módulo de plataforma confiable (TPM) es el camino a seguir. Pero esa no sería una solución viable para una aplicación en una tienda de aplicaciones, ¿no es así?

¿Hay alguna otra forma para que el servidor valide que un mensaje proviene realmente de una aplicación legítima? ¿Quizás una forma que no sea tan sólida como un TPM, pero que sea aceptable dependiendo del valor de los datos a proteger?

    
pregunta Dick99999 14.01.2015 - 19:15
fuente

1 respuesta

1

El software se puede copiar de forma inherente, como han encontrado todos aquellos que han tratado de evitar que salgan copias de su software. Los crackers tienen más tiempo para gastar que tú, y solo tienen que encontrar un exploit.

Si estás hablando de tiendas de aplicaciones, tienes cinco opciones principales:

  • Confíe en sus usuarios y mantenga su software simple y robusto.
    • Recomiendo este.
  • Elija las tiendas de aplicaciones cuyos mecanismos de validación confíe para que sean "lo suficientemente buenos" y úselos.
    • Segundo mejor
  • Venda una pieza de hardware que sea un autentificador (un dongle) y luego regale la aplicación de forma gratuita, ya que sin el dongle / autentificador no vale nada.
    • Por ejemplo, un Yubico FIDO , o intente encontrar un Lector de tarjetas inteligentes Bluetooth.
    • O use uno ya disponible, como el TPM que mencionó.
      • Si lo hace, sea explícito y obvio en sus requisitos; muchos clientes, incluido yo mismo, deshabilitan TPM.
  • Dedique una gran cantidad de tiempo y esfuerzo a soluciones que no van a hacer mucho al final.
    • Y más aún, tratar con clientes que viajan mucho, que cambian de dispositivo con frecuencia, y así sucesivamente que aún quieren que su aplicación funcione.
  • Haga su propia tienda de aplicaciones, ate cada tarjeta a una cuenta y realice un cargo por servicio o por tiempo que se agote.
    • Y, nuevamente, trate con clientes enojados cuyas cuentas fueron robadas (tal vez porque usan una contraseña pésima) y, por lo tanto, pagó por los servicios que no están recibiendo.
      • Y las compañías de tarjetas de crédito que le hicieron una devolución de cargo.
respondido por el Anti-weakpasswords 15.01.2015 - 05:40
fuente

Lea otras preguntas en las etiquetas