Cracking Codes with Python

An Introduction to Building and Breaking Ciphers



Bookstore > Books > Cracking Codes with Python

Cracking Codes with Python
Price$17.99 - $24.48
Rating
AuthorAl Sweigart
PublisherNo Starch Press
Published2018
Pages424
LanguageEnglish
FormatPaper book / ebook
ISBN-101593278225
ISBN-139781593278229
EBook Hardcover Paperback

Learn how to program in Python while making and breaking ciphers - algorithms used to create and send secret messages!

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

Each 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!

You'll also learn how to: Combine loops, variables, and flow control statements into real working programs; Use dictionary files to instantly detect whether decrypted messages are valid English or gibberish; Create test programs to make sure that your code encrypts and decrypts correctly; Code (and hack!) a working example of the affine cipher, which uses modular arithmetic to encrypt a message; Break ciphers with techniques such as brute-force and frequency analysis.

There's no better way to learn to code than to play with real programs. Cracking Codes with Python makes the learning fun!


  1. (2 books)



Similar Books


OpenCV Computer Vision with Python

OpenCV Computer Vision with Python

Computer Vision can reach consumers in various contexts via webcams, camera phones and gaming sensors like Kinect. OpenCV's Python bindings can help developers meet these consumer demands for applications that capture images, change their appearance and extract information from them, in a high-level language and in a standardized data for...
Learning Selenium Testing Tools with Python

Learning Selenium Testing Tools with Python

Selenium WebDriver is a popular automated testing tool for web applications. Python is one of the top programming languages and when used with Selenium it can automate and test web applications. Using Python's unittest module, you can write test cases in Selenium. Over the years, Selenium has become a very powerful testing platform and ma...
Building Machine Learning Systems with Python, 2nd Edition

Building Machine Learning Systems with Python, 2nd Edition

Using machine learning to gain deeper insights from data is a key skill required by modern application developers and analysts alike. Python is a wonderful language to develop machine learning applications. As a dynamic language, it allows for fast exploration and experimentation. With its excellent collection of open source machine learn...
Internet of Things with Python

Internet of Things with Python

Internet of Things (IoT) is revolutionizing the way devices/things interact with each other. And when you have IoT with Python on your side, you'll be able to build interactive objects and design them.This book lets you stay at the forefront of cutting-edge research on IoT. We'll open up the possibilities using tools that enable you to in...
Programming ArcGIS 10.1 with Python Cookbook

Programming ArcGIS 10.1 with Python Cookbook

ArcGIS is an industry standard geographic information system from ESRI.This book will show you how to use the Python programming language to create geoprocessing scripts, tools, and shortcuts for the ArcGIS Desktop environment.This book will make you a more effective and efficient GIS professional by showing you how to use the Python prog...
Python for Unix and Linux System Administration

Python for Unix and Linux System Administration

Python is an ideal language for solving problems, especially for Linux and Unix. With this pragmatic book, administrators can review various tasks that often occur in the management of these systems, and learn how Python can provide a more efficient way to handle them. Once you finish this book, you'll be able to develop your own set of c...