Datasheet

Table Of Contents
Compute a S value using R, the scalar number, the private key and the provided hash value. Note
that the resulting signature (R,S) is stored at the place of the input A point.
If all is correct and S is different from zero, the status is set to PUKCL_OK. If all is correct and S
equals zero,the status is set to PUKCL_WRONG_SELECT_NUMBER. If an error occurs, the status
is set to the corresponding error value (see Status Returned Values below).
The service name for this operation is GF2NEcDsaGenerateFast. The fast mode is used, the fast
modular reduction is used in the computations.
The signature (R,S), when resulting from a computation is given back at address of the A point:
The R value result with u2ModLength + 4 bytes (padded with zeros).
The S value result with u2ModLength + 4 bytes (padded with zeros)
The u2NLength + 4 following bytes (space for the third coordinate of A) are filled with zeros.
43.3.7.9.4 Parameters Definition
Table 43-108. GF2NEcDsaGenerateFast Service Parameters
Parameter Type Direction Location Data Length Before
Executing the
Service
After
Executing
the Service
nu1ModBase nu1 I Crypto
RAM
u2ModLength + 4 Base of
modulus P
Base of
modulus P
nu1CnsBase nu1 I Crypto
RAM
u2ScalarLength
+ 12
Base of Cns Base of Cns
u2ModLength u2 I Length of
modulus P
Length of
modulus P
SAM D5x/E5x Family Data Sheet
Public Key Cryptography Controller (PUKCC)
© 2019 Microchip Technology Inc.
Datasheet
DS60001507E-page 1561