Loading AI tools
Van Wikipedia, de vrije encyclopedie
Het Common Scrambling Algoritme (CSA) is een symmetrisch encryptiealgoritme dat gebruikt wordt om digitale televisie-uitzendingen via Digital Video Broadcast (DVB) te versleutelen. Het is gestandaardiseerd in 1994 door ETSI en overgenomen door het DVB-consortium. Belangrijke details van het CSA, zoals de topologie van de S-boxen, werden geheimgehouden tot 2002, waardoor openbronimplementaties ondenkbaar waren.
Oorspronkelijk was CSA ontworpen als een algoritme bedoeld om te worden geïmplementeerd op chip, zoals een FPGA of een ASIC. Deze aanpak zorgde ervoor dat het moeilijk was om CSA te kraken. Uiteindelijk is men toch overgestapt naar een softwareoplossing vanwege de flexibiliteit ervan. Een implementatie hiervan is FreeDec, dat uitkwam in 2002. De broncode van dit programma werd niet vrijgegeven, maar door deassemblage werden de ontbrekende details blootgelegd. Snel volgden implementaties van CSA in een hogere programmeertaal.
Toen de werking van CSA volledig bekend raakte werd door cryptoanalisten een zoektocht opgestart naar eventuele fouten in het algoritme. Zoals in elk encryptiealgoritme is de grootste zwakte de encryptie van eenvoudig te voorspellen stukken data, zoals de headers van een MPEG-2-pakket. Dit verkort substantieel de tijd die nodig is om de sleutels te kraken.
De sleutellengte die wordt gebruikt is 64 bits. Dit resulteert in theorie tot 264 sleutelmogelijkheden. Van deze sleutels worden echter slechts 48 bits gebruikt. Byte 3 en byte 7 zijn checksumbytes die snel kunnen worden berekend.
Gebruik makend van de twee vorige feiten kan men de zoektocht naar de juiste sleutel verkorten. Ten eerste kan men 16 bits (2 bytes) berekenen uit de gekozen sleutel, aangezien zij checksumbits zijn. Ten tweede kan men door gebruik te maken van stukken voorspelbare tekst een schatting maken van nog eens 16 bits. Hierdoor moeten nog slechts 32 bits met brute kracht worden berekend, wat door een goede implementatie op FPGA snel kan worden gedaan.
Het eventuele kraken van CSA zou grote problemen betekenen voor de tv-industrie, omdat te betalen uitzendingen dan ontcijferd kunnen worden. Tot op heden is er echter nog geen succesvolle ontcijfering van het algoritme gepubliceerd.
Het CSA-algoritme wordt voornamelijk gebruikt om te zorgen voor Conditional Access (CA), ofwel toegang onder voorwaarden. Door de encryptie kunnen leveranciers van digitale tv ervoor zorgen dat bepaalde programma's restricties hebben. Zo kan ervoor gezorgd worden dat enkel betalende klanten een bepaald programma kunnen decoderen.
De sleutels voor het decryptiealgoritme worden meestal opgeslagen op een chipkaart. Deze kaart wordt in de settopbox gestoken waarop deze dan de decryptie kan uitvoeren.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.