Console Security Certificate: Difference between revisions

From Xenon Wiki
Jump to navigation Jump to search
imported>Stoker25
(Created page with 'The '''Console Security Certificate''' is used by the Xbox 360 as the format of all RSA signatures generated by it. The total length of the certificate is 552 (0x228) bytes. = S…')
 
imported>Tuxuser
 
(8 intermediate revisions by 3 users not shown)
Line 17: Line 17:
| 0x5
| 0x5
| bytes
| bytes
| Certificate Owner Console ID
| Console ID
|-
|-
| 0x7
| 0x7
| 0x14
| 0xB
| ascii string
| ascii string
| Certificate Owner Console Part Number
| Console Part Number
|-
|-
| 0x1B
| 0x12
| 0x1
| 0x4
| byte
| int
| Certificate Owner Console Type (1 for devkit, 2 for retail)
| Reserved
|-
| 0x16
| 0x2
| short
| Privileges
|-
| 0x18
| 0x4
| int
| Console Type (0x02 for retail, anything different is devkit)
|-
|-
| 0x1C
| 0x1C
Line 54: Line 64:
| Signature
| Signature
|}
|}
= Notes =
The console type field can be very strange, especially with older pre-1888 dashboards, for example two different 1838 keyvaults identify their console type as 0x80000002. If you want to check if something is devkit or retail, I'd suggest something like:
<pre>
if(consoletype == 0x02)
    return retail;
else
    return devkit;
</pre>
[[Category:Xbox360_System_Software]]
[[Category:Xbox360 System Software]]

Latest revision as of 00:14, 7 January 2014

The Console Security Certificate is used by the Xbox 360 as the format of all RSA signatures generated by it. The total length of the certificate is 552 (0x228) bytes.

Structure

Offset Length Type Information
0x0 0x2 bytes Public Key Certificate Size
0x2 0x5 bytes Console ID
0x7 0xB ascii string Console Part Number
0x12 0x4 int Reserved
0x16 0x2 short Privileges
0x18 0x4 int Console Type (0x02 for retail, anything different is devkit)
0x1C 0x8 ascii string Certificate Date of Generation
0x24 0x4 bytes Public Exponent
0x28 0x80 bytes Public Modulus
0xA8 0x100 bytes Certificate Signature
0x1A8 0x80 bytes Signature

Notes

The console type field can be very strange, especially with older pre-1888 dashboards, for example two different 1838 keyvaults identify their console type as 0x80000002. If you want to check if something is devkit or retail, I'd suggest something like:

if(consoletype == 0x02)
    return retail;
else
    return devkit;