RSA Registers: Difference between revisions

Myria (talk | contribs)
RSA_MOD: Note about attack to read RSA_EXPFIFO indirectly
Guiand (talk | contribs)
Clarifications and edge cases
Line 1: Line 1:
= Overview =
The RSA module is essentially a hardware-accelerated modular exponentiation engine. It is specially optimized for RSA applications, so its behavior can be incoherent when RSA's invariants are broken.
=== Observed edge cases ===
* if 2 divides mod, output == 0
= Registers =
= Registers =
{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 77: Line 84:
|-
|-
| 8
| 8
| Endianness (1=Little endian, 0=Big endian)
| Endianness (1=Little endian, 0=Big endian). Affects RSA_EXPFIFO, RSA_MOD, and RSA_TXT.
|-
|-
| 9
| 9
| Word order (1=Normal order, 0=Reversed order)
| Word order (1=Normal order, 0=Reversed order). Affects RSA_MOD and RSA_TXT.
|}
|}