caed18e741
Signed-off-by: Aditya Deshpande <aditya.deshpande@arm.com> |
||
---|---|---|
.. | ||
p256-m | ||
Makefile.inc | ||
p256-m_driver_entrypoints.c | ||
p256-m_driver_entrypoints.h | ||
README.md |
The files within the p256-m/
subdirectory originate from the p256-m GitHub repository, which is distributed under the Apache 2.0 license. They are authored by Manuel Pégourié-Gonnard. The files p256-m.c
and .h
have been taken from the repository. p256-m is a minimalistic implementation of ECDH and ECDSA on NIST P-256, especially suited to constrained 32-bit environments. Mbed TLS documentation for integrating drivers uses p256-m as an example of a software accelerator, and describes how it can be integrated alongside Mbed TLS.
It should be noted that p256-m does not supply its own cryptographically secure RNG function. An implementation based on rand()
(taken from benchmark.c
in the p256-m repo) has been added to p256-m.c
to support key generation. This means that while key generation will work, p256-m's key generation entry point should not be called in production builds.