Editing Remarry Bluray Drive on Linux
Jump to navigation
Jump to search
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
=Introduction= | =Introduction= | ||
Line 6: | Line 6: | ||
* After i have written P-Block, S-Block and a new HRL, i could play my BD movies again :) | * After i have written P-Block, S-Block and a new HRL, i could play my BD movies again :) | ||
* Hope this guide can help someone too. | * Hope this guide can help someone too. | ||
=EID2= | =EID2= | ||
* You will need decrypted EID2 data. | * You will need decrypted EID2 data. | ||
* How to get it on Linux is described here: http://www. | * How to get it on Linux is described here: http://www.ps3devwiki.com/wiki/Spuisofs#Dumping_EID2_Key_with_spuisofs | ||
* EID2 contains encrypted P-Block and S-Block. | * EID2 contains encrypted P-Block and S-Block. | ||
* To get decrypted S-Block and P-Block first you have to decrypt EID2 with EID2 key and IV and then decrypt the blocks with DES-CBC. | * To get decrypted S-Block and P-Block first you have to decrypt EID2 with EID2 key and IV and then decrypt the blocks with DES-CBC. | ||
Line 22: | Line 20: | ||
key: 6C CA B3 54 05 FA 56 2C | key: 6C CA B3 54 05 FA 56 2C | ||
</pre> | </pre> | ||
=Tools= | =Tools= | ||
* ps3vuart-tools: http://www.ps3devwiki.com/wiki/Ps3vuart-tools | * ps3vuart-tools: http://www.ps3devwiki.com/wiki/Ps3vuart-tools | ||
* | * bd_enable_buffer_write.c: http://www.multiupload.nl/0GD1CQV9UX | ||
* bd_read_buffer.c: http://www.multiupload.nl/OQCDJLA1EM | |||
* bd_write_buffer.c: http://www.multiupload.nl/AK5JSAK9N3 | |||
* You could also use my PS3 Debian LiveCD which has ps3vuart-tools preinstalled and GCC compiler which you can use to compile all necessary BD tools. See http://www.ps3devwiki.com/wiki/Debian_LiveCD. | * You could also use my PS3 Debian LiveCD which has ps3vuart-tools preinstalled and GCC compiler which you can use to compile all necessary BD tools. See http://www.ps3devwiki.com/wiki/Debian_LiveCD. | ||
Line 90: | Line 49: | ||
* Not all P-Block data is sent to BD drive. Only data starting at offset 0x10 and of size 0x60 bytes is written to BD drive buffer 2. | * Not all P-Block data is sent to BD drive. Only data starting at offset 0x10 and of size 0x60 bytes is written to BD drive buffer 2. | ||
* If you read back the BD buffer 2 right after you have written it then the first 0x10 bytes should match the first 0x10 bytes you sent. The remaining 0x50 bytes you read back should be all 0s. | * If you read back the BD buffer 2 right after you have written it then the first 0x10 bytes should match the first 0x10 bytes you sent. The remaining 0x50 bytes you read back should be all 0s. | ||
==Test== | ==Test== | ||
Line 123: | Line 68: | ||
# Authenticate the BD drive | # Authenticate the BD drive | ||
sudo ps3dm -v sm drive_auth 0x29 # It should not fail !!! | sudo ps3dm -v sm drive_auth 0x29 # It should not fail !!! | ||
Line 135: | Line 78: | ||
* BD buffer 3 is of size 0x670 bytes. | * BD buffer 3 is of size 0x670 bytes. | ||
* S-Block is in decryoted EID2 at offset 0xa0 and of size 0x690. | * S-Block is in decryoted EID2 at offset 0xa0 and of size 0x690. | ||
* Not all S-Block data is sent to BD drive. Only data starting at offset 0x10 and of size 0x670 bytes is written to BD drive buffer 3. | * Not all S-Block data is sent to BD drive. Only data starting at offset 0x10 and of size 0x670 bytes is written to BD drive buffer 3. | ||
* If you read back the BD buffer 3 right after you have written it then the first 0x10 bytes should match the first 0x10 bytes you sent and also the first 0x10 bytes which your read bcak from BD buffer 2 after you sent P-Block. The remaining 0x660 bytes you read back should be all 0s. | * If you read back the BD buffer 3 right after you have written it then the first 0x10 bytes should match the first 0x10 bytes you sent and also the first 0x10 bytes which your read bcak from BD buffer 2 after you sent P-Block. The remaining 0x660 bytes you read back should be all 0s. | ||
Line 151: | Line 93: | ||
sudo ./bd_enable_buffer_write -b 3 | sudo ./bd_enable_buffer_write -b 3 | ||
# Write | # Write P-Block to BD buffer 3 | ||
sudo ./bd_write_buffer -b 3 -i sblock.bin | sudo ./bd_write_buffer -b 3 -i sblock.bin | ||
Line 161: | Line 103: | ||
* BD buffer 4 is of size 0x8000 bytes. | * BD buffer 4 is of size 0x8000 bytes. | ||
* If you dump HRL buffer after you have written P- and S-blocks but before you have written a new HRL then you wont't see a valid HRL but some junk. That's OK. | * If you dump HRL buffer after you have written P- and S-blocks but before you have written a new HRL then you wont't see a valid HRL but some junk. That's OK. | ||
<pre> | <pre> | ||
Line 209: | Line 150: | ||
00008000 | 00008000 | ||
</pre> | </pre> | ||