SPRUJB6B November 2024 – May 2025 AM2612
This command performs a point multiplication and addition for Short Weierstrass curves: Q=kP+A. The operation does not provide protection against SCA. The scalar k is not blinded.
| Slot | Name | Description | In ROM? |
|---|---|---|---|
| 0 | ax | x-coordinate of the addend point A | No |
| 1 | ay | y-coordinate of the addend point A | No |
| 3 | k | The scalar for the scalar multiplication | No |
| 10 | b | b-coefficient of the elliptic curve | Yes |
| 11 | px | x-coordinate of the point to multiply P | No |
| 12 | py | y-coordinate of the point to multiply P | No |
| 13 | q | Order of the subgroup generated by curve generator. Must be odd. | Yes |
| 14 | p | Order of the finite field underlying the elliptic curve if it is not a supported special modulus. | Yes |
| 15 | a | a-coefficient of the elliptic curve | Yes |
The POINT_MUL_ADD command will raise an error if:
On error, this command clears slots 3 through 12. On success, it clears slots 0,1 and 3 through 10.
| Slot | Name | Description |
|---|---|---|
| 11 | qx | x-coordinate of the output point Q |
| 12 | qy | y-coordinate of the output point Q |