summaryrefslogtreecommitdiff
path: root/includes/BSHA1.h
diff options
context:
space:
mode:
Diffstat (limited to 'includes/BSHA1.h')
-rw-r--r--includes/BSHA1.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/includes/BSHA1.h b/includes/BSHA1.h
new file mode 100644
index 0000000..f70f6b7
--- /dev/null
+++ b/includes/BSHA1.h
@@ -0,0 +1,24 @@
+#pragma once
+
+#include <Exceptions.h>
+
+namespace Balau {
+
+class SHA1 {
+ public:
+ SHA1() { reset(); }
+ void reset();
+ void update(const uint8_t* data, const size_t len);
+ void final(uint8_t * digest);
+
+ enum { DIGEST_SIZE = 20 };
+
+ private:
+ void transform(uint32_t state[5], const uint8_t buffer[64]);
+
+ uint32_t m_state[5];
+ uint32_t m_count[2];
+ uint8_t m_buffer[64];
+};
+
+};