Introduction to Cryptography with Maple


Book Description

This 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.




Introduction to Cryptography


Book Description

This text is for a course in cryptography for advanced undergraduate and graduate students. Material is accessible to mathematically mature students having little background in number theory and computer programming. Core material is treated in the first eight chapters on areas such as classical cryptosystems, basic number theory, the RSA algorithm, and digital signatures. The remaining nine chapters cover optional topics including secret sharing schemes, games, and information theory. Appendices contain computer examples in Mathematica, Maple, and MATLAB. The text can be taught without computers.




An Introduction to Mathematical Cryptography


Book Description

This self-contained introduction to modern cryptography emphasizes the mathematics behind the theory of public key cryptosystems and digital signature schemes. The book focuses on these key topics while developing the mathematical tools needed for the construction and security analysis of diverse cryptosystems. Only basic linear algebra is required of the reader; techniques from algebra, number theory, and probability are introduced and developed as required. This text provides an ideal introduction for mathematics and computer science students to the mathematical foundations of modern cryptography. The book includes an extensive bibliography and index; supplementary materials are available online. The book covers a variety of topics that are considered central to mathematical cryptography. Key topics include: classical cryptographic constructions, such as Diffie–Hellmann key exchange, discrete logarithm-based cryptosystems, the RSA cryptosystem, and digital signatures; fundamental mathematical tools for cryptography, including primality testing, factorization algorithms, probability theory, information theory, and collision algorithms; an in-depth treatment of important cryptographic innovations, such as elliptic curves, elliptic curve and pairing-based cryptography, lattices, lattice-based cryptography, and the NTRU cryptosystem. The second edition of An Introduction to Mathematical Cryptography includes a significant revision of the material on digital signatures, including an earlier introduction to RSA, Elgamal, and DSA signatures, and new material on lattice-based signatures and rejection sampling. Many sections have been rewritten or expanded for clarity, especially in the chapters on information theory, elliptic curves, and lattices, and the chapter of additional topics has been expanded to include sections on digital cash and homomorphic encryption. Numerous new exercises have been included.







Introduction to Modern Cryptography


Book Description

Now the most used texbook for introductory cryptography courses in both mathematics and computer science, the Third Edition builds upon previous editions by offering several new sections, topics, and exercises. The authors present the core principles of modern cryptography, with emphasis on formal definitions, rigorous proofs of security.




A Classical Introduction to Cryptography


Book Description

A Classical Introduction to Cryptography: Applications for Communications Security introduces fundamentals of information and communication security by providing appropriate mathematical concepts to prove or break the security of cryptographic schemes. This advanced-level textbook covers conventional cryptographic primitives and cryptanalysis of these primitives; basic algebra and number theory for cryptologists; public key cryptography and cryptanalysis of these schemes; and other cryptographic protocols, e.g. secret sharing, zero-knowledge proofs and undeniable signature schemes. A Classical Introduction to Cryptography: Applications for Communications Security is designed for upper-level undergraduate and graduate-level students in computer science. This book is also suitable for researchers and practitioners in industry. A separate exercise/solution booklet is available as well, please go to www.springeronline.com under author: Vaudenay for additional details on how to purchase this booklet.




Applications of Abstract Algebra with Maple and MATLAB, Second Edition


Book Description

Eliminating the need for heavy number-crunching, sophisticated mathematical software packages open the door to areas like cryptography, coding theory, and combinatorics that are dependent on abstract algebra. Applications of Abstract Algebra with Maple and MATLAB®, Second Edition explores these topics and shows how to apply the software programs to abstract algebra and its related fields. Carefully integrating MapleTM and MATLAB®, this book provides an in-depth introduction to real-world abstract algebraic problems. The first chapter offers a concise and comprehensive review of prerequisite advanced mathematics. The next several chapters examine block designs, coding theory, and cryptography while the final chapters cover counting techniques, including Pólya's and Burnside's theorems. Other topics discussed include the Rivest, Shamir, and Adleman (RSA) cryptosystem, digital signatures, primes for security, and elliptic curve cryptosystems. New to the Second Edition Three new chapters on Vigenère ciphers, the Advanced Encryption Standard (AES), and graph theory as well as new MATLAB and Maple sections Expanded exercises and additional research exercises Maple and MATLAB files and functions available for download online and from a CD-ROM With the incorporation of MATLAB, this second edition further illuminates the topics discussed by eliminating extensive computations of abstract algebraic techniques. The clear organization of the book as well as the inclusion of two of the most respected mathematical software packages available make the book a useful tool for students, mathematicians, and computer scientists.




Introduction to Number Theory


Book Description

One of the oldest branches of mathematics, number theory is a vast field devoted to studying the properties of whole numbers. Offering a flexible format for a one- or two-semester course, Introduction to Number Theory uses worked examples, numerous exercises, and two popular software packages to describe a diverse array of number theory topi




Maple in Mathematics Education and Research


Book Description

This book constitutes the refereed proceedings of the third Maple Conference, MC 2019, held in Waterloo, Ontario, Canada, in October 2019. The 21 revised full papers and 9 short papers were carefully reviewed and selected out of 37 submissions, one invited paper is also presented in the volume. The papers included in this book cover topics in education, algorithms, and applciations of the mathematical software Maple.




Applications of Abstract Algebra with MAPLE


Book Description

The mathematical concepts of abstract algebra may indeed be considered abstract, but its utility is quite concrete and continues to grow in importance. Unfortunately, the practical application of abstract algebra typically involves extensive and cumbersome calculations-often frustrating even the most dedicated attempts to appreciate and employ its intricacies. Now, however, sophisticated mathematical software packages help obviate the need for heavy number-crunching and make fields dependent on the algebra more interesting-and more accessible. Applications of Abstract Algebra with Maple opens the door to cryptography, coding, Polya counting theory, and the many other areas dependent on abstract algebra. The authors have carefully integrated Maple V throughout the text, enabling readers to see realistic examples of the topics discussed without struggling with the computations. But the book stands well on its own if the reader does not have access to the software. The text includes a first-chapter review of the mathematics required-groups, rings, and finite fields-and a Maple tutorial in the appendix along with detailed treatments of coding, cryptography, and Polya theory applications. Applications of Abstract Algebra with Maple packs a double punch for those interested in beginning-or advancing-careers related to the applications of abstract algebra. It not only provides an in-depth introduction to the fascinating, real-world problems to which the algebra applies, it offers readers the opportunity to gain experience in using one of the leading and most respected mathematical software packages available.