Understanding Cryptography by Christof Paar & Jan Pelzl