Cryptography and network security Principles and practice - Stallings William (Prentice Hall, 1999)