aboutsummaryrefslogtreecommitdiffstats
path: root/arduino/libraries/BLEHomekit/src/crypto/srp/srp.h
diff options
context:
space:
mode:
authorClyne Sullivan <tullivan99@gmail.com>2019-02-28 17:04:22 -0500
committerClyne Sullivan <tullivan99@gmail.com>2019-02-28 17:04:22 -0500
commitd6869d1ec4bd24cd2c3eafa534f0849b25ec5607 (patch)
tree79e54ed27b39c31864895535d11399708d5a45c0 /arduino/libraries/BLEHomekit/src/crypto/srp/srp.h
parent614ee97bf3a2270c413527a7f35c54cbecd9e601 (diff)
added basic code
Diffstat (limited to 'arduino/libraries/BLEHomekit/src/crypto/srp/srp.h')
-rwxr-xr-xarduino/libraries/BLEHomekit/src/crypto/srp/srp.h54
1 files changed, 54 insertions, 0 deletions
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_ */