Patent ES-2701030-T3 (ES)
Title: Método de carga de un código de al menos un módulo informático
Inventor: HAMON VINCENT
IPC: G06F21/54
Filed: 2011-12-16
Granted: 2019-02-20
Abstract: Un método para cargar un código de al menos un módulo informático en una memoria principal mediante un procesador de seguridad, en donde el procesador de seguridad ejecuta: - un código de cebado operativo que carga (156) en la memoria principal el código de un cargador de cebado operativo y luego inicia (162) la ejecución de este cargador de cebado operativo a partir de la memoria principal, estando el código de cebado operativo registrado en una memoria no volátil de solamente lectura del procesador a partir de la primera dirección en la que un contador ordinal del procesador apunta inmediatamente después de reinicialización, y luego - el código del cargador de cebado operativo para cargar (180) en la memoria principal el código de un sistema operativo multitarea, y luego iniciar la ejecución de este sistema operativo a partir de esta memoria principal, estando este sistema operativo configurado para definir el espacio de usuario en una gama de direcciones reducida de la memoria principal, - el sistema operativo para programar la ejecución simultánea de varios programas usuarios por este procesador, en donde: - antes de iniciar la ejecución del cargador de cebado operativo, el código de cebado operativo, ejecutado por el procesador, verifica (158) la autenticidad del código del cargador de cebado operativo a partir de una firma de este código y de una clave criptográfica, e inicia la ejecución de este cargador de cebado operativo solamente si el código es auténtico, - el cargador de cebado operativo también carga (170) el código del módulo informático en la memoria principal, antes de iniciar la ejecución del sistema operativo, en una gama de direcciones de la memoria principal ubicada fuera de dicha gama de direcciones reducida, - en el instante de su ejecución, el cargador de cebado operativo configura (176) un coprocesador de seguridad, presente en el interior del circuito integrado del procesador, de manera que verifique la autenticidad del código del módulo informático en función de una firma proporcionada con el código de este módulo y de una clave criptográfica, - después de iniciar la ejecución del sistema operativo, el coprocesador de seguridad verifica (178) automáticamente en el intervalo preestablecido la autenticidad del código cargado del módulo informático y se evita la ejecución del módulo informático si no es auténtico, utilizando este coprocesador, a este propósito, su propia memoria no volátil y su propia memoria de acceso aleatorio para ejecutar, sin tener que recurrir a la memoria principal, esta verificación de la autenticidad del código del módulo informático, estando esta memoria no volátil y esta memoria de acceso aleatorio solamente accesibles por el coprocesador de seguridad, y - después de su iniciación, el sistema operativo redirige (194) una llamada a este módulo informático a partir de un programa de usuario hacia la dirección de la memoria principal en donde el código de este módulo informático se ha cargado antes del inicio de la ejecución del sistema operativo utilizando un sistema de ficheros específico del sistema operativo que asocia automáticamente la dirección del módulo informático en el espacio de la memoria virtual del programa del usuario con la dirección física del módulo informático en la memoria principal.