View Full Version : Get Blu-ray VID and RDK from MakeMKV
coricopat
14th March 2024, 16:16
Hey folks.
Eventually I've now been able to the RDK for an UHD using a BH16NS55 with downgraded firmware. And with that, I can play back the UHD via purely open source (well of course I need DVDFab/etc. but that I can run on another computer) stuff on Linux. :cool:
Now may main goal was to create a UDF image of the UHD e.g. with dd (under Linux), but I suspect I had some misunderstanding how Bus Encryption works.
My assumption was, that once I have the RDK and e.g. play back the UHD with MPV+libaacs, that would kinda "put the drive in authenticated mode", and I could just read the real data from it (which would still have normal AACS encryption, but no longer any Bus Encryption).
Yeah... guess the *bus* in bus encryption should have received more of my attention. It seems that it doesn't work like in my earlier assumption, but it's really the software (i.e. libaacs), which does then both decryption steps first bus encryption decryption, then normal AACS decryption via the VUK.
Does that sound right?
If so, that would mean that I'd probably need a libaacs-aware dd (which of course doesn't exist, and I'm too lazy to write ^^).
Any ideas how I could use the RDK to get an image? Or at least copy of the files (which then should still have normal AACS enc)?
(And yes I know, it works easily with MakeMKV and LibreDrive mode... I'm just trying to get an alternative).
Thanks,
Coricopat
mick0
14th March 2024, 19:00
Eventually I've now been able to the RDK for an UHD using a BH16NS55 with downgraded firmware. And with that, I can play back the UHD via purely open source (well of course I need DVDFab/etc. but that I can run on another computer) stuff on Linux.
Since your drive is not an UHD official drive, you could just copy-paste the host certificate from this post (https://forum.doom9.org/showthread.php?p=1990091#post1990091) into your keydb and libaacs should then be able to retrieve the RDK directly from your drive on it's own (without DVDFab).
Now may main goal was to create a UDF image of the UHD e.g. with dd (under Linux), but I suspect I had some misunderstanding how Bus Encryption works.
My assumption was, that once I have the RDK and e.g. play back the UHD with MPV+libaacs, that would kinda "put the drive in authenticated mode", and I could just read the real data from it (which would still have normal AACS encryption, but no longer any Bus Encryption).
Unfortunately it doesn't work like that. Bus encryption is something that the drive does on-the-fly every time a protected sector is being read, it is not something that can be turned off by authenticating.
Any ideas how I could use the RDK to get an image? Or at least copy of the files (which then should still have normal AACS enc)?
(And yes I know, it works easily with MakeMKV and LibreDrive mode... I'm just trying to get an alternative).
If you want to make a *protected* backup of BEE disc on linux, the easiest way to do it is to "bless" the disc first with makemkvcon and then just dd(rescue) the disc into 1:1 ISO image (or copy of the files). The resulting *protected* backup should be playable as is on every libbluray enabled player (vlc, mpv etc) as long as libaacs+libbdplus are installed and configured properly, i.e. VID+MK, VUK or unit key(s) for this particular disc is present in keydb and cached BD+ conversion table is available (for BD+ discs).
Technically bus encryption could be stripped out from protected ISO afterwards *if* cached RDK for the particular disc+drive (which the ISO was originally made with) is available, but AFAIK no tool that can do that. Besides makemkv, there are also some alternative tools available that work on linux and can make fully decrypted file/folder backups, e.g. dumphd. There are also tools that use libbluray/libaacs/libbdplus such as this (https://git.golem.linux.it/matteobin/bluraybackup) one.
coricopat
16th March 2024, 04:14
Since your drive is not an UHD official drive, you could just copy-paste the host certificate from this post (https://forum.doom9.org/showthread.php?p=1990091#post1990091) into your keydb and libaacs should then be able to retrieve the RDK directly from your drive on it's own (without DVDFab).
Holy sh** ... it does indeed work, tried with the current version of the well known KEYDB.cfg and:
- PIONEER BD-RW BDR-S12U 1.03
- HL-DT-ST BD-RE BH16NS55 1.02
on an UHD BD of the move A: The Way of <melted ice>.
Works with a plain libaacs, no MakeMKV LibreDrive mode or so enabled.
But it does not work on the:
- PIONEER BD-RW BDR-XS07U 1.02
despite that being LibreDrive friendly.
Any idea why?
Do you or someone else happen to know whether whether that (i.e. defeating Bus Encryption for UHDs and non-UHDs with just plain libaacs and no LibreDrive mode) is guaranteed to work forever with the above drives and hostcerts?
Or is that something, where the hostcerts could be revoked?
Unfortunately it doesn't work like that. Bus encryption is something that the drive does on-the-fly every time a protected sector is being read, it is not something that can be turned off by authenticating.
Yeah... as said... I should have listened more to the name, which already says that it's on the >bus< and thus between drive and software. ^^
If you want to make a *protected* backup of BEE disc on linux, the easiest way to do it is to "bless" the disc first with makemkvcon and then just dd(rescue) the disc into 1:1 ISO image (or copy of the files). The resulting *protected* backup should be playable as is on every libbluray enabled player (vlc, mpv etc) as long as libaacs+libbdplus are installed and configured properly, i.e. VID+MK, VUK or unit key(s) for this particular disc is present in keydb and cached BD+ conversion table is available (for BD+ discs).
How much do you know about BD+ (I mean how it works)? I'd have in principle some questions on it, though I think it's a bit off-topic for this particular thread.
Technically bus encryption could be stripped out from protected ISO afterwards *if* cached RDK for the particular disc+drive (which the ISO was originally made with) is available, but AFAIK no tool that can do that. Besides makemkv, there are also some alternative tools available that work on linux and can make fully decrypted file/folder backups, e.g. dumphd.
Was that available with sources?
There are also tools that use libbluray/libaacs/libbdplus such as this (https://git.golem.linux.it/matteobin/bluraybackup) one.
Which already sits and waits in Debian's NEW queue. :-)
Unfortunately it seems to only be able to create fully decrypted (i.e. no BEE and not normal AACS encryption) file copies of the medium (it simply uses libbluray's bd_open_file_dec(), IIRC.
Have only briefly looked at the code, but there's bd_open_stream(), which I guess might read blocks from the device (and thus the image), but AFAICS, that doesn't decrypt.
May main goal is as laid out here: https://forum.doom9.org/showthread.php?p=1997175#post1997175
(1) I.e. in principle I'd like to have an image which is as close as possible to that what's actually on the medium, and AFAIU this is the UDF image with the BDMV dir/file structure with normal AACS encryption but without Bus Encryption.
(2) The same as one, but with all encryption gone (normal AACS, BD+, BD-J). I think I'd be able to get that from (1) with bluraybackup, though not sure also when BD+ BD-J is used.
(3) The whole vid as MKV (i.e. no BDMV dir/file structure). Not really sure how well I can get that from (1) respectively (2)... I mean obviously I can mux the streams... but e.g. MakeMKV does things like A/V sync fixes and so.
Oh and I forgot to mention: belonging to the more security conscious (read: paranoid) folks, I don't want any non open code to run on my system, which I why I have some concerns about BD+/BD-J via libbdplus/libbluray-bdj (MakeMKV/DVDFab and similar, I simply run on some separate computer, where I don't mind security that much, not that I'd have any single indication that one couldn't trust those).
Cheers,
Coricopat/Jemima
coricopat
18th March 2024, 23:57
Hey again.
I have to correct my above statement a bit:
For my PIONEER BD-RW BDR-S12U 1.03, I can indeed play back even UHDs (without having added the RDK myself)... and somehow libaccs (let's call it magic) find out the RDK and can decrypt bus encryption (of course only if the VUK or so for the normal AACS encryption is known).
Well at least I assume it does this, cause I don't think it can to LibreDrive Mode, and I wasn't using MakeMKV or so on that computer at all.
But, for the HL-DT-ST BD-RE BH16NS55 1.02:
Either it didn't work in the first place (quite likely, cause I probably still had the RDK I've had manually extracted from DVDFab for that drive+disc in the libaacs cache dir)... or it stopped working since then, cause now (with the libaacs cache cleared) I get:
mmc.c:472: Host key / Certificate (id 0xffff80000217) has been revoked by your drive ?
aacs.c:1368: Unable to initialize bus encryption required by drive and disc
[bd] AACS error: certificate has been revoked
Any ideas why that is so?
Does that mean that the HC in my KEYDB.cfg (from the well known source) has been revoked on that device (but not the other)?
And does that further mean, that if I just insert a recent enough BD in the other drive, it will also get the HC revoked?
Is there any way to get that generally working (other than LibreDrive mode which disables bus encryption), or will one always be dependent on someone getting a recent enough AACS1 (which with the above drives apparently also works for UHDs) HC and sharing it?
Thanks,
Coricopat.
MrPenguin
24th March 2024, 13:17
Since your drive is not an UHD official drive, you could just copy-paste the host certificate from this post (https://forum.doom9.org/showthread.php?p=1990091#post1990091) into your keydb and libaacs should then be able to retrieve the RDK directly from your drive on it's own (without DVDFab).
Just as a data-point, I have an official UHD drive (Pioneer XD08) for which I obviously cannot obtain a RDK, but which is nonetheless LibreDrive-compatible. And I have discovered that while it cannot play a UHD disk directly using VLC, even after I have activated LibreDrive, it can still play UHD disks using mpv - albeit without support for their menus.
I am not entirely sure what is going on here, e.g. is mpv dumb enough not even to consider reversing non-existent bus encryption, or is it smart enough to realise that there is no longer any bus encryption to remove? I know my unit key is correct because mpv successfully decrypts the video, and so can only assume that VLC playback fails because it is accidentally scrambling the data with whatever random nonsense that it has decided to use as an RDK.
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.