Allow FIRM A9L decryption on devkits

... still needs testing
This commit is contained in:
d0k3 2017-06-05 13:32:07 +02:00
parent ae96c058f8
commit a75f77ad13

View File

@ -3,6 +3,7 @@
#include "sha.h"
#include "nand.h"
#include "keydb.h"
#include "unittype.h"
#include "ff.h"
// 0 -> pre 9.5 / 1 -> 9.5 / 2 -> post 9.5
@ -42,7 +43,11 @@ u32 ValidateFirmA9LHeader(FirmA9LHeader* header) {
0x0A, 0x85, 0x20, 0x14, 0x8F, 0x7E, 0xB7, 0x21, 0xBF, 0xC6, 0xC8, 0x82, 0xDF, 0x37, 0x06, 0x3C,
0x0E, 0x05, 0x1D, 0x1E, 0xF3, 0x41, 0xE9, 0x80, 0x1E, 0xC9, 0x97, 0x82, 0xA0, 0x84, 0x43, 0x08
};
return sha_cmp(enckeyX0x15hash, header->keyX0x15, 0x10, SHA256_MODE);
const u8 enckeyX0x15devhash[0x20] = {
0xFC, 0x46, 0x74, 0x78, 0x73, 0x01, 0xD3, 0x23, 0x52, 0x94, 0x97, 0xED, 0xA8, 0x5B, 0xCF, 0xD2,
0xDA, 0x2D, 0xFA, 0x47, 0x8E, 0x2D, 0x98, 0x89, 0xBA, 0x60, 0xE8, 0x43, 0x5C, 0x1B, 0x93, 0x65,
};
return sha_cmp((IS_DEVKIT) ? enckeyX0x15devhash : enckeyX0x15hash, header->keyX0x15, 0x10, SHA256_MODE);
}
FirmSectionHeader* FindFirmArm9Section(FirmHeader* firm) {