]> git.cryptolib.org Git - avr-crypto-lib.git/blobdiff - sha1.h
new hash function abstraction layer + shavs + dump util + ...
[avr-crypto-lib.git] / sha1.h
diff --git a/sha1.h b/sha1.h
index 4f54d88a08d9ebb9bc66b10d87c2500fc40af8bb..c993741ed924cd51c1752386a70b7a011d0d154b 100644 (file)
--- a/sha1.h
+++ b/sha1.h
@@ -1,7 +1,25 @@
+/* sha1.h */
+/*
+    This file is part of the AVR-Crypto-Lib.
+    Copyright (C) 2008  Daniel Otte (daniel.otte@rub.de)
+
+    This program is free software: you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation, either version 3 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*/
 /**
  * \file       sha1.c
  * \author     Daniel Otte
- * \date       08.10.2006
+ * \date       2006-10-08
  * \par License:
  * GPL
  * \brief SHA-1 declaration.
@@ -15,7 +33,9 @@
 
 
 #define SHA1_HASH_BITS  160
+#define SHA1_HASH_BYTES (SHA1_HASH_BITS/8)
 #define SHA1_BLOCK_BITS 512
+#define SHA1_BLOCK_BYTES (SHA1_BLOCK_BITS/8)
 
 /**
  * \brief SHA-1 context type
@@ -31,12 +51,10 @@ typedef uint8_t sha1_hash_t[SHA1_HASH_BITS/8];
 void sha1_init(sha1_ctx_t *state);
 
 void sha1_nextBlock (sha1_ctx_t *state, void* block);
-void sha1_lastBlock (sha1_ctx_t *state, void* block, uint16_t length);
+void sha1_lastBlock (sha1_ctx_t *state, void* block, uint16_t length_b);
 
 void sha1_ctx2hash (sha1_hash_t *dest, sha1_ctx_t *state);
-void sha1 (sha1_hash_t *dest, void* msg, uint32_t length);
-//uint32_t change_endian32(uint32_t x);
-
+void sha1 (sha1_hash_t *dest, void* msg, uint32_t length_b);