Cryptography and network security principles and practices - Stallings (Prentice Hall PTR, 2006)