The DVD Content Scrambling System Explained (Part 4)
In the conclusion to the "DVD Content Scrambling System Explained" series, we'll put together all the information already presented and show how the DVD movie data can be decrypted after the disk and title keys are decrypted. The unencrypted DVD movie data can then be played with any MPEG video player software or hardware chip.
CSS Disk and Title Key Decryption
Disk key decryption (DA) and title key decryption (DB) are done using the same procedure with a different pseudo-random byte streams caused by the mode inversion previously described (in the second part). As well, both functions use different input keys to perform decryption. In the case of decrypting the disk key, the input is the player key. In the case of decrypting the title key, the input is the disk key.
To perform disk key and title key decryption, 5 bytes from the pseudo-random stream are generated, with the stream being seeded by the input key. The five byte output is then passed through the key mangling stage seen in Figure 5. This stage uses the encrypted key, a 256 byte scrambling lookup table, and exclusive or logic to yield the decrypted output key.
Figure 5. Content Scrambling System Disk and Title Key Decryption
CSS Data Decryption
After the disk and title keys have been found, the movie data can finally be decrypted using the function DC seen in Figure 6. When decrypting data, the pseudo-random byte stream is seeded with the sector key exclusively ORed with the title key. The resulting byte from the pseudo-random byte stream is then exclusively ORed with the input byte after the input has first been scrambled by a lookup table. This 256 byte lookup table is the same one that is used for key decryption. The output is now the unencrypted movie data.
Figure 6. Content Scrambling System Data Decryption
|< Prev.||Jump to Part 1, Part 2, Part 3, Part 4.||Next >|