Signature process:
ECC is first initialized to generate a public/private key pair. Based on ECC signature/VerificationAlgorithm, Together with the ID
The data of the digest operation also includes the elliptic curve parameters and the signatory's public key. Therefore, the algorithm should be executed first.
Ecc_initialize, ecc_genkeypair, or ecc_loadpubkey. Then initialize the Digest algorithm (Sch) with the parameter ID.
This process is called the Getz value;
Then, digest the data to be signed. This process is called the Gete value;
The private key is used to sign the summary data.
Verification process:
Use the public key to decrypt the signature. The result is compared with the E value (the digest value before the signature). If the same value is used, the verification is invalid.
Elliptic Curve parameters include the following:
Prime number P. P with less than 256 bits is filled with 0 at a high position.
Parameter A. If the value of A is less than 256 bits, the value 0 is added at the high position.
Parameter B. The value of B with less than 256 bits is 0 in the upper position
The GX parameter. The value of GX with less than 256 bits is 0 in the upper position.
The parameter Gy. If the value of Gy is less than 256 bits, the value is 0 in the upper bits.
Level N, N with less than 256 digits fills 0 in the high position
The parameter length Len. Len must be 160, 192, 224, or 256.