Algorithm Types
Algorithm applications
-  Confidentiality
-  Block Ciphers: we encrypt several plaintext symbols at once in a block
 -  Stream  Ciphers: the encryption rule depends on a plaintext symbol's position in the stream of plaintext symbols.
 
 -  Authenticity and non repudiation:
-  Hash Functions
 -  Digital Signatures