Top Qs
Tijdlijn
Chat
Perspectief
Common Scrambling Algorithm
Van Wikipedia, de vrije encyclopedie
Remove ads
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.
Remove ads
Betrouwbaarheid van CSA
Samenvatten
Perspectief
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.
Remove ads
Gebruik
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.
Remove ads
Werking
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads