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.

 

Go Back   Doom9's Forum > General > Decrypting

Reply
 
Thread Tools Search this Thread Display Modes
Old 8th September 2019, 03:07   #1  |  Link
maetel99
Registered User
 
Join Date: Apr 2018
Posts: 15
Blu-ray disc region protection removal

I've been playing around with region code removal on Blu-ray discs. Unlike for DVD, the protection is handled at the player level rather than at the disc/drive level.

There are essentially two types of protection: using instructions in the MovieObjects.bdmv file, and doing a check in the Java code. Both methods are described in Annex M of the Blu-ray spec, and involve checking the PSR20 player register to determine the player region.

Removing the region checks from the MovieObjects.bdmv has already been discussed in this forum by dmz01 during a discussion of the BDedit tool. I have been able to successfully implement removal of this type of protection.

For the second type where the check is in Java, the only free tool I am aware of that handles the removal is "Blu-ray Region Code Remover 2.5" by SuperGoof. Unfortunately, SuperGoof never released the source code for his tool and never described his algorithm in any detail. SuperGoof also stopped posting around 10 years ago.

Does anyone have the source code for "Blu-ray Region Code Remover 2.5"? Alternatively, does anyone know what steps are necessary to patch the Blu-ray Java code to remove the region protection?
maetel99 is offline   Reply With Quote
Old 24th September 2019, 07:22   #2  |  Link
maetel99
Registered User
 
Join Date: Apr 2018
Posts: 15
From what I can tell, the process that AnyDVD uses is something like this:

1. Unzip the file /BDMV/JAR/00000.jar (and others if present)
2. Locate each of the resulting Java bytecode files 00000/*.class
3. Within each Java bytecode file, search for the string:
"org/bluray/system/RegisterAccess"
4. Replace each instance of this string with:
"com/z/v"
5. Write out modified Java bytecode file(s)
6. Zip up new file /BDMV/JAR/00000.jar
7. Create an RSA key for code signing
8. Sign the /BDMV/JAR/00000.jar using the private key
9. Put the public key into an X509 Version 3 certificate
10. Store the public key certificate as /CERTIFICATE/app.discroot.crt

Probably the certificate and keys from "Blu-ray Region Code Remover 2.5" would still work.

Basically, the idea is to block any calls to the system function org.bluray.system.RegisterAccess.getPSR(). I'm not sure why a changing this to com.z.v.getPSR() doesn't crash the Java applet.
maetel99 is offline   Reply With Quote
Reply

Tags
blu-ray, java blu ray authoring, region code, region-free

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 09:07.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.