This library implements some hash and cryptographic algorithms.

Dependents:   ES_CW2_Starter_JIN EMBEDDED_CW2 EMBEDDED_CW2_Final Spinnybois ... more

Fork of Crypto by Francois Berder

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?

UserRevisionLine numberNew 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