Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#1 | Link |
Registered User
Join Date: Jan 2007
Location: Internet
Posts: 378
|
DumpHD - a HD-DVD / Blu-Ray Decrypter
I was quite happy that i finally could watch my HD-DVDs on my 30" Dual-Link Display with the help of BackupHDDVD. After looking into the code i was quite unhappy that it can not decrypt everything correctly and i didn't like to see it corrupting NAV_PCKs. I checked the MODs that appeared and again was not satisfied that they don't address these things. In my eyes they looked like cosmetics for the proof-of-concept code.
So i started developing my own program, hopefully beeing more use-of-concept. It uses the same approach as BackupHDDVD and uses the same key database format. My goal is to backup a HD-DVD without any traces of AACS. Because i don't have the HD-DVD spec it will take some time to reach it, there are still some things i have to figure out. Key features so far: - Dual-Core supported decryption of EVO / M2TS files (for harddisk to harddisk speed records ;o)) - Support for every pack type of an EVO (including in-place decryption of ADV_PCKs, excluding Sequence Key Sections) - Decryption of every ARF protection type - Multiple files (currently CLI only) or complete disc mode - Usage of a key database to get the decryption keys or direct retrieval of the keys off the source disc - Supports HD-DVDs for Standard / Advanced Content (but not both on the same disc), Blu-Ray ROM BDMV - Experimental Blu-Ray Recordable support (with multiple CPS Units, BDMV, BDAV with Aux Directories and Thumbnails) - Automatic BD+ removal using the BDVM Debugger or manually by supplying a correct Conversion Table (currently CLI only) - Streaming output of EVO / M2TS files to stdout - Very much console output for free ;o) - GUI Since version 0.4 DumpHD can retrieve the required keys off the disc itself by using the aacskeys library. Since version 0.6 DumpHD can remove BD+ automatically by using BDVM Debugger. A tutorial on how to use DumpHD if automatic key retrieval does not work can be found here and here, for manual BD+ removal here. I will keep updating this post to point the download links to the current version. The tar.gz and the zip have the same content. Current version: 0.61 Release date: 2009-06-03 Download links: DumpHD 0.61 (zip) DumpHD 0.61 (tar.gz) Support utilities --------------- aacskeys 0.4.0c (2009-08-30) (Homepage): aacskeys 0.4.0c (zip) aacskeys 0.4.0c (tar.gz) BDVM Debugger 0.1.5 (2008-12-15) (Homepage) BDVM Debugger 0.1.5 DumpVID 0.4a (2009-07-15): DumpVID 0.4a DumpBN 0.31 (from BackupBDAV 0.50): DumpBN 0.31 (RapidShare) DumpBN 0.31 (SendSpace) ConvTableView 0.3 (2009-01-13): ConvTableView 0.3 (zip) ConvTableView 0.3 (tar.gz) ![]() Last edited by KenD00; 30th August 2009 at 17:23. Reason: Links to aacskeys updated |
![]() |
![]() |
![]() |
#6 | Link | |
Registered User
Join Date: Jan 2007
Posts: 17
|
KenD00, you suggest:
Quote:
Thanks! |
|
![]() |
![]() |
![]() |
#7 | Link |
Registered User
Join Date: Jan 2007
Location: Internet
Posts: 378
|
The Server VM should be part of the JRE. Just start one of the cmd files, if they don't run, then you don't have it and should install the JDK. However, at least in the JDK 1.5.0_07 there seems to be a bug in the installer. It installs 2 JREs, one in the JDK directory and one under C:\Program Files\Java (or however it is called in your language). By default the JRE from the second location is used, and there the Server VM is missing. You need to copy the directory <jdk-directory>\jre\bin\server to it. If you then type
Code:
java -server -version ![]() |
![]() |
![]() |
![]() |
#9 | Link |
Registered User
Join Date: Feb 2007
Posts: 9
|
Apple
OK When I use that bit about Java server version in my terminal I get this:
Code:
Welcome to Darwin! Bhima-Pandavas-power-mac-g5:~ Bhima$ java -server -version java version "1.5.0_07" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_07-164) Java HotSpot(TM) Client VM (build 1.5.0_07-87, mixed mode) Bhima-Pandavas-power-mac-g5:~ Bhima$ |
![]() |
![]() |
![]() |
#10 | Link |
Resident DRM Hater
Join Date: Oct 2006
Location: International waters
Posts: 242
|
Will we see source code or Blu-ray support? I'd like to comment on how well it works (or doesn't), but I don't have an HD-DVD drive.
![]() PM me though if you need a host for anti-DRM tools like this. ![]()
__________________
Because Moogles pwn. |
![]() |
![]() |
![]() |
#11 | Link | |
Registered User
Join Date: Jan 2007
Location: Tel-Aviv, Israel
Posts: 185
|
Quote:
I am not certain if Apple offers a server vm in the client version of Mac OS X. I notice that you are running Mac OS, so I am very curious: What version of Mac OS X are you running? 10.4 can't access UDF 2.5 formatted disks, so are you running a beta of Leopard, or are you accessing the drive on a Windows machine over the network? Is there Mac OS X playback software that can handle HD-DVDs or at least .EVO files? Or are you recompiling ffmpeg to demux EVOs and decode vc-1 streams? |
|
![]() |
![]() |
![]() |
#12 | Link |
Registered User
Join Date: Jan 2007
Location: Tel-Aviv, Israel
Posts: 185
|
KenD00, could you release the source code?
You currently have something akin to Code:
out.print("Identifying disc... "); File discIdFile = new File(aacsDir, "VTKF000.AACS"); if(!discIdFile.isFile()) break There are now disks that use standard content authoring and instead have VTKF.AACS (as opposed to advanced content authoring that indeed uses VTKF000.AACS). I'd be interested in getting DumpHD to work with these disks. |
![]() |
![]() |
![]() |
#13 | Link |
Registered User
Join Date: Oct 2003
Posts: 435
|
gave it a run and it got an error :
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 64 at dumphd.aacs.AACSDecrypter.decryptEvob(AACSDecrypter.java:545) at dumphd.core.DumpHD.dump(DumpHD.java:271) at dumphd.core.DumpHD.main(DumpHD.java:439) it was working ok upto this point... |
![]() |
![]() |
![]() |
#15 | Link |
Registered User
Join Date: Mar 2006
Posts: 1
|
Source codes
If anyone want source codes, try this:
1) unpack dumphd_0.2.zip 2) copy(or rename) file DumpHD.jar into DumpHD.zip 3) unpack DumpHD.zip - you will get some directories with bunch of *.class files 4) get sources(*.java) with some java decompiler(ie. jad) regards foxcz |
![]() |
![]() |
![]() |
#16 | Link | |
Registered User
Join Date: Feb 2007
Posts: 9
|
Quote:
So we now know you are not nearly as curious as I am as to how all of this will be working out! |
|
![]() |
![]() |
![]() |
#17 | Link |
Registered User
Join Date: Jan 2007
Location: Internet
Posts: 378
|
@Bhima
Then you are not using the Server VM. Interesting that Java didn't throw an error like the VM is not present. So it may be, like awhitehead suggests, that the MAC Java version does not have the Server VM or your installation is just screwed, maybe reinstallation of java will help. But you can also use the Client VM, it's fast enough to dump directly from the HD-DVD, you will see the performance boost only when decrypting from harddisk to harddisk. @HyperHacker After reading the news on this site last night i thought damn, we are really lacking BluRay support. So finally i flew over the BluRay AACS-Spec and thought, is it really so easy? Effort for decrypting BluRay seems to be quite lower than for HD-DVD. But there are still two problems: 1.) I don't know MPEG2 Transport Streams and i don't have the spec. I don't want copy blindly the BackupBluRay code, i think its a better approach to understand whats done there 2.) I don't have a BluRay drive and therefor no testing material... @awhitehead The complete disc and recognition and Title Key File processing needs to be overworked, especially to support discs which contain both content types. I hacked in recognition for Standard Content, should work, try the new version. @woah! Fixed that (i hope *g*), try the new version @everyone requesting source code I won't release the source now because of one reason. I saw what happened to BackupHDDVD, quickly various MODs emerged, some providing functions that others don't, if you want something specific you have to use this version, if you want something else you have to use that version. BackupHDDVD was a proof of concept, it showed that it is possible to decrypt, it was good that the source was there so others could learn, but the author let the program die. I am still developing my program, i want to ensure that there is ONE version to use. If you have questions, i will share my knowledge, but not the source. When some day i decide the program is finished, or i'm not in the mood to push it any further, then i think i will release the source. And for those who haven't got it, there is a new version out ![]() ![]() |
![]() |
![]() |
![]() |
#18 | Link | |
Registered User
Join Date: Feb 2007
Posts: 15
|
Quote:
I know sourceforge is out, but anyone with web space can throw up an SVN or CVS repository. Come to think of it, I'm surprised doom9 hasn't done this yet, considering how much software they already serve and how much development occurs in this forum. I agree with your sentiments though, it needs to become much more structured. One way to do that is to keep the code to yourself and maintain individual control. The open source way would be to release your code into some sort of structured dev environment. If set up right, you could retain the ability to accept/reject code changes that others checked in. |
|
![]() |
![]() |
![]() |
#19 | Link | |
Resident DRM Hater
Join Date: Oct 2006
Location: International waters
Posts: 242
|
Quote:
![]()
__________________
Because Moogles pwn. |
|
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|