TAY

Fork of Crypto_light by Edward Stott

Revision:
0:7a1237bd2d13
Child:
5:06cd9c8afa0b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SHA1.h	Sat Sep 07 23:47:28 2013 +0000
@@ -0,0 +1,28 @@
+#ifndef SHA1_H
+#define SHA1_H
+
+#include "HashAlgorithm.h"
+
+
+class SHA1 : public HashAlgorithm
+{
+    public :
+    
+        SHA1();
+        
+        virtual void add(uint8_t *in, uint32_t length);
+        virtual void computeDigest(uint8_t *out);
+        virtual uint8_t outputSize() const;
+        
+        static void computeDigest(uint8_t *digest, uint8_t *in, uint32_t length);
+        
+    private :
+        static void computeBlock(uint32_t *h02, uint32_t *h12, uint32_t *h22, uint32_t *h32, uint32_t *h42, uint8_t *buffer);
+    
+        uint32_t h0, h1, h2, h3, h4;
+        uint32_t totalBufferLength;
+        uint8_t buffer[64];
+        uint8_t bufferLength;       
+};
+
+#endif