25 jan 2000 — Une description claire et progressive (novice ou expert)
de ce qu’est ce fameux programme DeCSS et pourquoi il “énerve”
autant Hollywood
Novice
Lors de la conception du DVD, les diverses parties (fabriquants de matériel,
éditeurs de home-video, de logiciels, studios Hollywoodiens) étaient tous
conscient de l’importance d’un système de protection du contenu audio-visuel
présenté sur DVD.
La triste expérience du CD audio (graveurs CD et autres folies MP3) était
sur toutes les lèvres, et l’inquiétude d’autant plus grande que pour la
première fois des programmes vidéo allaient être mis à disposition du
public dans une qualité professionelle et inaltérable. La possibilité
d’effectuer à volonté des “copies parfaites” des oeuvres cinématographies
a effrayé pendant longtemps des grands Studios et retardé leur arrivée sur
le marché du DVD (Cas de FOX et Disney principalement).
C’est pourquoi plusieurs protections contre la copie ont été introduites
dans la norme DVD :
- Le format physique tout d’abord. Nouveau et de grande capacité.
L’absence de “graveur” de DVD bon marcé pendant plusieurs années
apporte aux éditeurs une certaine tranquilité sur le court terme ;
- La macrovision. Tout lecteur DVD légal (muni du logo “DVD” et donc
duement enregistré et vérifié par le DVD Consortium) doit émettre
sur sa sortie vidéo un signal de protection anti-copie analogique dite
Macrovision. Ce procédé, qui ajoute un signal parasite invisible dans
le signal vidéo, brouille les circuits d’enregistrement des
magnétoscopes, rendant ainsi la copie DVD->VHS impossible.
- Le CSS. Tout DVD peut être partiellement crypté grâce à un procédé
numérique. Un logiciel de lecture de DVD doit au préalable
s’authentifier auprès du lecteur, puis il doit décrypter le contenu
numérique du disque à la volée avant de pouvoir extraire l’audio,
la vidéo, etc… Un logiciel non authentifié ne pourra simplement
pas lire les données numériques présentes sur le DVD.
Le logiciel des lecteurs de salon comme celui des “DVD players” pour Windows
doivent passer par cette authentification. L’algorithme CSS et les clefs
nécessaires à ce processus font partie du secret industriel de la technologie
CSS et ne sont dévoilées qu’aux organismes ayant acquis une license CSS.
Or, justement, tout à commencer lorsqu’un groupe de partisans du logiciel
libre a voulu écrire un logiciel de lecture DVD pour Linux et s’est vu
refuser catégoriquement l’entrée du “club CSS”. Le groupe a alors pris le
chemin des écoliers et piraté le code de décryptage d’un logiciel existant
sous Windows.
Expert
Mais regardons d’un peu plus prêt comment fonctionne le procédé CSS. Un DVD
marqué comme protégé, lorsqu’il est lu par un lecteur (entendez ici le
module qui physiquement lit le disque, non la machine complète ; dans le
cas d’un PC il s’agit par exemple du DVD-ROM drive seul), n’est accessible
que si l’hôte (le programme sur un PC, le firmware sur un lecteur de
salon) s’authentifie au préalable en suivant un processus classique de
“mutual challenge” :
- 1- L’hôte propose au lecteur un “challenge” (une séquence quelconque
de 10 octets ;
- 2- Le lecteur crypte cette séquence en utilisant l’algorithme CSS
et renvoie ainsi la premier “clef de bus” ;
- 3- L’hôte encrypte de son côté le challenge et vérifie que la
clef obtenue est égale à la clef de bus obtenue ;
- 4- Inversement, le lecteur propose à l’hôte un “challenge” ;
- 5- L’hôte crypte le challenge avec l’algorithme CSS et renvoie
ainsi au lecteur la deuxième “clef de bus” ;
- 6- Si cette clef est estimée valide par le lecteur, celui-ci passe
dans l’état ‘authentifié’ et les opérations de lecture qui suivent
sont autorisées. Dans le cas contraire, toutes les opérations de
lecture restent bloquée ;
- 7- La combinaison des deux clef de bus donne une clef de session
qui identifie la communication.
L’hôte obtient ensuite auprès du lecteur une “clef de disque”, ainsi
qu’une “clef de titre” pour chaque titre présent sur le disque. Lors de
la lecture du flux DVD, certains secteurs (blocs de 2048 octets) sont
cryptés. La combinaison de la clef de disque et de la clef de titre en permet
le décryptage.
Cette dernière étape comporte une subtilité : la clef de décryptage du
lecteur est en fait masquée par une “clef de lecteur” qui est accordée
à chaque licensié CSS (par exemple, SONY possède une telle clef de
lecteur, PIONEER une autre, etc…). En théorie donc, le logiciel de
lecture doit connaître les clefs de lecture de tous les DVD-ROM du
marché (et pour ceci être dans le cercle restreint des licenciés CSS).
En pratique, cette clef de lecteur doit vérifier certaines propriétés
algorithmiques qui font que l’on peut écrire un programme qui trouve
toutes ces clefs valides par “la force brute” en un temps raisonnable
sur un PC moyen.
Une excellente analyse cryptographique de l’algorithme est disponible
ici.
Et DeCSS, alors ?
DeCSS implémente l’authentification CSS sous Windows et propose de
“sauvegarder” sur son disque dur une copie parfaite d’un DVD, débarassée
de ce cryptage de protection. Précedemment, d’autres “rippers” (nom de
ces logiciels qui extraient un contenu copyrighté à destination du disque
dur) existaient, mais qui impliquaient une perte de qualité (ré-encodage
du flux vidéo, une seule piste audio disponible, pas d’interactivité
possible sur la copie…).
Pour l’instant, la copie sur son disque dur n’est pas très utile (quoique,
on peut d’ores et déjà en faire un VCD d’excellente qualité et que l’on
peut graver sur 2 CDs pour une vingtaine de francs). Mais l’arriviée imminente
de graveurs de DVD-R 4.3Go relativement bon marchés inquiète. Il reste
aux éditeurs le choix de recourir systématiquement à du DVD-9 et ainsi
augmenter encore les besoins de stockage nécessaire à sa “copie de
sauvegarde” du DVD.
Conclusion
Un grand soin a été apporté à l’élaboration du procédé CSS, et l’utilisation
de techniques de cryptages “avancées” (mutual challenge, numerical
cryptography…) devait le mettre à l’abri du piratage.
Malheureusement, si les studios d’Hollywood avaient fait examiner le procédé
par une personne un minimum compétente elle y aurait trouvé rapidemenent
deux failles majeures :
- Les clefs sont trop petites. 5 octets à chaque fois c’est très peu.
La puissance des PC actuels rend le cassage de ce genre de cryptage
par “la force brute” tout à fait envisageable ;
- L’algorithme complet doit être disponible en logiciel pour que des
de lecture DVD sur PC existent. Or, à partir du moment ou un logiciel
est disponible sur un ordinateur, le temps à attendre avant que son
code soit “reverse-engeneere” est forcemment court.
En bref, aucune protection n’est parfaite, et celle-ci était particulièrement
facile à “casser”. Et maintenant il est trop tard. Une réponse des sudios
a un journaliste a été de dire qu’ils allaient inventer un nouveau système
de protection “compatible avec le lecteurs actuels”. Cela ne resouds rien,
puisque DeCSS est, justement, un “lecteur actuel” et donc continuera de
fonctionner.
En attendant, le DVD-Audio est repoussé car les intervenants dans ce nouveau
standard ne sont pas décidé a se faire avoir encore une fois. Ils ont enfin
lancé des propositions de nouveaux systèmes tels que CSS2, Video Wartermark,
Audio Watermark, etc… (voir
La page du DVD-CCA sur ce sujet).