Log in

View Full Version : Revocation Lists


vplamondon
29th August 2008, 05:39
If a dvd were burned with aacs, with empty revocation lists and final version numbers (like 65535 for a 16 bit version entry) for those revocation lists, wouldn't that permanently unlock HD and Blu-Ray drives as well as players?

Just throwing the idea out there, because if a sample DVD were distributed widely, it would eventually disable the revocation system. At the point where unlocked players and drives were wide spread enough, these drives and players would continue to be able to use existing media, even if their keys were revoked.

If a program could be written that would automatically generate such a MKB for BD-DVDs, than every movie distributed and shared among friends would eventually cause the vast majority of drives and players to be unlocked.

This would kill the revocation system, since any player or drive that had it's keys revoked on future media, would make it appear as thought the media was defective, and if a large enough portion of consumers were returning media for being defective, future versions of AACS would be too exorbitant in cost for the Studios to use.

Let me know if this sounds like a doable idea? I'm only at the research and trying to understand AACS stage, so I'm afraid I wouldn't be much help, but I think the idea might be doable.

Oopho2ei
29th August 2008, 07:57
I don't know about dvds but hd-dvd and blue ray have a signature at the end of the media key block (see specification 3.2.5.8). You would need to forge the signature or patch the player. Even if you succeed in doing so you need a c-value you can decrypt to get the media key. If your device keys have been revoked you won't be able to get a processing key to do that. It is not clear to me what you mean by 'unlock HD and Blu-Ray drives as well as players'.

Edit: You are generally better off bypassing the aacs authentication process using a patched firmware like this one for LG drives: http://forum.doom9.org/showthread.php?t=139522

vplamondon
29th August 2008, 09:35
I guess I should expand on what I am talking about.

A Media Key Block should have one Type and Version Record as its first record.

The MKB block has one Host Revocation List Record.

A drive is supposed to keep the highest-version-number Host Revocation List Record it has seen.

The MKB block has one Drive Revocation List Record.

The host should keep the highest-version-number Drive Revocation List Record it has seen. The host should check that the Drive ID in the Drive Certificate is not in the Drive Revocation List Record during the authentication process.

What I am suggesting, is that the open source and HD/Blu-Ray ripping community implement the necessary coding in their software to implement a valid MKB for various media based on AACS standards playable on HD/Blu-Ray drives with a Version Record value of 4294967295 and 0 Host Revocation List Records and 0 Drive Revocation List Records.

4294967295 is the maximum value for the MKB record, so when a drive or host plays media with a MKB version 4294967295 they will always keep those Host Revocation List Records and Drive Revocation List Records.

Meaning any software with any valid Host key would always be able to work with such a drive that has been version maxed (I see that unlocked is a confusing term, so I will not use it). Any drive would always work with a host that has been version maxed.

Additionally, if a drive and host keys are revoked, they would still be able to play all the media they could already play.

Peer van Heuen
29th August 2008, 14:12
I guess I should expand on what I am talking about.

A Media Key Block should have one Type and Version Record as its first record.

The MKB block has one Host Revocation List Record.

A drive is supposed to keep the highest-version-number Host Revocation List Record it has seen.

The MKB block has one Drive Revocation List Record.

The host should keep the highest-version-number Drive Revocation List Record it has seen. The host should check that the Drive ID in the Drive Certificate is not in the Drive Revocation List Record during the authentication process.

What I am suggesting, is that the open source and HD/Blu-Ray ripping community implement the necessary coding in their software to implement a valid MKB for various media based on AACS standards playable on HD/Blu-Ray drives with a Version Record value of 4294967295 and 0 Host Revocation List Records and 0 Drive Revocation List Records.

4294967295 is the maximum value for the MKB record, so when a drive or host plays media with a MKB version 4294967295 they will always keep those Host Revocation List Records and Drive Revocation List Records.

Meaning any software with any valid Host key would always be able to work with such a drive that has been version maxed (I see that unlocked is a confusing term, so I will not use it). Any drive would always work with a host that has been version maxed.

Additionally, if a drive and host keys are revoked, they would still be able to play all the media they could already play.

As OOph... already explained: the MKBs have a signature at the end. To create an MKB of your own (even if you're just changing a single bit in an existing one), you will need a very private key that only exists on some AACS-LA Pc.

If you'd be able to get your hands on that, it would be silly to fix up your drive with such a special MKB, because then you'd have the power to generate your very own Host-/Drive certificates and enjoy the luxury of using a different one each time you authenticate with the drive.