Editing Bluray disc
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 3: | Line 3: | ||
Generalities about disc images: | Generalities about disc images: | ||
* disc | * the disc image if made of sectors | ||
* a sector is 2048 bytes | * a sector is 2048 bytes | ||
* sector 0 is made of bytes 0 to 2047, etc. | * sector 0 is made of bytes 0 to 2047, etc. | ||
Line 9: | Line 9: | ||
Encryption: | Encryption: | ||
* some regions of the disc are encrypted | * some regions of the disc are encrypted. | ||
* the encryption is done | * the encryption is done sector by sector. | ||
* Sector 0 describes which part of the disc is encrypted (see below). | |||
* Sector 0 describes which | |||
* Sector 1 has information about the disc. | * Sector 1 has information about the disc. | ||
File system: | File system: | ||
* [http://www.osta.org/specs/pdf/udf260.pdf UDF] filesystem (a profile of [http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-167.pdf ECMA-167]) | * [http://www.osta.org/specs/pdf/udf260.pdf UDF] filesystem (a profile of [http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-167.pdf ECMA-167]) | ||
* the structure of the UDF filesystem is in | * the structure of the UDF filesystem itself is in cleartext | ||
* some files are encrypted (their data fall in the encrypted regions of the disc) | * some files are encrypted (their data fall in the encrypted regions of the disc) | ||
* some files are not encrypted ( | * some files are not encrypted (thei fata fall in the non-encrypted regions of the disc) | ||
== Disc Info == | == Disc Info == | ||
Line 68: | Line 65: | ||
</pre> | </pre> | ||
* The first 16 bytes | * The first 16 bytes identidy a PS3 disc. | ||
* The next 32 bytes are the disc ID (with space padding) | * The next 32 bytes are the disc ID (with space padding) | ||
* 0x840: ? | * 0x840: ? | ||
Line 248: | Line 245: | ||
== IRD file == | == IRD file == | ||
3k3y generates [http://jonnysp.bplaced.net/ IRD files] which contains some information about the disc. In particular, it contains "data1" which is used to derive the disc AES encryption key | 3k3y generates [http://jonnysp.bplaced.net/ IRD files] which contains some information about the disc. In particular, it contains "data1" which is used to derive the disc AES encryption key. | ||
The file is: | The file is: | ||
Line 268: | Line 265: | ||
!Example | !Example | ||
!Versions | !Versions | ||
|- | |- | ||
|4B | |4B | ||
Line 274: | Line 270: | ||
|Magic string ("3IRD") | |Magic string ("3IRD") | ||
|3IRD | |3IRD | ||
| | | | ||
|- | |- | ||
Line 281: | Line 276: | ||
|Version | |Version | ||
|6, 7, 8, 9 | |6, 7, 8, 9 | ||
| | | | ||
|- | |- | ||
|9B | |9B | ||
|string | |string | ||
| | |Game ID | ||
|BCES01584 | |BCES01584 | ||
| | | | ||
|- | |- | ||
|var | |var | ||
|string | |string | ||
| | |Game name | ||
|The Last Of Us | |The Last Of Us | ||
| | | | ||
|- | |- | ||
|4B | |4B | ||
|string | |string | ||
| | |Update version | ||
|4.41 | |4.41 | ||
| | | | ||
|- | |- | ||
|5B | |5B | ||
|string | |string | ||
| | |Game version | ||
|4.41 | |4.41 | ||
| | | | ||
|- | |- | ||
|5B | |5B | ||
|string | |string | ||
| App version | |App version | ||
|01.00 | |01.00 | ||
| | | | ||
|- | |- | ||
|4B | |4B | ||
Line 324: | Line 313: | ||
| | | | ||
|v=7 | |v=7 | ||
|- | |- | ||
|var | |var | ||
|compressed | |compressed | ||
|Header | |Header | ||
| | | | ||
| | | | ||
Line 336: | Line 323: | ||
|compressed | |compressed | ||
|Footer | |Footer | ||
| | | | ||
| | | | ||
Line 343: | Line 329: | ||
|uint | |uint | ||
|Region count | |Region count | ||
| | | | ||
| | | | ||
Line 358: | Line 343: | ||
|… | |… | ||
|… | |… | ||
|- | |- | ||
|4B | |4B | ||
|uint | |uint | ||
|File count | |File count | ||
| | | | ||
| | | | ||
Line 372: | Line 355: | ||
| | | | ||
| | | | ||
|- | |- | ||
|16B | |16B | ||
Line 385: | Line 367: | ||
|… | |… | ||
|… | |… | ||
|- | |- | ||
|115B | |115B | ||
Line 398: | Line 373: | ||
| | | | ||
|v=9 | |v=9 | ||
|- | |- | ||
|16B | |16B | ||
|bytes | |bytes | ||
|Data 1 | |Data 1 | ||
| | | | ||
| | | | ||
Line 410: | Line 383: | ||
|bytes | |bytes | ||
|Data 2 | |Data 2 | ||
| | | | ||
| | | | ||
Line 419: | Line 391: | ||
| | | | ||
|v<9 | |v<9 | ||
|- | |- | ||
| | |2B | ||
|uint/bytes | |uint/bytes | ||
|UID | |UID | ||
| | | | ||
| | | | ||
|} | |} | ||
Compressed data are compressed with | Compressed data are compressed with gzipped and prefixed with a length (uint32). | ||
== References == | == References == | ||
Line 445: | Line 405: | ||
* 3k3y IsoTools, this is a .NET program available in binary form. The [https://github.com/icsharpcode/ILSpy ILspy] decompiler produces a very readable output. | * 3k3y IsoTools, this is a .NET program available in binary form. The [https://github.com/icsharpcode/ILSpy ILspy] decompiler produces a very readable output. | ||
* PS3 ISO Patcher by BlackDaemon, is a .NET program available in source code | * PS3 ISO Patcher by BlackDaemon, is a .NET program available in source code | ||
{{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude> | {{Reverse engineering}}<noinclude>[[Category:Main]]</noinclude> |