Fork of François Berder Crypto, fixed AES CBC and small rework
Dependents: AES_example shaun_larada Smartage
Fork of Crypto by
hash/MD4.h@9:e34e076fb223, 2013-09-16 (annotated)
- Committer:
- feb11
- Date:
- Mon Sep 16 08:35:36 2013 +0000
- Revision:
- 9:e34e076fb223
implemented MD4
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
feb11 | 9:e34e076fb223 | 1 | #ifndef MD4_H |
feb11 | 9:e34e076fb223 | 2 | #define MD4_H |
feb11 | 9:e34e076fb223 | 3 | |
feb11 | 9:e34e076fb223 | 4 | #include "HashAlgorithm.h" |
feb11 | 9:e34e076fb223 | 5 | |
feb11 | 9:e34e076fb223 | 6 | class MD4: public HashAlgorithm |
feb11 | 9:e34e076fb223 | 7 | { |
feb11 | 9:e34e076fb223 | 8 | public : |
feb11 | 9:e34e076fb223 | 9 | |
feb11 | 9:e34e076fb223 | 10 | MD4(); |
feb11 | 9:e34e076fb223 | 11 | |
feb11 | 9:e34e076fb223 | 12 | virtual uint8_t outputSize() const; |
feb11 | 9:e34e076fb223 | 13 | virtual void update(uint8_t *data, uint32_t length); |
feb11 | 9:e34e076fb223 | 14 | virtual void finalize(uint8_t *hash); |
feb11 | 9:e34e076fb223 | 15 | |
feb11 | 9:e34e076fb223 | 16 | static void computeHash(uint8_t *hash, uint8_t *data, uint32_t length); |
feb11 | 9:e34e076fb223 | 17 | |
feb11 | 9:e34e076fb223 | 18 | private : |
feb11 | 9:e34e076fb223 | 19 | |
feb11 | 9:e34e076fb223 | 20 | static void computeRounds(uint32_t *a2, uint32_t *b2, uint32_t *c2, uint32_t *d2, uint8_t *buffer); |
feb11 | 9:e34e076fb223 | 21 | |
feb11 | 9:e34e076fb223 | 22 | uint32_t a,b,c,d; |
feb11 | 9:e34e076fb223 | 23 | uint32_t totalBufferLength; |
feb11 | 9:e34e076fb223 | 24 | uint8_t buffer[64]; |
feb11 | 9:e34e076fb223 | 25 | uint8_t bufferLength; |
feb11 | 9:e34e076fb223 | 26 | }; |
feb11 | 9:e34e076fb223 | 27 | |
feb11 | 9:e34e076fb223 | 28 | #endif |