]> git.cryptolib.org Git - avr-crypto-lib.git/blobdiff - main.dox
+gcm128
[avr-crypto-lib.git] / main.dox
index 199a398cf63e8a1e9b77516c38fdbb1d3b419aef..ce525e3dcd9137f9de861eff0f6e806cb3032dae 100644 (file)
--- a/main.dox
+++ b/main.dox
@@ -1,4 +1,4 @@
-/** \mainpage Documentation for microcrypt-lib
+/** \mainpage Documentation for AVR-Crypto-Lib
  \section Algorithms Available algorithms
  \subsection Stream-ciphers Stream ciphers
   A stream cipher generates a keystream which is normaly XORed with the
    
  \subsection Hashes Hashes
   A Hash function produces a fixed length output (called hash value or message
-  digest) from a variable length message input. 
+  digest) from a variable length message input. Most hash algorithms have a 
+  state which is updated by the hash core function from a block of fixed size 
+  from the message. A "lastBlock" function is used to add the last block which
+  is not required to have the fixed length. An addition function is then used
+  to transform the state into the final hash value.
   
   Implemented hash functions:
    - MD5 (md5.h)
    - SHA-1 (sha1.h)
    - SHA-256 (sha256.h)
+   - Blake
+   - Blue Midnight Wish
+   - Grøstl
+   - Keccak
+   - Shabal
+   - Skein
+   - Twister
    
  \subsection MACs Message-Authentification-Codes (MACs)
+  Message-Authentification-Codes work like hash function but take an additional
+  key. The produced output is also called MAC and is highly dependant on the
+  key. They can be thought of symmetric signatures.
+  
+  Implemented MAC functions:
    - HMAC-SHA-1 (hmac-sha1.h)
    - HMAC-SHA-256 (hmac-sha256.h)
+   
 
  \subsection PRNGs Pseudo-Random-Number-Generators (PRNGs)
+  PRNGs produce pseudo random output determinated by the input. They aim to 
+  produce an arbitrary length of good cryptographically secure random if the
+  input has enough entropy. PRNGs differ in the way they accept input. Some
+  are seeded only once, other (like the implemented) maintain an entropy pool
+  to which input can be added at virtually any time.
+  
+  Implemented PRNGs:
    - Entropium (entropium.h)
    
-*/
\ No newline at end of file
+*/