NimBLE-Arduino 2.1.2
|
– Interface to EC-DH implementation. More...
Go to the source code of this file.
Functions | |
int | uECC_make_key (uint8_t *p_public_key, uint8_t *p_private_key, uECC_Curve curve) |
Create a public/private key pair. | |
int | uECC_shared_secret (const uint8_t *p_public_key, const uint8_t *p_private_key, uint8_t *p_secret, uECC_Curve curve) |
Compute a shared secret given your secret key and someone else's public key. | |
– Interface to EC-DH implementation.
Overview: This software is an implementation of EC-DH. This implementation uses curve NIST p-256.
Security: The curve NIST p-256 provides approximately 128 bits of security.
int uECC_make_key | ( | uint8_t * | p_public_key, |
uint8_t * | p_private_key, | ||
uECC_Curve | curve | ||
) |
Create a public/private key pair.
p_public_key | OUT – Will be filled in with the public key. Must be at least 2 * the curve size (in bytes) long. For curve secp256r1, p_public_key must be 64 bytes long. |
p_private_key | OUT – Will be filled in with the private key. Must be as long as the curve order (for secp256r1, p_private_key must be 32 bytes long). |
int uECC_shared_secret | ( | const uint8_t * | p_public_key, |
const uint8_t * | p_private_key, | ||
uint8_t * | p_secret, | ||
uECC_Curve | curve | ||
) |
Compute a shared secret given your secret key and someone else's public key.
p_secret | OUT – Will be filled in with the shared secret value. Must be the same size as the curve size (for curve secp256r1, secret must be 32 bytes long. |
p_public_key | IN – The public key of the remote party. |
p_private_key | IN – Your private key. |