History: enc_ecc

This page describes all changes made to the enc_ecc package, Elliptic Curve Cryptography (ECC), since its release.


1.13 (2021-01-22, 8:50):

  • Added buffer length check to secure module for incorrect input keys.

1.12 (2020-11-13, 13:06):

  • Added public API for ECC octet decompression.
  • Added ECC compression test code in test_ecc_decomp.c file.

1.11 (2020-10-30, 18:55):

  • Added configuration option to force word level alignment.
  • Added configuration option to disable all the curves except the 256R1. This option can be used to reduce the required memory space.

1.10 (2020-08-10, 08:30):

  • Added ECDSA OID lengths.
  • Fixed setting of S length in ECDSA signature.
  • Removed unnecessary include to api_enc_sw_edh.h.

1.9 (2019-12-09, 13:15):

  • Fixed compilation warnings.

1.8r2 (2018-08-29, 18:12):

  • Document HTML link added to the documentation folder.
  • History and document files renamed to the package name

1.8 (2018-08-06, 10:00):

  • Corrected use of PSP_RD_32BITARRAY_OFFSET functions for Big Endian mode.
  • Corrected copy of Random value for ECDSA to be correct for Big Endian mode.
  • Corrected checking of output length in ecc_point_to_octet().
  • Added extra tests to check special reduction functions for SECP256r1, SECP384r1, and SECP521r1.

1.7 (2018-01-31, 15:00):

  • Added algorithm test suite (modved from enc_test).
  • Added missing variable casting.

1.6r2 (2017-06-08, 09:00):

  • Updated history file with release date.

1.6 (2017-06-06, 13:00):

  • Added OID for ECDSA_SHA384, ECDSA_SHA512.
  • Added include ecc_nist.h to ecc_nist.c. This removed warning messages about functions without declaration.


  • Corrected ECDSA signing (added clearing of intermediate buffers before use).
  • Added checking if configured buffer length is large enough for used elliptic curve.


  • Corrected compilation warnings: potentially uninitialized local variable.


  • Corrected compilation warnings.


  • Moved type definitions from API file to ecc.h.
  • Added correction of key length generated by ECDH.
  • Added functions for adding/doubling point in Jacobian coordinates.
  • Added reduction functions for curves: SECP256R1, SECP384R1, SECP521R1, SECP192R1, SECP224R1.


  • Initial release of ECDH and ECDSA.