From d6869d1ec4bd24cd2c3eafa534f0849b25ec5607 Mon Sep 17 00:00:00 2001 From: Clyne Sullivan <tullivan99@gmail.com> Date: Thu, 28 Feb 2019 17:04:22 -0500 Subject: added basic code --- arduino/libraries/BLEHomekit/src/crypto/srp/srp.h | 54 +++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100755 arduino/libraries/BLEHomekit/src/crypto/srp/srp.h (limited to 'arduino/libraries/BLEHomekit/src/crypto/srp/srp.h') diff --git a/arduino/libraries/BLEHomekit/src/crypto/srp/srp.h b/arduino/libraries/BLEHomekit/src/crypto/srp/srp.h new file mode 100755 index 0000000..7d11bcd --- /dev/null +++ b/arduino/libraries/BLEHomekit/src/crypto/srp/srp.h @@ -0,0 +1,54 @@ +/* + * srp.h + * + * Created on: Jun 10, 2015 + * Author: tim + */ + +#ifndef HOMEKIT_SRP_SRP_H_ +#define HOMEKIT_SRP_SRP_H_ + +#define BIGNUM_BYTES 384 +#define BIGNUM_WORDS (BIGNUM_BYTES / 4) + +#define DEBUG_SRP 0 +#define TEST_APPLE 0 + +typedef struct +{ + uint8_t b[32]; + uint8_t salt[16]; + uint8_t v[384]; + uint8_t B[384]; + + uint8_t K[64]; + uint8_t M1[64]; + uint8_t M2[64]; + + uint8_t clientM1:1; + uint8_t serverM1:1; +} srp_keys_t; + +#ifdef __cplusplus +extern "C" +{ +#endif + +extern srp_keys_t srp; + +typedef void (*moretime_t)(void); + +extern void srp_init(void); +extern void srp_start(void); +extern uint8_t srp_setA(uint8_t* a, uint16_t length, moretime_t moretime); +extern uint8_t srp_checkM1(uint8_t* m1, uint16_t length); +extern uint8_t* srp_getSalt(void); +extern uint8_t* srp_getB(void); +extern uint8_t* srp_getM2(void); +extern uint8_t* srp_getK(void); + +#ifdef __cplusplus +} +#endif + +#endif /* HOMEKIT_SRP_SRP_H_ */ -- cgit v1.2.3