smartMINI/smartRAIL: cifrado de los archivos de registro
A partir de la versión 4.3.0 de Yocto o de la versión 20.19 del DeviceManager es posible cifrar los archivos de registro que pueden solicitarse desde la nube.
Si se activa el cifrado, los archivos TAR.GZ se cifran de forma simétrica mediante AES-256-CBC con derivación de clave PBKDF2. Los archivos tienen la extensión tar.gz.enc
Para el descifrado puede utilizarse el software de código abierto OpenSSL. También está disponible para Windows:
- https://slproweb.com/products/Win32OpenSSL.html
- https://slproweb.com/download/Win64OpenSSL_Light-3_0_8.msi
En Linux, OpenSSL puede instalarse desde los repositorios de paquetes de las distribuciones.
Nota sobre la implementación
Cuando se solicitan los archivos de registro, los archivos de registro abiertos se copian, se amplían con la salida de diversos programas de línea de comandos, se les añaden los archivos de configuración y se guardan en una carpeta temporal para comprimirlos. En versiones anteriores, esta carpeta temporal se creaba en la tarjeta SD (y se dejaba allí como copia de seguridad). En la versión actual se comprueba si hay espacio suficiente en la eMMC para la carpeta temporal. (Esto debería cumplirse siempre en los dispositivos Quad Core, ya que disponen del doble de memoria flash eMMC que los dispositivos Single Core). Según el espacio disponible, los archivos de registro ya no acaban en la tarjeta SD. Tras la copia, los archivos de registro se comprimen (y, opcionalmente, se cifran). A continuación, a diferencia de las versiones anteriores, la carpeta temporal se elimina inmediatamente por razones de seguridad.
Activación del cifrado
Comando SCPI al DeviceManager: SYSTEM:LOGFILE:PASSWORD somepassword
Desactivación del cifrado (eliminando la contraseña)
Comando SCPI al DeviceManager: SYSTEM:LOGFILE:PASSWORD
Descifrado en Windows
"c:\Program Files\OpenSSL-Win64\bin\openssl.exe" aes-256-cbc -pbkdf2 -salt -d -in d:\Temp\20230209_091352-log_2023_02_09__09_13_47.tar.gz.enc --pass pass:somepassword > d:\Temp\logfiles.tar.gz
A continuación, el archivo TAR.GZ puede descomprimirse con normalidad ...
Descifrado en Linux
openssl aes-256-cbc -pbkdf2 -salt -d -in 20230209_091352-log_2023_02_09__09_13_47.tar.gz.enc --pass pass:somepassword | tar xz
Aquí el descifrado y la descompresión se realizan en un solo paso.