Inicio Componentes La inteligencia embebida permite la autenticación digital en dispositivos médicos

La inteligencia embebida permite la autenticación digital en dispositivos médicos

La autenticación digital puede aportar un elevado nivel de certidumbre para determinar si un accesorio de dispositivo médico es correcto y genuino, pero con un impacto mínimo en el diseño. El sistema puede responder de la manera prevista por el diseñador del sistema una vez detectado que un accesorio no tiene una autenticación correcta. La respuesta puede variar desde un simple aviso al usuario de que el accesorio ha fallado en la autenticación hasta evitar que el sistema entre en funcionamiento.

 

Autenticación digital

 

Desde los sistemas de identificación sencillos hasta el intercambio de firmas digitales se abarca todo el abanico de técnicas de autenticación digital. La autenticación digital requiere inteligencia integrada en el sistema y en el accesorio autenticado a nivel de hardware. Muchos sistemas modernos ya incorporan un procesador embebido que se pueden utilizar para controlar la autenticación y en el accesorios un procesador puede encargarse de revisar la implementación de la autenticación. La incorporación de un microcontrolador de pequeño tamaño, bajo coste y bajo consumo resulta relativamente sencilla si el accesorio autenticado no contiene ningún tipo de inteligencia embebida.

Otro requisito es un canal de comunicaciones bidireccional entre el sistema y el accesorio para permitir el intercambio de datos. El sistema y el accesorio pueden utilizar un canal de comunicaciones existente o bien se puede aprovechar un canal incluido en el equipo que podría ampliarse para permitir comunicaciones con el accesorio. Se pueden emplear UART, I2C™, SPI y protocolos de un solo hilo (como el protocolo UNI/O®) si se necesita añadir un canal de comunicaciones, debido al limitado número de conectores, los pocos requisitos para la implementación del protocolo y el amplio abanico de dispositivos con soporte de hardware. RFID podría resultar indicado para algunas aplicaciones médicas debido a que no exige conexiones eléctricas externas. Esto simplifica la limpieza y la esterilización ya que accesorios y sistemas pueden ser herméticos. La transmisión de la identificación puede proporcionar una autenticación sencilla ya que el accesorio se autoidentifica al sistema cuando se le pregunta. El microcontrolador del accesorio se puede sustituir por una EEPROM serie con una identificación almacenada que es leída por el sistema mediante esta técnica. Problemas como el uso de accesorios incorrectos o la reutilización accidental al almacenar los datos que indican que el accesorio ya se ha utilizado se pueden evitar con la transmisión de la identificación. Sin embargo, el nivel de seguridad es muy bajo dado ya que los falsificadores solo tienen que reproducir la identificación guardada en un accesorio válido.

Un sistema de pregunta y respuesta/autenticación y sus derivados ofrecen una solución más segura. Con esta técnica, el sistema formula una pregunta para la cual solo tiene respuesta un accesorio auténtico. El accesorio auténtico responde correctamente, mientras que el falsificado queda al descubierto y es gestionado adecuadamente por el sistema.

La siguiente figura muestra cómo el sistema de pregunta y respuesta/autenticación emplea varias etapas en un montaje típico.

1. El sistema genera un número aleatorio, o pregunta.

2. La pregunta se transmite al accesorio.

3. El accesorio modifica la pregunta de forma preconfigurada y no obvia para crear la respuesta.

4. El accesorio transmite la respuesta al sistema.

5. El sistema conserva una copia de la pregunta y la modifica para determinar la respuesta ideal.

6. El sistema compara la respuesta ideal a la respuesta del accesorio. Si coinciden, el accesorio es auténtico.

El sistema necesita permitir un gran número de preguntas para defenderse frente a las falsificaciones que generan una tabla de respuestas automáticas para una autenticación segura. Además de hacer que el coste que conlleva almacenar grandes tablas no resulte económico para los falsificadores, el cálculo de las respuestas sobre la marcha, en lugar de almacenar las respuestas en el accesorio, se reducen los requisitos de almacenamiento.

En un sistema digital determinístico no resulta sencillo generar números aleatorios en el sistema para utilizarlos como preguntas. Pocas medidas externas son realmente aleatorias, impredecibles y uniformemente distribuidas, y un número limitado de preguntas potenciales reduce el número de respuestas que tienen que han de almacenar los falsificadores. Un algoritmo de generación de números pseudoaleatorios es un método más robusto en el que cada sistema tiene un número de origen único, posiblemente utilizando una forma modificada del número de serie del sistema. Los algoritmos para la generación de números pseudoaleatorios validados producen una secuencia de números sin repetición que se distribuye uniformemente en todo el rango potencial de valores de salida. El valor de origen utilizado para iniciar el algoritmo determina la secuencia de los valores de salida y cada sistema debería tener un único valor de origen, de forma que produzca una secuencia de números única. Las variables del algoritmo se deberían almacenar en una memoria no volátil de manera que sus valores se conservaran cuando se desconecte la alimentación del sistema con el fin de evitar que el algoritmo se reinicialice y se repita la misma secuencia de números.

El criptografiado de la pregunta o su paso por una función matemática unidireccional, también denominado mezcla segura, puede proporcionar la modificación de la pregunta. En ambos casos, la modificación no es obvia y no produce ninguna tendencia identificable a la salida para entradas secuenciales. La modificación no debe ser obvia porque las preguntas se pueden monitorizar mediante accesos ilegales en el canal de comunicaciones. Para determinar la modificación por criptografiado y algoritmos de mezcla segura se necesita un excesivo número de cálculos y un gran número de pares pregunta-respuesta. AES, TDES y XTEA son cifradores de criptografiado simétricos basados en bloques para autenticación basada en microcontrolador porque necesitan poca memoria RAM y poco espacio de programa y son eficientes desde el punto de vista del cálculo. Estas características permiten recurrir a microcontroladores de bajo coste y su eficiencia implica que se puede realizar un criptografiado mediante la ejecución de un reducido número de instrucciones. Esto disminuye la corriente total al permitir que el microcontrolador pase a un estado de bajo consumo una vez finalizado. Los cifradores basados en bloques criptografían un cierto número de bytes al mismo tiempo y producen el resultado del mismo tamaño. Los tres cifradores de criptografiado son de dominio público, se han sometido al análisis internacional sobre su seguridad y se estima que su potente criptografiado es bien conocido. Los algoritmos de mezcla segura son similares a una suma de verificación de la pregunta, con un valor secreto entremezclado, que proporciona un método para determinar si los cálculos se han realizado en un dispositivo auténtico. Los algoritmos de mezcla, a diferencia del criptografiado, no tienen una configuración uno-uno. La entrada original no se puede recuperarse a partir del resultado dado que podría producirse a partir de más de un conjunto de datos de entrada. Los algoritmos de mezcla segura como HMAC-SHA-1 y HMAC-SHA-256 resultan apropiados aunque requieren mucha más memoria RAM y memoria de programa, así como un microcontrolador más caro.

El método de modificación para los datos de entrada se determina por medio de una clave tanto para mezcla segura como para algoritmos de criptografiado. La clave, y no los cifradores de criptografiado seleccionados, determinan la seguridad del sistema y por tanto deben mantenerse en secreto. Este método, denominado principio de Kerchoff, establece que el conocimiento del algoritmo utilizado no niega la seguridad del sistema porque la clave determina cómo se modifica la entrada. Para asegurar que la clave no se pueda leer de forma sencilla y mantener el secreto, se debe conservar la memoria de sistema, por ejemplo en una flash o EEPROM integrada en el procesador. Esto también se puede lograr almacenando la clave en la memoria integrada del microcontrolador y activando funciones de seguridad para bloquear que pueda descargarse la identificación de la calve. En cualquier caso, la manipulación y el conocimiento de las claves durante el diseño del sistema y los entornos de producción se deben gestionar cuidadosamente para evitar que se descubran.

Algunos algoritmos pueden trabajar con claves de dimensión variable, mientras que las claves más grandes ofrecen una mayor seguridad a expensas del coste de más cálculos y recursos para lograr el criptografiado. Todas las técnicas de criptografiado son vulnerables a un ataque de fuerza bruta. Utilizando un par conocido de datos de entrada y salida, la entrada se criptografía con una secuencia de claves progresiva hasta lograr la salida correspondiente. Pese a que esto puede exigir un volumen considerable de cálculos incluso para claves más pequeñas, el incremento constante de la potencia de cálculo disponible significa que vale la pena incluir la mayor clave posible para la gama adecuada de microcontroladores, dado que el número de claves crece exponencialmente con el tamaño de la clave, incrementando así el tiempo que necesita un ataque por fuerza bruta. Las claves deben elegirse aleatoriamente para que sea menos probable que un ataque por fuerza bruta encuentre la clave en poco tiempo. Dado que es matemáticamente posible que un ataque por fuerza bruta encuentre la clave en su primer intento, es realmente muy poco probable debido al enorme número de posibilidades.

Con el fin de impedir un ataque, es posible aumentar suficientemente el tiempo necesario para generar tablas de respuestas auténticas. La implementación de tiempos de espera, como cinco segundos entre autenticación y añadiendo límites a la velocidad máximo de los datos aceptable para las comunicaciones, lo cual limita con qué frecuencia se reciben las preguntas, se logra este objetivo. Con el aumento exponencial de los bits de las preguntas en la tabla, el almacenamiento resulta prohibitivamente caro para los falsificadores. También hay métodos para preguntas de tamaño superior al del bloque de cifrado. La reautenticación periódica puede evitar que el sistema se active con un accesorio auténtico y posteriormente que se intercambie con otro en la postautenticación. La formulación de preguntas a múltiples accesorios en paralelo reducirá el tiempo necesario para generar una tabla de respuestas correctas. Sin embargo, la tabla aún exigirá un gran volumen de almacenamiento y el tiempo requerido aún sería significativo.

Incorporar a cada accesorio autenticado una clave de criptografiado individual es una mejora que da a cada accesorio su propia respuesta única a una pregunta, pero necesita que el sistema almacene las claves de criptografiado para todos los accesorios autenticados o que sea capaz de deducir la clave necesaria. Ambos métodos exigen que el accesorio tenga un número de serie con el fin de identificar la clave necesaria, pero deducir la clave es más eficiente desde el punto de vista del almacenamiento. El sistema lo suministra con el criptografiado del número de serie del accesorio utilizando una clave maestra secreta añadida, como muestra la Figura 3. El resultado de esta operación se utiliza como clave de criptografiado para autenticación. Si la clave maestra está comprometida, este método es incapaz de detectar duplicados por lo que hay que tomar medidas para salvaguardar la clave maestra. Solo el sistema debe retener la clave, dado que los números de serie de los accesorios se conocen durante su fabricación y la clave maestra ya se ha determinado, estableciendo así la clave de criptografiado para cada accesorio. Por tanto, los accesorios sólo se han de programar con su número de serie y su clave de criptografiado y no necesitan la clave maestra. La ventaja de esta técnica es que no se puede interrogar a varios dispositivos en paralelo porque cada uno tendrá una respuesta diferente. Además, en el caso de que un accesorio autenticado pueda estar comprometido, sólo se lograrán clones de este accesorio con números de serie idénticos. Los sistemas podrían incluir una lista negra de estos números de serie una vez detectados.

El sistema puede almacenar automáticamente un número de serie del accesorio mediante la incorporación de autenticación digital y permite gestionar las rellamadas y el cumplimiento de las fechas de caducidad si se han incorporado a los números de serie. La autenticación digital utiliza el criptografiado como modificador y no se implementa descriptografiado. Sin embargo, el descriptografiado puede exigir recursos similares y segmentos de código, posibilitando así la incorporación de comunicaciones seguras entre el sistema y el accesorio. Se pueden almacenar datos adicionales en memoria no volátil dentro del microcontrolador, ligando así estrechamente la calibración al accesorio y permitiendo la utilización de los datos almacenados.

 

Conclusión

 

La seguridad de los accesorios médicos puede mejorarse de varias maneras gracias a la autenticación digital, evitando así accidentes, lapsos en una reutilización no higiénica de accesorios consumibles y la propagación de accesorios falsificados, protegiendo asimismo el flujo de ingresos. Los microcontroladores de tamaño reducido, bajo coste y bajo consumo pueden cumplir fácilmente los requisitos de hardware. Existen diversos canales de comunicaciones que pueden utilizarse. Los cifradores de bloque para criptografiado exigen un mínimo de RAM y se pueden implementar fácilmente en un pequeño microcontrolador.