Cryptography

Software ECC


Overview
The Software ECC is a secure cryptographic library providing the main ECDSA and ECDH functionalities.

Specifications


Benefits

ANSI & NIST compliant
ASM-optimized core functions
Hardened against SCA
Configurable architecture
Hardware acceleration ready


Features

All ANSI standard curves supported
All NIST standard curves supported
ECDSA key generation, signature and verification
ECDH key generation and common key functions
Core functions ASM-optimized for the targeted processor
State-of-the-art countermeasures against SPA, DPA and DFA attacks
Configurable architecture:

  • adjustable trade-off between performance and RAM footprint
  • ​dedicated hardware accelerator available separately (PK2C)

Typical code size on Cortex-M3: 20 kbytes
Less than 25 Mcycles to compute a secured 256-bit ECDSA signature verification
Low RAM footprint (1.2 kbytes for a secured 256-bit ECDSA signature verification)
Contactless protocols are supported down to 25 MHz (using PK2C accelerator)​


Deliverables

C source codes
Assembly source codes
C test vectors
Compilation scripts (makefile)
Documents for certifications (FIPS, CC, EMV...):

  • list of countermeasures with references
  • ​implementation details

​Design specification​