Support matériel, logiciel et cryptographique pour une éxécution sécurisée de processus
Institution:
Télécom BretagneDisciplines:
Directors:
Abstract EN:
The majority of the solutions to the issue of computer security (algorithms, protocols, secure operating systems, applications) are running on insecure hardware architectures that may be vulnerable to physical (bus spying, modification of the memory content, etc. ) or logical (malicious operating system) attacks. Several secure architectures, which are able to protect the confidentiality and the correct execution of programs against such attacks, have been proposed for several years. After the presentation of some cryptographic bases and a review of the main secure architectures proposed in the litterature, we will present the secure architecture CryptoPage. This architecture guarantees the confidentiality of the code and the data of applications and the correct execution against hardware or software attacks. In addition, it also includes a mechanism to reduce the information leakage on the address bus, while keeping reasonable performances. We will also study how to delegate some security operations of the architecture to an untrusted operating system in order to get more flexibility but without compromising the security of thearchitecture. Finally, some other important mechanism are studied: encrypted processid entification, attestations of the results, management of software signals, management of the threads, inter-process communication.
Abstract FR:
La majorité des solutions apportées aux problèmes de sécurité informatique (algorithmes, protocoles, systèmes d'exploitation sécurisés, applications) s'exécute sur des architectures matérielles non sécurisées et pouvant donc être vulnérables à des attaques physiques (espionnage du bus, modification de la mémoire, etc. ) ou logicielles (système d'exploitation corrompu). Des architectures sécurisées, permettant de garantir la confidentialité et la bonne exécution de programmes contre de telles attaques, sont proposées depuis quelques années. Après avoir présenté quelques bases cryptographiques ainsi qu'un comparatif des principales architectures sécurisées proposées dans la littérature, nous présenterons l'architecture sécurisée CryptoPage. Cette architecture garantit la confidentialité du code et des données des applications ainsi que leur bonne exécution contre des attaques matérielles et logicielles. Elle inclut également un mécanisme permettant de réduire les fuites d'informations via le bus d'adresse, tout en conservant des performances raisonnables. Nous étudierons également comment déléguer certaines opérations de sécurité de l'architecture CryptoPage à un système d'exploitation qui n'est pas digne de confiance, afin de permettre plus de flexibilité, sans pour autant compromettre la sécurité de l'ensemble. Enfin, d'autres mécanismes importants pour le bon fonctionnement de l'architecture CryptoPage sont traités : identification des processus chiffrés, attestation des résultats, gestion des signaux logiciels, gestion des processus légers, gestion des communications inter-processus.