mirror of
https://github.com/Atmosphere-NX/Atmosphere.git
synced 2025-06-04 16:53:48 -04:00
fusee/exo: correct device key management for newer consoles (closes #1053)
This commit is contained in:
parent
a5447dd72d
commit
1473adf5c4
4 changed files with 32 additions and 31 deletions
|
@ -273,7 +273,10 @@ void derive_bis_key(void *dst, BisPartition partition_id, uint32_t target_firmwa
|
|||
}
|
||||
};
|
||||
|
||||
const uint32_t bis_key_generation = fuse_get_5x_key_generation();
|
||||
uint32_t bis_key_generation = fuse_get_5x_key_generation();
|
||||
if (bis_key_generation > 0) {
|
||||
bis_key_generation -= 1;
|
||||
}
|
||||
|
||||
static const uint8_t AL16 bis_kek_source[0x10] = {0x34, 0xC1, 0xA0, 0xC4, 0x82, 0x58, 0xF8, 0xB4, 0xFA, 0x9E, 0x5E, 0x6A, 0xDA, 0xFC, 0x7E, 0x4F};
|
||||
switch (partition_id) {
|
||||
|
|
|
@ -838,13 +838,7 @@ uint32_t nxboot_main(void) {
|
|||
|
||||
/* Derive new device keys. */
|
||||
{
|
||||
if (target_firmware >= ATMOSPHERE_TARGET_FIRMWARE_5_0_0) {
|
||||
derive_new_device_keys(fuse_get_retail_type() != 0, KEYSLOT_SWITCH_5XNEWDEVICEKEYGENKEY, target_firmware);
|
||||
} else if (target_firmware >= ATMOSPHERE_TARGET_FIRMWARE_4_0_0) {
|
||||
derive_new_device_keys(fuse_get_retail_type() != 0, KEYSLOT_SWITCH_4XNEWDEVICEKEYGENKEY, target_firmware);
|
||||
} else {
|
||||
/* No new keys to derive */
|
||||
}
|
||||
derive_new_device_keys(fuse_get_retail_type() != 0, KEYSLOT_SWITCH_5XNEWDEVICEKEYGENKEY, target_firmware);
|
||||
}
|
||||
|
||||
/* Set the system partition's keys. */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue