Datasheet

Table Of Contents
...........continued
Parameter Type Direction Location Data Length Before
Executing the
Service
After
Executing the
Service
pfu1ExpBase (see
Note 2)
pfu1 I Any place
(see Note
3)
u2ExpLength
+ 4
Base of the
Exponent
Base of the
Exponent
untouched
u2ExpLength (see
Note 4)
u2 I Significant
length of
Exponent
Significant
length of
Exponent
u1Blinding (see
Note 5)
u1 I Exponent
unblinding
value
Exponent
unblinding
value
untouched
Note: 
1. This zone contains the number to be exponentiated (u2ModLength bytes) and is used during the
computations as a workspace (four 32-bit words longer than the number to be exponentiated). At
the end of the computation, it contains the correct result of the operation.
2. The exponent must be given with a supplemental word on the LSB side (low addresses). This word
shall be set to zero.
3. If the PUKCL_EXPMOD_EXPINPUKCCRAM option is not set, the location of the exponent MUST
NOT be the Crypto RAM, even partially.
4. The u2ExpLength parameter does not take into account the supplemental word needed on the LSB
side of the exponent.
5. It is possible to mask the exponent in memory using an 8-bits XOR mask value. Be aware that not
only the exponent, but also the supplemental word has to be masked. If masking is not desired,
then this parameter should be set to 0.
43.3.5.2.5 Options
The options are set by the u2Options input parameter, which is composed of:
the mandatory Calculus Mode Option described in Table 43-51
the mandatory Window Size Option described in Table 43-52
the indication of the presence of the exponent in Crypto RAM
Note:  Please check precisely if one part of the exponent is in Crypto RAM. If this is the case the
PUKCL_EXPMOD_EXPINPUKCCRAM must be used.
The u2Options number is calculated by an “Inclusive OR” of the options. Some examples in C language
are:
Operation:Fast Modular Exponentiation with the window size equal to 1 and with no part of the
Exponent in the Crypto RAM
PUKCL(u2Options) = PUKCL_EXPMOD_FASTRSA | PUKCL_EXPMOD_WINDOWSIZE_1;
Operation: Regular Modular Exponentiation with the window size equal to 2 and with one part of the
Exponent in the Crypto RAM
PUKCL(u2Options) = PUKCL_EXPMOD_REGULARRSA | PUKCL_EXPMOD_WINDOWSIZE_2 |
PUKCL_EXPMOD_EXPINPUKCCRAM;
SAM D5x/E5x Family Data Sheet
Public Key Cryptography Controller (PUKCC)
© 2019 Microchip Technology Inc.
Datasheet
DS60001507E-page 1493