This library implements some hash and cryptographic algorithms.
Dependents: ES_CW2_Starter_JIN EMBEDDED_CW2 EMBEDDED_CW2_Final Spinnybois ... more
Fork of Crypto by
cipher/Cipher.h@15:634f9c4cbab1, 2018-03-09 (annotated)
- Committer:
- estott
- Date:
- Fri Mar 09 10:10:16 2018 +0000
- Revision:
- 15:634f9c4cbab1
- Parent:
- 8:a090264e9b2d
Reduced flash footprint by removing __forceinline directive in SHA2_32.c
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
feb11 | 0:7a1237bd2d13 | 1 | #ifndef CIPHER_H |
feb11 | 0:7a1237bd2d13 | 2 | #define CIPHER_H |
feb11 | 0:7a1237bd2d13 | 3 | |
feb11 | 0:7a1237bd2d13 | 4 | #include <stdint.h> |
feb11 | 0:7a1237bd2d13 | 5 | |
feb11 | 0:7a1237bd2d13 | 6 | enum CIPHER_TYPE |
feb11 | 0:7a1237bd2d13 | 7 | { |
feb11 | 0:7a1237bd2d13 | 8 | STREAM_CIPHER, |
feb11 | 0:7a1237bd2d13 | 9 | BLOCK_CIPHER |
feb11 | 0:7a1237bd2d13 | 10 | }; |
feb11 | 0:7a1237bd2d13 | 11 | |
feb11 | 0:7a1237bd2d13 | 12 | class Cipher |
feb11 | 0:7a1237bd2d13 | 13 | { |
feb11 | 0:7a1237bd2d13 | 14 | public : |
feb11 | 0:7a1237bd2d13 | 15 | |
feb11 | 0:7a1237bd2d13 | 16 | virtual ~Cipher(); |
feb11 | 0:7a1237bd2d13 | 17 | |
feb11 | 0:7a1237bd2d13 | 18 | virtual void encrypt(uint8_t *out, uint8_t *in, uint32_t length) = 0; |
feb11 | 0:7a1237bd2d13 | 19 | virtual void decrypt(uint8_t *out, uint8_t *in, uint32_t length) = 0; |
feb11 | 0:7a1237bd2d13 | 20 | |
feb11 | 8:a090264e9b2d | 21 | virtual CIPHER_TYPE getType() const = 0; |
feb11 | 0:7a1237bd2d13 | 22 | |
feb11 | 0:7a1237bd2d13 | 23 | }; |
feb11 | 0:7a1237bd2d13 | 24 | |
feb11 | 0:7a1237bd2d13 | 25 | |
feb11 | 0:7a1237bd2d13 | 26 | #endif |