BD+

 BD+ is an additional but optional component of the Blu-ray DRM. It was developed by Cryptography Research Inc. and is based on their concept of Self-Protecting Digital Content (SPDC). It is owned by BD+ Technologies LLC.

It's a security virtual machine (SVM) embedded in authorized players (unrelated to the HDMV/BDJ virtual machine). This DRM program which can be found inside the BDSVM directory of a BD+-protected disc is called "Content Code". The Content Code is executed on a virtual big endian DLX-like processor interfacing with 4MB of memory. This special processor supports 59 different instructions and a register set consisting of 32 general-purpose registers and three special-purpose registers for the instruction filter, the clock cycle counter, and the program counter. It may look simple, but the I/O between the virtual machine and the player is somewhat more complex. 

The SVM communicates with the Blu-ray player's BDJ and HDMV VM, using the PSR102, PSR103, and PSR104 registers. To set up callback functions for communication, the player calls bdplus_set_psr().

BD+ mainly works by adding errors to the video stream, to make it unpleasant to watch due to near-constant artifacts. Before 2019, 20th Century Fox was a well-known user of BD+. Online forum, Doom9, discovered its technological specifications and there have been several reverse engineering attempts such as libbdplus. 

All Blu-ray players are required to have the BD+ but it's completely optional for discs, it's up to studios and labels if they wish to implement it.

BD+ protected discs have a special directory that contains all nessary files for it to work:

  1. BDSVM: Directory containing BD+ content code files.
    • xxxxx.svm: Content Code file
    • BACKUP: Directory of backup Content Code files.

 

This is what happens when you rip a BD+ encrypted disc, turn it into an ISO, and try to play it.


Content Code

The BD+ VM executes the DLX assembled code inside a .svm file, were the Content Code is located. Its magic number is BDSVM_CC

BD+ also uses slots, like a save-file stored on the player's storage. The slot layout is 500 slots of 256 bytes each (125 KB total). The SVM can request a new/free slot to write, or look for one previously written. The slot file name is slot.bin.

Successor

BD+2 is the successor for UltraHD Blu-ray.

 

 

Sources

 

 Author(s) : Γ† Firestone

on Monday, November 10, 2025 | | A comment?
0 responses to “BD+”

Leave a Reply

Popular Pages