L'informatique de confiance (TC)
TCG (ex TCPA), NGSCB (ex Palladium)
confiance ou contrôle?
Janvier 2004
Copyright (C) 2003-2004 Christophe Le Bars.
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.
Plan
- repères
- TCG (ex TCPA)
- NGSCB (ex Palladium)
- TC: confiance ou contrôle?
- bibliographie
Attentes...
- + de sécurité
=> utilisateurs : moins de virus, de vers, d'attaques de pirates, spam?...
=> informaticien : usage de la crypto pour le transport, l'identification, le stockage, ...
=> PI : gestion numérique des droits d'auteur (DRM)
Réponses TC
- identifier (GUI=globally unique identifiers)
- utiliser la cryptographie
- intégrer certaines fonctions au niveau matériel
- XXX (plug de analog hole)
Repères historiques - DTCP
février 1998 : Digital Transmission Content Protection
- Intel, Toshiba, Hitachi, Sony, Panasonic (5C consortium)
- protéger les transmissions série IEEE 1394 (firewire)
- cryptographie et certificat révocable pour chaque périphérique
- février 1999 : spécifications 1.0
Repères historiques - PSN
1999 : Processor Serial Number du Pentium III
- Intel
- identifiant unique global
- avril 2000 : abandon sous la pression des consommateurs
Repères historiques - HDCP
High-bandwidth Digital Copy Protection
- Intel
- protéger la transmission entre un système et un moniteur
- cryptographie et certificat révocable (idem DTCP)
- février 2000 : spécifications 1.0
Repères historiques - CPRM/CPPM
fin 1999 : Content Protection for Recordable Media and Pre-Recorded Media
- IBM, Intel, Matsushita et Toshiba (4C consortium)
- cryptographie et identifiant unique global (GUI=globally unique identifiers)
- contrôle de la lecture/copie des fichiers protégés par un logiciel ad-hoc
- 2000-2001 : échec de l'inclusion de CPRM dans la norme ATA (disque dur)
- utilisation possible : protéger un DVD-audio contre la copie
TCG (ex TCPA)
Trusted Computing Group
(ex Trusted Computing Platform Alliance)
repères historiques
- octobre 1999 : fondation par Intel, HP, IBM et Microsoft
- plus de 190 membres début 2003
- septembre 2000 : spécifications 1.0
- juillet 2001 : spécifications 1.1
- avril 2003 : change de nom (TCPA -> TCG)
TCG (ex TCPA)
TPM (1)
- co-processeur spécialisé (Trusted Platform Module)
- RNG (Ramdom Number Generator)
- TPMProof
=> identifiant unique interne de la TPM
- PCR (Platform Configuration Registers)
=> stockage de l'état d'amorçage (BIOS, ROM, boot loader, boot os)
=> scellement en fonction d'un état d'amorçage et TMPProof
TCG (ex TCPA)
TPM (2)
- génération de clefs asymétriques RSA (2048 bit)
- SRK (Storage Root Key)
=> clef racine de l'arborescence de stockage des clefs de la TPM
=> unique et non exportable
- Endorsement Key (optionelle dans la norme)
=> clef RSA généré et signé par le fabricant et la clef primaire TCG
=> identifiant unique global potentiel
TCG (ex TCPA)
TPM (3)
- algorithmes de cryptographie : RSA, SHA-1, HMAC
=> stockage sécurisé (blob RSA) de clefs privées (ou d'autres données)
=> gestion de clefs, vérification, signature, (de-)chiffrement
=> exportation des clefs privées (chiffré pour la TPM)
- auto-test (RNG, registres, endorsement key)
TCG (ex TCPA)
chipset AT97SC3201 d'ATMEL
- implémentation TPM TCG v1.1b
- stockage de 10 à 20 clefs
- tamper detectors
TCG (ex TCPA)
caractéristiques et applications
- indépendant de la plate-forme matérielle (PC, PDA, téléphone, ...)
- indépendant de la plate-forme logiciel (Windows, Linux, ...)
- l'utilisateur (ou l'application, ou le système!) garde le contrôle
- environnement sécurisé de gestion des clefs privés et de stockage
=> p.e. chiffrement local, VPN, PKI, SSL, S-MIME, ...
- p.e. portables IBM de la série Thinkpad (chiffrage du disque)
TCG (ex TCPA)
revendications
- création d'une ou plusieurs clefs, potentiellement signées par un tiers après identification
=> possibilité de créer de multiples identités (speudos)
=> mais potentiellement repérables (p.e. Endorsement Key)
- ne permet pas en tant que tel la gestion numérique des droits d'auteur (DRM)
=> mais a été conçu pour autoriser le DRM (cf spécifications TCG 0.90)
=> « enabler » pour DRM ou une architecture comme NGSCB
- volonté d'ubiquité (cf livres blancs TCG)
TCG (ex TCPA)
évolutions possibles
- tamper resistant
- intégration dans la puce principale (jeu d'instructions spécialisé)
- possibilité d'ajouter une SRK (William A. Arbaugh)
- compatibilité NGSCB
NGSCB (ex Palladium)
Next-Generation Secure Computing Base
repères historiques
- en développement depuis 1997
- spécifications non publiées
=> 1ère démonstration à la dernière conférence
WinHEC (Windows Hardware Engineering) à la Nouvelle-Orléans (mai 2003)
- affirmations contradictoires (y compris de MS)
- NGSCB tournera à coté d'un OS Windows standard (et d'autres OS?)
- première implémentation avec Longhorn en 2005 (?)
NGSCB (ex Palladium)
caractéristiques (1)
- Nexus/Nub/TOR (Trusted Operating Root) chargé après l'OS
- des NCA (Notarized Computing Agents) tournent au dessus du Nexus
- chaîne de confiance du matériel aux NCA
- code sûr (certifié, shared -source?)
- modification cartes graphiques, USB, mémoire, chipset (?)
NGSCB (ex Palladium)
caractéristiques (2)
- co-processeur spécialisé : SCP/SCC (secure cryptographic co-processor)
=> RSA, AES, SHA-1 (?)
=> à priori compatibilité TCG 1.2 ou TCG 2.0 (?)
=> utilise un sous-ensemble des fonctions TCG (au minimum GUID et
scellement) ou équivalent
- le noyau standard, les pilotes et le BIOS sont isolés de NGSCB
NGSCB (ex Palladium)
caractéristiques (3)
- modèle d'authentification du matériel et des logiciels d'une plate-forme
=> différent de TCG
=> scellement (stockage sécurisé pour une plate-forme donnée)
=> attestation (signature électronique pour une plate-forme donnée)
=> contrôle par l'utilisateur de la diffusion de sa clef publique (?)
- royalties pour pouvoir développer un NCA (?)
- ne permet pas en tant que tel la gestion numérique des droits d'auteur (DRM)
NGSCB (ex Palladium)
applications
- transactions web sécurisées
- DRM (p.e. Windows Rights Management Services)
- vérification de l'intégrité ou de la licence d'un logiciel (piratage)
- mécanismes de révocation de documents
- ... ?
NGSCB (ex Palladium)
revendications (1)
- « stop all viruses and worms, stop spam, safeguard your privacy, protect your
personal details, and protect your intellectual property »
=> ni nécessaire ni suffisant contre les virus ou les spams
=> ne permet pas d'éviter le « social engineering »
=> quid des scellés pour les sauvegardes, les mises à jour, la vente
d'occasion, ...
=> « enabler » pour DRM
NGSCB (ex Palladium)
revendications (2)
-
« permit each creator of any kind of digital information to set and enforce any
policy whatsoever for the use of that information »
=> Microsoft contrôle des futurs NCA clefs (mediaplayer, ...)
=> quid des logiciels de sécurité ou d'archivage (centralisation)
=> quid de l'intéropérabilité (formats de fichiers, plug-in) et de la concurrence
=> quid du logiciel libre (le code source est inutile sans les bons certificats)
=> quid de la collecte d'informations nominatives par des tiers
=> opt-in théorique (effets de réseaux)
=> ubiquité
NGSCB (ex Palladium)
évolutions possibles
- contrôle total à distance de chaque PC (et de son contenu (Echelon?))
- intégration de Windows et de NGSCB
- des législations se préparent (sénateur Fritz aux USA)
« government-mandated technology protection measures simply won't work »
Robert Holleyman (président et CEO du BSA)
en développement depuis 1997
spécifications non publiées
=> 1ère démonstration à la dernière conférence
WinHEC (Windows Hardware Engineering) à la Nouvelle-Orléans (mai 2003)
affirmations contradictoires (y compris de MS)
NGSCB tournera à coté d'un OS Windows standard (et d'autres OS?)
première implémentation avec Longhorn en 2005 (?)