RadioShuttle Lib for the STM32 L4 Heltec Board
Dependents: Turtle_RadioShuttle
Diff: RadioSecurity.h
- Revision:
- 0:0c31756924a2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/RadioSecurity.h Wed Feb 06 15:26:48 2019 +0000 @@ -0,0 +1,29 @@ +/* + * The file is licensed under the Apache License, Version 2.0 + * (c) 2019 Helmut Tschemernjak + * 30826 Garbsen (Hannover) Germany + */ + +#include "sha256.h" +#include "aes.h" + +class RadioSecurity : public RadioSecurityInterface { +public: + RadioSecurity(); + virtual ~RadioSecurity(); + virtual int GetSecurityVersion(void); + /* + * The hash block size for SHA256 in bytes + */ + virtual int GetHashBlockSize(void); + virtual void HashPassword(void *seed, int seedLen, void *password, int pwLen, void *hashResult); + + virtual int GetEncryptionBlockSize(void); + virtual void *CreateEncryptionContext(void *key, int keyLen, void *seed = NULL, int seedlen = 0); + virtual void DestroyEncryptionContext(void *context); + virtual void EncryptMessage(void *context, const void *input, void *output, int len); + virtual void DecryptMessage(void *context, const void *input, void *output, int len); + virtual void EncryptTest(void); +private: + static int const _securityVers = 1; +};