Cracking Codes with Python
Al Sweigart is a professional software developer who teaches both children and adults how to code. He is the No Starch Press author of Automate the Boring Stuff with Python, Invent Your Own Computer Games with Python, and Scratch Programming Playground. Inventwithpython.com hosts his programming tutorials.
Learn Python programming while creating and breaking ciphers—algorithms used to create and send encrypted messages!
Following a crash course in Python programming fundamentals, you'll learn to create, test, and hack programs that encrypt text using classical ciphers such as the transposition cipher and Vigenère cipher. You'll start with simple programs for the reverse and Caesar ciphers and progress to public key cryptography, which is used to secure today's online transactions such as digital signatures, email, and Bitcoin.
Each program includes the complete source code as well as a line-by-line explanation of how things work. You'll have learned how to code in Python by the end of Cracking Codes with Python, and you'll have the clever programs to prove it!
You'll also discover how to:
- Construct real-world programs by combining loops, variables, and flow control statements.
- Use dictionary files to determine whether decrypted messages are valid English or gibberish in real time.
- Create test programs to ensure that your code correctly encrypts and decrypts.
- Code (and hack!) a working example of the affine cipher, which encrypts a message using modular arithmetic
- Break ciphers using brute-force and frequency analysis techniques.
Playing with real programs is the best way to learn to code. Cracking Codes with Python makes learning enjoyable!
Author: Al Sweigart
Link to buy: https://www.amazon.com/Cracking-Codes-Python-Introduction-Building/dp/1593278225
Ratings: 4.7 out of 5 stars (from 363 reviews)
Best Sellers Rank: #98,693 in Books
#56 in Computer Hacking
#88 in Python Programming
#112 in Software Development (Books)