This advent to cryptography employs a programming-oriented method of learn crucial cryptographic schemes in present use and the most cryptanalytic assaults opposed to them. dialogue of the theoretical points, emphasizing designated protection definitions according to methodological instruments resembling complexity and randomness, and of the mathematical elements, with emphasis on number-theoretic algorithms and their purposes to cryptography and cryptanalysis, is built-in with the programming method, therefore delivering implementations of the algorithms and schemes in addition to examples of practical size.

A virtue of the author's technique is using Maple as a programming surroundings within which not only the cryptographic primitives but additionally crucial cryptographic schemes are applied following the suggestions of criteria our bodies corresponding to NIST, with the various recognized cryptanalytic assaults carried out besides. the aim of the Maple implementations is to allow the reader scan and research, and hence the writer comprises quite a few examples. The booklet discusses vital contemporary topics corresponding to homomorphic encryption, identity-based cryptography and elliptic curve cryptography. The algorithms and schemes that are taken care of intimately and applied in Maple comprise AES and modes of operation, CMAC, GCM/GMAC, SHA-256, HMAC, RSA, Rabin, Elgamal, Paillier, Cocks IBE, DSA and ECDSA. additionally, a few lately brought schemes having fun with robust protection houses, reminiscent of RSA-OAEP, Rabin-SAEP, Cramer--Shoup, and PSS, also are mentioned and carried out. at the cryptanalysis part, Maple implementations and examples are used to debate many very important algorithms, together with birthday and man-in-the-middle assaults, integer factorization algorithms equivalent to Pollard's rho and the quadratic sieve, and discrete log algorithms equivalent to baby-step giant-step, Pollard's rho, Pohlig--Hellman and the index calculus method.

This textbook is acceptable for complex undergraduate and graduate scholars of laptop technology, engineering and arithmetic, enjoyable the necessities of varied forms of classes: a uncomplicated introductory path; a theoretically orientated direction whose concentration is at the special definition of safeguard techniques and on cryptographic schemes with reductionist protection proofs; a practice-oriented direction requiring little mathematical heritage and with an emphasis on purposes; or a mathematically complex path addressed to scholars with a better mathematical heritage. the most prerequisite is a simple wisdom of linear algebra and simple calculus, and whereas a few wisdom of chance and summary algebra will be priceless, it's not crucial as the ebook contains the required historical past from those topics and, moreover, explores the number-theoretic fabric intimately. The e-book is additionally a entire reference and is appropriate for self-study via practitioners and programmers.