BD-Video Key Extraction
From Redump Wiki
This guide is only for Dumping Keys from Blu-Ray Video discs, for dumping the discs see Disc Dumping Guide (MPF).
Multiple methods for dumping BD-Video below, each with their own benefits and drawbacks.
Contents |
Desired Information
With this guide, we'll be looking to find / dump the following information for your BD-Video disc:
- AACS MKB version number
- Media Key
- Volume ID
- Volume Unique Key
- Unit Key File Hash
A proper redump entry will display this info as under Protection in this example.
Method 1: Find VUK
This method is the easiest, and works on Media Key Block (MKB) versions past 68, but past version 68 (v69 skipped, v70 in 2019-07) it can only extract the UnitKey (UK). It works as long as the drive has not yet revoked the host certificate (it's only valid until mkbv71 and got revoked in 72).
- Download and unzip the latest version of Find VUK
- Double click "FindVUK - Synchronize.bat"
- Now you will dump the keys. You can either:
- Drag and drop the drive icon where the disc is inserted to the file "FindVUK - AACSkeys.bat" (NOTE: This requires no spaces being anywhere in the file path where your FindVUK folder is).
- OR open up the command line and "cd" (change directory) to the location to inside your FindVUK folder, then run this command: FindVUK.exe AACSkeys=X (where "X" is the drive letter).
Method 2: Find VUK + DVD Fab
Method 2 works on Media Key Block (MKB) versions past 68, but past version 68 (v69 skipped, v70 in 2019-07) it can only extract the UnitKey (UK).
Software
Some versions of Find VUK and DVDFab don't play well together. Your experience may vary.
Dumping
- DVDFab should be closed.
- Insert Blu-Ray disc.
- Launch FindVUK.exe, this will automatically launch DVDFab.
- Select "Try" to use DVDFab as a trial.
- A progress bar window should appear as DVDFab is processing the disc, which takes a few seconds. FindVUK should report that it found the key.
- Eject the disc, close FindVUK, close DVDFab (you may have to forcibly kill the process, for me it frequently hangs at that time).
- In FindVUK's OnlineDB_Backup subfolder, an xml file is created for each disc. Example for [1] - D6630E5AA891CE4164A44E627E5672F092D0D717-BDROM (Meta).xml:
<?xml version="1.0" encoding="UTF-8"?> <Bluray> <FileType>BlurayMetaXML</FileType> <DiscId Date="2008-04-30">D6630E5AA891CE4164A44E627E5672F092D0D717</DiscId> <VolumeId>FC3AAC79EA225AE1448C983C98259319</VolumeId> <MediaKey>D3A5957A0219001AB62D31EAC9A10E5A</MediaKey> <VolumeUniqueKey>F283D691673583569819F114460A6BF7</VolumeUniqueKey> <VolumeLabel>BDROM</VolumeLabel> <BDplus>0</BDplus> <BusEncryptionEnabled>0</BusEncryptionEnabled> <MKBrev>7</MKBrev> <MainPlaylist/> <UnitKeys> <UnitKey Nr="1">562D5AC9EF5925866D7F07BBDC8ADFEF</UnitKey> </UnitKeys> <MetaTitles> <MetaTitle Language="" Manual="1">Metal Gear Solid 4 Bonus Disc</MetaTitle> </MetaTitles> <Hashes> <Hash Type="MD5" File="MKB_RO.inf" Size="1048576">BF8D213F679D3423526B1185B30C63D2</Hash> </Hashes> <Application>FindVUK 1.09</Application> <VolumeSize>24395972608</VolumeSize> </Bluray>
Method 3: libaacs + VLC
This guide works on Media Key Block (MKB) version 68 and below. For reference MKBv69 was skipped, and MKBv70 was released around 2019-07.
Software
- VLC Player (install)
Check MKB version before Dumping
- If you ever put a disc with MKBv72 or higher, the key dump method below will never work again in that drive until new processing keys are available. I don't know the technical details but it seems Blu-Ray discs are able to update keys in your drives flash memory. After putting any MKBv72 disc that drive will only be able to decrypt using proprietary software.
- As I understand, you are allowed to put the disc into the drive, only if you playback/decrypt the disc it will update your drive keys. So checking MKB version before playback should be possible.
Dumping Guide
- Start Here
- Then create the directory "temp" at C:\ and follow the steps on the above tutorial (1. Start Here) thread under "Debugging:".
- Now playback any BDMV with VLC and the key will outputted to the file "c:\temp\debuglog_aacs.txt". You will be looking in this txt file for the following info:
src/libaacs/aacs.c:794: Found config entry for discid c7ff1ab7649625bf62ac2607954602749d38824a src/libaacs/aacs.c:809: Found media key for c7ff1ab7649625bf62ac2607954602749d38824a: a227b69d67559b47a82fa79a7d1a3543 src/libaacs/aacs.c:817: Found volume id for c7ff1ab7649625bf62ac2607954602749d38824a: 48aca844b6389900f55a09c2433996f0 src/libaacs/aacs.c:824: Found volume unique key for c7ff1ab7649625bf62ac2607954602749d38824a: 28621b7f8e00d30389cdb8a2c70209a1 src/libaacs/aacs.c:828: Acquire CPS unit keys from keydb config file... src/libaacs/aacs.c:864: Unit key 0 from keydb entry: 31c131a832ef8b3d9fbaeedac8366ff3