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...

  • en hausse en terme 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 : MTP et gestion numérique des droits d'auteur (DRM)

Réponses TC

  • réintroduire du controle
  • 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)
  • avril 2004 : spécifications 1.2

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)
    => mesure et stockage de l'intégrité du système (BIOS, ROM, boot loader, boot os)
    => scellement (pour un état donné du système)
    => attestation (pour un état donné du système)

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)

TPM (2)

  • génération de clefs asymétriques RSA (2048 bit)
  • EK (Endorsement Key)
    => clef RSA généré et signé par le fabricant
    => clef publique EK = identifiant global unique
    => builtin et non exportable
  • SRK (Storage Root Key)
    => clef racine de l'arborescence de stockage des clefs de la TPM
    => unique et non exportable
  • AIK (Attestation identify key) by privacy CA ou trusted attestation protocol
    => identifiant unique interne de la TPM

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
    plusieurs démos : WinHEC (Windows Hardware Engineering), New-Orléans (mai 2003); RSA Conference 2003 (nov 2003)
    article dans IEEE Computer magazine (juillet 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 (?)
  • code source sûr (certifié, shared -source?)
  • site web NGSCB => en redéfinition... à suivre

NGSCB (ex Palladium)

caractéristiques (1)

  • Nexus/Nub/TOR (Trusted Operating Root) chargé après l'OS
  • NCA (Notarized Computing Agents) au dessus du Nexus
  • Nexus fournit services (API) aux NCA
  • NCA = composant, plugin ou application (p.e. Trusted User Interface Engine (TUE))
  • transport des données entre NCA et mode standard : IPC layer
  • chaîne de confiance du clavier à l'écran en passant par les NCA

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
    démo RSA Conference 2003, oct 2003 => based on LaGrande Technology
  • modifications matérielles nécessaires : cartes graphiques, USB, mémoire, chipset (?)
  • 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)
    => protection de la mémoire
    => contrôle par l'utilisateur opt-in ?
    => garanties contre le pistage des GUI ?
  • 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
  • renforcer RMS (Windows DRM, i.e. 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 (ou NCA's dev) contrôle des futurs NCA clefs (mediaplayer, ...)
    => opt-in théorique (effets de réseaux)
    => ubiquité
    => définition des droits d'usage par la technique et non la loi
    => 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

NGSCB (ex Palladium)

revendications (2)


  • Lexmark vs SCC / (feb 2003) : DMCA breach
    clash with EU reclycling rule
    disparition (droit de préter un CD)
    lock-in et effet réseau : migration et emails protégés

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 (?)
  • -->

    confiance ou contrôle?

    confiance ou contrôle?

    If users accept the domination of centrally-controlled data, free software faces two dangers, each worse than the other: that users will reject GNU/Linux because it doesn't support the central control over access to these data, or that they will reject free versions of GNU/Linux for versions "enhanced" with proprietary software that support it. Either outcome will be a grave loss for our freedom. (RMS)

    confiance ou contrôle?

    Pourtant

    Alors

    Bibliographie