WikiDer > Gemeinsamer Scrambling-Algorithmus
Es Gemeinsamer Scrambling-Algorithmus (CSA) ist ein symmetrisches Verschlüsselungsalgorithmus das ist gewohnt digitale Fernsehübertragung durch Digitale Videoübertragung (DVB) zu verschlüsseln. Es ist standardisiert in 1994 durch ETSIA und vom DVB-Konsortium übernommen. Wichtige Details der CSA, wie die Topologie der S-Boxen, wurden bis 2002 geheim gehalten, so dass Open-Source-Implementierungen waren undenkbar.
Ursprünglich wurde CSA als Algorithmus entwickelt, der auf dem Chip implementiert werden sollte, wie z FPGA oder ein ASIC. Dieser Ansatz machte es schwierig, CSA zu knacken. Letztendlich wechselten sie aufgrund ihrer Flexibilität zu einer Softwarelösung. Eine Implementierung davon ist FreeDec, das 2002 herauskam Quellcode dieses Programms wurde nicht veröffentlicht, aber die Demontage ergab die fehlenden Details. Implementierungen von CSA in höheren Bereichen folgten bald Programmiersprache.
Zuverlässigkeit von CSA
Als die Funktionsweise von CSA vollständig bekannt wurde, begannen Kryptoanalysten, nach möglichen Fehlern im Algorithmus zu suchen. Wie bei jedem Verschlüsselungsalgorithmus ist die größte Schwäche die Verschlüsselung von leicht vorhersehbaren Datenstücken, wie z MPEG-2-Paket. Dadurch wird die Zeit zum Knacken der Schlüssel erheblich verkürzt.
Die verwendete Schlüssellänge beträgt 64 Bits. Daraus ergeben sich theoretisch bis zu 264 Schlüsselfähigkeiten. Es werden jedoch nur 48 Bit dieser Schlüssel verwendet. Byte 3 und Byte 7 sind Prüfsummenbytes das lässt sich schnell berechnen.
Mit den beiden vorherigen Fakten kann man die Suche nach dem richtigen Schlüssel verkürzen. Zunächst kann man aus dem gewählten Schlüssel 16 Bit (2 Byte) berechnen, da es sich um Prüfsummenbits handelt. Zweitens kann man unter Verwendung von vorhersagbaren Textblöcken zusätzliche 16 Bit schätzen. Dadurch sind nur 32 Bit mit rohe Gewalt berechnet, was bei richtiger Implementierung auf FPGA schnell erledigt werden kann.
Das mögliche Knacken von CSA würde der TV-Branche große Probleme bereiten, weil dann Bezahlsendungen entschlüsselt werden könnten. Bis heute wurde jedoch keine erfolgreiche Entschlüsselung des Algorithmus veröffentlicht.
Benutzen
Der CSA-Algorithmus wird hauptsächlich verwendet, um Conditional Access (CA) bereitzustellen. Die Verschlüsselung ermöglicht es digitalen TV-Anbietern sicherzustellen, dass bestimmte Programme Einschränkungen unterliegen. Auf diese Weise kann sichergestellt werden, dass nur zahlende Kunden ein bestimmtes Programm entschlüsseln können.
Die Schlüssel für den Entschlüsselungsalgorithmus werden üblicherweise auf einer Chipkarte gespeichert. Diese Karte wird in die gelegt Set-Top-Box die es dann die Entschlüsselung durchführen kann.
Operation
CSA basiert auf dem Prinzip der symmetrische Verschlüsselung. Das bedeutet, dass Sender und Empfänger denselben Schlüssel verwenden, um die Nachricht zu verschlüsseln und dann zu entschlüsseln. Der Vorteil der symmetrischen Verschlüsselung besteht darin, dass sie schneller arbeitet als die asymmetrische. Der Nachteil ist jedoch, dass der Schlüssel ausgetauscht werden muss. Dieser Austausch erfolgt mit a asymmetrische Verschlüsselung.
Den Verschlüsselungsalgorithmus kann man sich als eine Kette von zunächst einer Blockchiffre und einer Stromchiffre vorstellen. Beide Verschlüsselungen verwenden denselben 64-Bit-Schlüssel. Um die Nachricht zu verschlüsseln, werden die Daten in Blöcke von acht Bytes aufgeteilt. Anschließend werden die Daten durch die Blockchiffre im CBC-Modus verschlüsselt. Die letzte Endung dieser Chiffre wird verwendet als nichtce für die Flussverschlüsselung.
| Quellen, Anmerkungen und/oder Verweise |