Fusesets

From Xenon Wiki
Revision as of 18:59, 12 December 2010 by imported>Xyz1347 (→‎Understanding the Xbox 360's Fusesets)
Jump to navigation Jump to search

Understanding the Xbox 360's Fusesets

The Xbox 360's Xenon CPU has 768 bits of eFUSE, a technology invented by IBM, and implemented in some of it's processors. eFUSEs are hardware fuses on the CPU, and can be "blown" to a binary value (1 being blown, and 0 being un-blown) in the Xbox 360, there are 768 fuses, that make up the fusesets. Though each fuseset can be blown individually, they are blown in groups of 8 to make a hexadecimal value for the CPU key, and fuseline 00, instead of a binary value, which is what XeLL will actually display. Technically, there are only 192 viewable fuses.

What They Look Like

The once you aquire the fusesets (From either XeLL or the KK-Exploit) they look like this:

fuseset 00: C0FFFFFFFFFFFFFF

fuseset 00: 0F0F0F0F0F0F0FF0

fuseset 02: 0F00000000000000

fuseset 03: 9FB0174015744DAF

fuseset 04: 9FB0174015744DAF

fuseset 05: D569BAD6958DAE9D

fuseset 06: D569BAD6958DAE9D

fuseset 07: FFFF000000000000

fuseset 08: 0000000000000000

fuseset 09: 0000000000000000

fuseset 10: 0000000000000000

fuseset 11: 0000000000000000

This may be confusing to anyone who doesn't know much about how the fuses work.

Fusesets 00 and 01

These are burned at the factory, after the console is manufactured, they show whether the console is a devkit or not. They also disable CPU JTAG after the console's flash is programed.

Fuseset 02

This is the lockdown counter for the 2BL/CB (The 2nd Bootloader, stored in NAND Flash) One of these are burned everytime the console updates it's bootloader (Which isn't very often) this is the reason that there is no way to recover a JTAG that has been updated to 2.0.8***.0, even is you have the CPU key, (2BL is encrypted with the CPU/1BL key, but is signed with Microsoft's private key so you can't change the lockdown counter in the NAND. The bootloader will fail signature checks, and panic)

Fusesets 03-06

These make up the CPU key. These start out as all zero's, and are burned presumably at random when the console boots for the first time, they are used to encrypt the keyvault, and the bootloader sections. The CPU key is unique to each console, and is sometimes refered to as the "per-box key" To find the CPU key, add fusesets 03, and 05, OR 04 and 06. For example, this console's CPU key would be "9FB0174015744DAFD569BAD6958DAE9D."

Fusesets 07-11

These make up the console's "Lockdown Counter" they are blown after each dashboard update starting with the update from 4532/4548 to 4598. They prevent a previous version of the dashboard from being run on an updated console. There are enough eFUSEs in this section for Microsoft to update the console roughly 80 times. The lockdown counter of this console is at FFFF00000..., this means that it has recieved 4 dashboard updates since 2.0.4532.0 ran on it. In the NAND's 6BL(CF) section, there is another lockdown counter that should match the one of the eFUSEs. If it doesn't match, the console will panic on boot, and will show a RRoD. Now, here's the good part! If we know the CPU key of the console, we can decrypt the 6BL, and change it's lockdown counter of the NAND to match the one on the console, and therefore run an older dashboard. Since the 6BL isn't signed with Microsoft's private key, we can edit as we please, so long as we have our CPU key.