Cryptography. Principles and realization
People began to feel the need to hide information from one another a long time ago, but today cryptography means a lot more than just text encryption; it is based on mathematical problems and depends on their computational hardness. And since computers get more evolved and fast, the cryptographic algorithms also need to be improved, so the interest in this widely used field is constant and many books are written on this subject.NEWLINENEWLINEThis book, in a second edition, contains a detailed overview of cryptographic principles and their implementations. By following its content, a large variety of concepts covering information security can be identified. So, after an introductory chapter, the second chapter presents public-key cryptography. It explains the RSA, ElGamal and Rabin algorithms, giving for each of them the mathematical function they are based on, the encryption and decryption schemes (in words and sometimes also using figures), some possible types of attack and their rate of success influenced by the length of the keys. Next, digital signature schemes using ElGamal, RSA, DSA and its elliptic curve variant ECDSA are described. A main problem of public-keys management is the need of storing and administrating them. The book presents the Diffie-Hellman key exchange method, followed by the description of blind signature and authentication problems (zero-knowledge proof, Feige-Fiat-Shamir identification scheme, Schnorr identification, commitment scheme, secret sharing of the Shamir scheme).NEWLINENEWLINEChapter 3 presents private-key cryptography, also known as symmetric-key cryptography. There are two types of algorithms: stream ciphers and block ciphers. The DES and AES algorithms are described, along with possible methods of breaking them (brute force attack, last round attack, differential cryptanalysis, linear cryptanalysis, interpolation cryptanalysis). The hash functions and their usage (message authentication code, SHA) finalize the chapter.NEWLINENEWLINEThe fourth chapter introduces various methods of implementing the cryptographic primitives discussed in the previous sections (electronic certificates, key infrastructure and management, confidence levels, secure protocols and WEB -- as an example of bad usage of cryptography).NEWLINENEWLINEThe next chapter is dedicated to a different area, closely related to error detection and correction codes (syndrome decoding problem, algorithms of Lee-Brickell, Leon, J. Stern, Canteau-Chabaud and their efficiency, G-SD identification scheme, pseudo-random generators, Mc Eliece cryptosystem, Goppa codes, secret sharing).NEWLINENEWLINEThe last two chapters (6 and 7) describe the security of cryptographic systems and side-channel attacks.NEWLINENEWLINEMaybe it would have been helpful to include some numerical examples and then apply the algorithms to them, but given the length of the book and the numerous references and internet resources mentioned, the reader should have no difficulties to understand the notions.NEWLINENEWLINEFinally, an extensive appendix contains fundamental mathematical concepts and notations used throughout the text.NEWLINENEWLINEThis book is well structured and all the explanations are clear and easy to follow. There are not too many theorems or proofs (a good thing for beginners to this field), but there are many ``technical'' details regarding the standardization process (helpful for those who need more information from official sources). In my opinion, this book represents a good way to begin the study of cryptography, but it is also useful when one tries to review some of the forgotten information, and offers a good balance of theory and practice, being an excellent support for students and practitioners.NEWLINENEWLINEFor the first edition see Zbl 1110.94025.
scientific article; zbMATH DE number 6043130