NCCH/Extended Header: Difference between revisions

Kynex7510 (talk | contribs)
mNo edit summary
 
Line 31: Line 31:
| <code>0x500</code>
| <code>0x500</code>
| <code>0x100</code>
| <code>0x100</code>
| NCCH HDR RSA-2048 public key
| NCCH header RSA-2048 modulus
|-
|-
| <code>0x600</code>
| <code>0x600</code>
Line 38: Line 38:
|}
|}


The <code>AccessDesc</code> signature covers the NCCH HDR public key and second ACI. The <code>AccessDesc</code> public key is initialised by the boot ROM.
The <code>AccessDesc</code> signature covers the NCCH header modulus and second ACI. The <code>AccessDesc</code> public key is initialised by the boot ROM.


When loading the exheader, [[FIRM|Process9]] compares the exheader data with the data in the <code>AccessDesc</code> (note that not everything is compared here). When these don't match, an error is returned. The Process9 code handling this validation was updated with [[6.0.0-11|v6.0]]; the only change in this function seems to be the check for the "Ideal processor" field.
When loading the exheader, [[FIRM|Process9]] compares the exheader data with the data in the <code>AccessDesc</code> (note that not everything is compared here). When these don't match, an error is returned. The Process9 code handling this validation was updated with [[6.0.0-11|v6.0]]; the only change in this function seems to be the check for the "Ideal processor" field.