Difference between revisions of "RSA Registers"
Jump to navigation
Jump to search
Line 81: | Line 81: | ||
== REG_RSAMSG == | == REG_RSAMSG == | ||
The RSA signature can be written here, and the data read from here is the message. The message padding must be checked by software. When writing the RSA signature, the signature is copied to 0x1000B900-RSA_bytesize, length RSA_bytesize. The engine determines the RSA byte-size by checking where the first word of the signature was written. | The RSA signature can be written here, and the data read from here is the message. The message padding must be checked by software. When writing the RSA signature, the signature is copied to 0x1000B900-RSA_bytesize, length RSA_bytesize. The engine determines the RSA byte-size by checking where the first word of the signature was written. | ||
+ | |||
+ | == Keyslots usage == | ||
+ | {| class="wikitable" border="1" | ||
+ | ! Keyslot | ||
+ | ! Description | ||
+ | |- | ||
+ | | 0 | ||
+ | | Arbitrary | ||
+ | |- | ||
+ | | 1 | ||
+ | | [[NCCH#CXI|CXI]] access desc (following the exheader) | ||
+ | |- | ||
+ | | 2-3 | ||
+ | | Unused | ||
+ | |} |
Revision as of 19:26, 14 August 2012
Registers
NAME | PHYSICAL ADDRESS | WIDTH |
---|---|---|
REG_RSACNT | 0x1000B000 | 0x04 |
REG_RSASLOT0 | 0x1000B100 | 0x10 |
REG_RSASLOT1 | 0x1000B110 | 0x10 |
REG_RSASLOT2 | 0x1000B120 | 0x10 |
REG_RSASLOT3 | 0x1000B130 | 0x10 |
REG_RSAKEY | 0x1000B400 | 0x100 |
REG_RSAMSG | 0x1000B800 | 0x100 |
REG_RSACNT
Bit | Description |
---|---|
0 | Select keyslot, error? |
1 | Keyslot select related? |
4-7 | Keyslot |
8-9 | Should be set to 0x3 before accessing REG_RSAMSG |
REG_RSASLOT
Start | Width | Description |
---|---|---|
0x0 | 0x4 | REG_RSASLOTCNT |
0x4 | 0x4 | ? |
0x8 | 0x4 | ? |
0xC | 0x4 | ? |
REG_RSAKEY
The RSA public key for the selected keyslot can be written here. When writing the RSA key, the key is copied to 0x1000B500-RSA_bytesize, length RSA_bytesize. The engine determines the RSA byte-size by checking where the first word of the key was written. The engine only supports RSA-2048 and below.
REG_RSAMSG
The RSA signature can be written here, and the data read from here is the message. The message padding must be checked by software. When writing the RSA signature, the signature is copied to 0x1000B900-RSA_bytesize, length RSA_bytesize. The engine determines the RSA byte-size by checking where the first word of the signature was written.
Keyslots usage
Keyslot | Description |
---|---|
0 | Arbitrary |
1 | CXI access desc (following the exheader) |
2-3 | Unused |