RSA Registers: Difference between revisions

Neimod (talk | contribs)
No edit summary
No edit summary
Line 24: Line 24:
| 0x1000B130
| 0x1000B130
| 0x10
| 0x10
|-
| REG_RSAEXPFIFO
| 0x1000B200
| 0x04
|-
|-
| REG_RSAKEY
| REG_RSAKEY
Line 50: Line 54:
|-
|-
| 8-9
| 8-9
| Should be set to 0x3 before accessing REG_RSAMSG
| Should be set to 0x3 before accessing REG_RSATXT and REG_RSAKEY
|}
|}


Line 65: Line 69:
| 0x4
| 0x4
| 0x4
| 0x4
| ?
| REG_RSASLOTSIZE
|-
|-
| 0x8
| 0x8
Line 87: Line 91:
| ?
| ?
|}
|}
== REG_RSASLOTSIZE ==
This contains the RSA size for this slot, in words. Normally this is 0x40 for RSA-2048.
== REG_RSAEXPFIFO ==
The 0x100-byte exponent is written to this write-only FIFO.


== REG_RSAKEY ==
== 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.
The RSA public key for the selected keyslot can be written here. When writing the RSA key, the key must align with the end of the register area.


== REG_RSATXT ==
== REG_RSATXT ==