000 05156nam a22005055i 4500
001 978-3-642-32166-5
003 DE-He213
005 20200421111700.0
007 cr nn 008mamaa
008 121227s2013 gw | s |||| 0|eng d
020 _a9783642321665
_9978-3-642-32166-5
024 7 _a10.1007/978-3-642-32166-5
_2doi
050 4 _aQA76.9.D35
072 7 _aUMB
_2bicssc
072 7 _aURY
_2bicssc
072 7 _aCOM031000
_2bisacsh
082 0 4 _a005.74
_223
100 1 _aG�omez Pardo, Jos�e Luis.
_eauthor.
245 1 0 _aIntroduction to Cryptography with Maple
_h[electronic resource] /
_cby Jos�e Luis G�omez Pardo.
264 1 _aBerlin, Heidelberg :
_bSpringer Berlin Heidelberg :
_bImprint: Springer,
_c2013.
300 _aXXX, 706 p.
_bonline resource.
336 _atext
_btxt
_2rdacontent
337 _acomputer
_bc
_2rdamedia
338 _aonline resource
_bcr
_2rdacarrier
347 _atext file
_bPDF
_2rda
505 0 _aPreface -- Introduction -- Chap. 1 Classical Ciphers -- Chap. 2 Basic Concepts -- Chap. 3 Private-Key Encryption -- Chap. 4 Block Ciphers and Modes of Operation -- Chap. 5 Message Authentication -- Chap. 6 Algorithmic Number - Theory for Cryptography -- Chap. 7 Introduction to Public-Key Cryptography -- Chap. 8 Public-Key Encryption -- Chap. 9 Digital Signatures -- Chap. 10 Identity-Based Cryptography -- Chap. 11 Elliptic Curve Cryptography -- App. A Some Maple Conversion Functions -- Acronyms -- References -- Index.
520 _aThis introduction to cryptography employs a programming-oriented approach to study the most important cryptographic schemes in current use and the main cryptanalytic attacks against them. Discussion of the theoretical aspects, emphasizing precise security definitions based on methodological tools such as complexity and randomness, and of the mathematical aspects, with emphasis on number-theoretic algorithms and their applications to cryptography and cryptanalysis, is integrated with the programming approach, thus providing implementations of the algorithms and schemes as well as examples of realistic size. A distinctive feature of the author's approach is the use of Maple as a programming environment in which not just the cryptographic primitives but also the most important cryptographic schemes are implemented following the recommendations of standards bodies such as NIST, with many of the known cryptanalytic attacks implemented as well. The purpose of the Maple implementations is to let the reader experiment and learn, and for this reason the author includes numerous examples. The book discusses important recent subjects such as homomorphic encryption, identity-based cryptography and elliptic curve cryptography. The algorithms and schemes which are treated in detail and implemented in Maple include AES and modes of operation, CMAC, GCM/GMAC, SHA-256, HMAC, RSA, Rabin, Elgamal, Paillier, Cocks IBE, DSA and ECDSA. In addition, some recently introduced schemes enjoying strong security properties, such as RSA-OAEP, Rabin-SAEP, Cramer--Shoup, and PSS, are also discussed and implemented. On the cryptanalysis side, Maple implementations and examples are used to discuss many important algorithms, including birthday and man-in-the-middle attacks, integer factorization algorithms such as Pollard's rho and the quadratic sieve, and discrete log algorithms such as baby-step giant-step, Pollard's rho, Pohlig--Hellman and the index calculus method. This textbook is suitable for advanced undergraduate and graduate students of computer science, engineering and mathematics, satisfying the requirements of various types of courses: a basic introductory course; a theoretically oriented course whose focus is on the precise definition of security concepts and on cryptographic schemes with reductionist security proofs; a practice-oriented course requiring little mathematical background and with an emphasis on applications; or a mathematically advanced course addressed to students with a stronger mathematical background. The main prerequisite is a basic knowledge of linear algebra and elementary calculus, and while some knowledge of probability and abstract algebra would be helpful, it is not essential because the book includes the necessary background from these subjects and, furthermore, explores the number-theoretic material in detail. The book is also a comprehensive reference and is suitable for self-study by practitioners and programmers.  .
650 0 _aComputer science.
650 0 _aSoftware engineering.
650 0 _aData structures (Computer science).
650 0 _aAlgebra.
650 0 _aNumber theory.
650 1 4 _aComputer Science.
650 2 4 _aData Structures, Cryptology and Information Theory.
650 2 4 _aNumber Theory.
650 2 4 _aSoftware Engineering/Programming and Operating Systems.
650 2 4 _aAlgebra.
710 2 _aSpringerLink (Online service)
773 0 _tSpringer eBooks
776 0 8 _iPrinted edition:
_z9783642321658
856 4 0 _uhttp://dx.doi.org/10.1007/978-3-642-32166-5
912 _aZDB-2-SCS
942 _cEBK
999 _c54955
_d54955