Datasheet

Table Of Contents
43.3.7.3.2 How to Use the Service
43.3.7.3.3 Description
The operation performed is:
Pt
C
= 2 × Pt
A
In this computation, the following parameters need to be provided:
A the input point is filled in projective coordinates (X,Y,Z) (pointed by {nu1PointABase,
3*u2ModLength + 12}). This point can be the Infinite Point.
Cns the Fast Modular Constant filled (pointed by {nu1CnsBase,u2ModLength +8})
P the modulus filled (pointed by {nu1ModBase,u2ModLength +4})
The workspace not initialized (pointed by {nu1WorkSpace, 4*u2ModLength +28}
The a and b Parameters relative to the Elliptic Curve Equation (pointed by {nu1ABBase,
2*u2ModLength+ 8})
The resulting C point is represented in projective coordinates (X,Y,Z) and is stored at the very same
place than the input point A. This point can be the Infinite Point.
The service name for this operation is GF2NEccDblFast. This service uses Fast mode and Fast Modular
Reduction for computation.
Important:  Before using this service, ensure that the constant Cns has been calculated with
the setup of the Fast Modular Reductions service.
43.3.7.3.4 Parameters Definition
Table 43-96. GF2NEccDblFast 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
u2ModLength + 12 Base of Cns Base of Cns
u2ModLength u2 I Length of
modulus P
Length of
modulus P
nu1ABBase u2 I Crypto
RAM
2*u2ModLength
+ 8
Parameters a
and b of the
elliptic curve
Parameter a and
b of the elliptic
curve
nu1PointABase nu1 I/O Crypto
RAM
3*u2ModLength
+ 12
Input point A
(projective
coordinates)
Resulting point
C (projective
coordinates)
nu1Workspace nu1 I Crypto
RAM
4*u2ModLength
+ 28
Corrupted
workspace
SAM D5x/E5x Family Data Sheet
Public Key Cryptography Controller (PUKCC)
© 2019 Microchip Technology Inc.
Datasheet
DS60001507E-page 1549