{"product_id":"cracking-codes-with-python-isbn-9781593278229","title":"Cracking Codes with Python","description":"Learn how to program in Python while making and breaking ciphers—algorithms used to create and send secret messages! \u003cbr\u003e\u003cbr\u003eAfter a crash course in Python programming basics, you’ll learn to make, test, and hack programs that encrypt text with classical ciphers like the transposition cipher and Vigenère cipher. You’ll begin with simple programs for the reverse and Caesar ciphers and then work your way up to public key cryptography, the type of encryption used to secure today’s online transactions, including digital signatures, email, and Bitcoin.\u003cbr\u003e\u003cbr\u003eEach program includes the full code and a line-by-line explanation of how things work. By the end of the book, you’ll have learned how to code in Python and you’ll have the clever programs to prove it!\u003cbr\u003e\u003cbr\u003eYou’ll also learn how to:\u003cbr\u003e\u003cbr\u003e- Combine loops, variables, and flow control statements into real working programs\u003cbr\u003e- Use dictionary files to instantly detect whether decrypted messages are valid English or gibberish\u003cbr\u003e- Create test programs to make sure that your code encrypts and decrypts correctly\u003cbr\u003e- Code (and hack!) a working example of the affine cipher, which uses modular arithmetic to encrypt a message\u003cbr\u003e- Break ciphers with techniques such as brute-force and frequency analysis\u003cbr\u003e\u003cbr\u003eThere’s no better way to learn to code than to play with real programs. \u003ci\u003eCracking Codes with Python\u003c\/i\u003e makes the learning fun!\u003cb\u003eIntroduction\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e\u003cb\u003eChapter 1:\u003c\/b\u003e Making Paper Cryptography Tools\u003cbr\u003e\u003cb\u003eChapter 2: \u003c\/b\u003eInstalling Python\u003cbr\u003e\u003cb\u003eChapter 3: \u003c\/b\u003eThe Interactive Shell\u003cbr\u003e\u003cb\u003eChapter 4: \u003c\/b\u003eStrings and Writing Programs\u003cbr\u003e\u003cb\u003eChapter 5:\u003c\/b\u003e The Reverse Cipher\u003cbr\u003e\u003cb\u003eChapter 6: \u003c\/b\u003eThe Caesar Cipher\u003cbr\u003e\u003cb\u003eChapter 7:\u003c\/b\u003e Hacking the Caesar Cipher with the Brute-Force Technique\u003cbr\u003e\u003cb\u003eChapter 8: \u003c\/b\u003eEncrypting with the Transposition Cipher\u003cbr\u003e\u003cb\u003eChapter 9: \u003c\/b\u003eDecrypting with the Transposition Cipher\u003cbr\u003e\u003cb\u003eChapter 10:\u003c\/b\u003e Programming a Program to Test Our Program\u003cbr\u003e\u003cb\u003eChapter 11: \u003c\/b\u003eEncrypting and Decrypting Files\u003cbr\u003e\u003cb\u003eChapter 12: \u003c\/b\u003eDetecting English Programmatically\u003cbr\u003e\u003cb\u003eChapter 13: \u003c\/b\u003eHacking the Transposition Cipher\u003cbr\u003e\u003cb\u003eChapter 14:\u003c\/b\u003e Making a Modular Arithmetic Module for the Multiplicative and Affine Ciphers\u003cbr\u003e\u003cb\u003eChapter 15: \u003c\/b\u003eProgramming the Affine Cipher\u003cbr\u003e\u003cb\u003eChapter 16: \u003c\/b\u003eHacking the Affine Cipher\u003cbr\u003e\u003cb\u003eChapter 17: \u003c\/b\u003eThe Simple Substitution Cipher\u003cbr\u003e\u003cb\u003eChapter 18: \u003c\/b\u003eHacking the Simple Substitution Cipher\u003cbr\u003e\u003cb\u003eChapter 19: \u003c\/b\u003eThe Vigenere Cipher\u003cbr\u003e\u003cb\u003eChapter 20: \u003c\/b\u003eFrequency Analysis\u003cbr\u003e\u003cb\u003eChapter 21: \u003c\/b\u003eHacking the Viginere Cipher\u003cbr\u003e\u003cb\u003eChapter 22:\u003c\/b\u003e The One-Time Pad Cipher\u003cbr\u003e\u003cb\u003eChapter 23:\u003c\/b\u003e Finding Prime Numbers\u003cbr\u003e\u003cb\u003eChapter 24:\u003c\/b\u003e Generating Keys for the RSA Cipher\u003cbr\u003e\u003cb\u003eChapter 25:\u003c\/b\u003e Public Key Cryptography and Programming the RSA Cipher\u003cbr\u003e\u003cb\u003e\u003cbr\u003eAppendix:\u003c\/b\u003e Debugger“Definitely worth the read even as an experienced Python developer. I learned more about cryptography and even a few new Python tricks.”\u003cbr\u003e—Ray Doyle, \u003cb\u003eThe Ethical Hacker Network\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e“I recommend this book for anyone who wants to learn Python\/programming and is interested in security or puzzles.”\u003cbr\u003e—Jeanne Boyarsky, \u003cb\u003eCode Ranch\u003c\/b\u003e\u003cbr\u003e\u003cbr\u003e“A fantastic programming and cryptography course for any high school-aged child.”\u003cbr\u003e\u003cb\u003e—The Old Schoolhouse Magazine\u003cbr\u003e\u003c\/b\u003e\u003cb\u003eAl Sweigart\u003c\/b\u003e is a professional software developer who teaches programming to kids and adults. He is the author of Automate the Boring Stuff with Python, Invent Your Own Computer Games with Python, and Scratch Programming Playground, also from No Starch Press. His programming tutorials can be found at inventwithpython.com.","brand":"No Starch Press","offers":[{"title":"Default Title","offer_id":46301316088037,"sku":"NP9781593278229","price":39.99,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1842\/7735\/files\/9781593278229.jpg?v=1767724198","url":"https:\/\/k12savings.com\/es\/products\/cracking-codes-with-python-isbn-9781593278229","provider":"K12savings","version":"1.0","type":"link"}