Novedad: el cortafuegos de IA supervisa toda la plataforma y explica cada incidente con palabras sencillas. Vea cómo funciona

Guardar el secreto del dispositivo en una tarjeta SD: ¿mala idea o aceptable?

Guardar el secreto del dispositivo en una tarjeta SD: ¿mala idea o aceptable?

Resuelto 6 5

Traducido del English por IA ·

Proyecto de fin de carrera, ESP32-WROOM + módulo microSD, envía lecturas de un invernadero a Hermetry por MQTT/TLS. Funciona.Mi tutor preguntó por qué el token está compilado en el firmware y sugirió mover todas las «cosas de seguridad» (token, bundle de CA, credenciales WiFi) a un archivo en la tarjeta SD para que el mismo binario pueda ir en cada placa y yo solo cambie las tarjetas. Suena práctico. Pero luego un amigo dijo que guardar secretos en almacenamiento extraíble es de lo peor que se puede hacer.También leí que Hermetry admite certificados de cliente X.509 y estaba pensando en usar ese camino y guardar también el certificado y la clave en la tarjeta. Así que en realidad son dos preguntas:

  • ¿Es realmente malo guardar credenciales en memoria externa, y por qué?
  • ¿Puedo usar mi propio certificado X.509 con Hermetry?

Quiero entender el razonamiento, no solo un «no lo hagas», porque tengo que explicarlo en el informe.

Timestamps in UTC or it didn't happen.
♥ 1

Traducido del English por IA ·

Tu amigo tiene razón en general. Cualquiera que tenga 10 segundos a solas en el invernadero se marcha con la tarjeta y con la identidad de tu dispositivo.

♥ 0

Traducido del English por IA ·

Pero si está en la flash, también pueden leer la flash, ¿no? Sinceramente, no veo la diferencia.

Measure twice, poll once.
♥ 0

Traducido del English por IA ·

La diferencia está en el esfuerzo. Sacar una tarjeta no requiere ninguna habilidad. Volcar la memoria flash también es fácil en un ESP32, a menos que el cifrado de flash esté activado. Con cifrado de flash + cifrado de NVS, un volcado solo da datos ilegibles.

♥ 0

Traducido del English por IA ·

El año pasado revisé un diseño similar para un contratista, así que aquí está el razonamiento para el informe.Separa lo público de lo secreto. El paquete CA es público; el certificado del servidor es público y se verifica con un paquete CA normal, por lo que guardarlo en la tarjeta no es problema. La contraseña de WiFi y el token del dispositivo son secretos, ya que identifican exactamente a este dispositivo.Los secretos en medios extraíbles fallan por dos motivos: quitar la tarjeta no deja ningún rastro, y la tarjeta suele copiarse en otras placas («clona la tarjeta sin más»), así que varios dispositivos comparten una misma credencial. Hermetry permite una sola sesión por dispositivo; dos placas con el mismo token se expulsarían constantemente entre sí, y verías una toma de control en la pestaña Log del dispositivo.Sobre X.509: para tus propias placas no está disponible. Los certificados de cliente deben provenir de la autoridad de certificación de dispositivos de Hermetry, y no se ofrece subir tu propia CA para dispositivos de terceros; esa vía es para dispositivos licenciados que generan su clave y envían ellos mismos una CSR. Tu ESP32 usa un token de acceso o MQTT basic.Lo que haría en un ESP32:1. El mismo binario para cada placa es aceptable. Guarda el token en NVS durante el aprovisionamiento (un pequeño comando serie en el primer arranque), no en la tarjeta.2. Activa el cifrado de flash y el cifrado de NVS, para que un volcado de la flash no revele el token.3. La tarjeta solo para el registro de datos y el paquete CA.4. En Hermetry, un dispositivo y un token por placa; rota el secreto si una placa se pierde. Eso termina sus sesiones de inmediato.La limitación de certificados está en la última sección de Device certificates.

Solución aceptada♥ 6

Traducido del English por IA ·

Muy útil, gracias. El supervisor aceptó «CA pública en la tarjeta, secretos en NVS cifrada». La parte de X.509 me ahorró una semana; ya había empezado a generar una CA con openssl. Curiosamente, la semana pasada cloné la tarjeta para una segunda placa y los datos estaban incompletos; era exactamente el problema de la toma de control.

Timestamps in UTC or it didn't happen.
♥ 1

Traducido del English por IA ·

vale, el planteamiento de «cero conocimientos frente a algunos conocimientos» tiene sentido, gracias.

Measure twice, poll once.
♥ 0
Viendo 7 entradas – de la 1 a la 7 (de un total de 7)
  • Debes estar registrado para responder a este debate.

Únete a la conversación

Inicia sesión para preguntar y responder, dar me gusta a las publicaciones útiles y marcar la respuesta que resolvió tu problema. Cada aportación suma puntos y niveles.

Compartir