Hands-On Cryptography with Python

Leverage the power of Python to encrypt and decrypt data 

Samuel Bowne

What this book covers

Chapter 1, Obfuscation, covers the Caesar cipher and ROT13, simple character
substitution ciphers, and base64 encoding. We then move on to XOR. In the end,
there are challenges to test your learning that involve cracking the Caesar
cipher, reversing base64 encoding, and deciphering XOR encryption without the key.
Chapter 2, Hashing, covers the older MD5 and the newer SHA hashing techniques
and also Windows password hashes. The weakest type of hashing is common
use, followed by Linux password hashes, which are the strongest type of hashing
in common use. Afterward, there are some challenges to complete. The first is to
crack some Windows hashes and recover passwords, then you will be tasked
with cracking hashes where you don't even know how many rounds of hashing
algorithm were used, and finally you will be asked to crack those strong Linux hashes.
Chapter 3, Strong Encryption, covers the primary mode used to hide data today. It
is strong enough for the US military. Then, there are two of its modes, ECB and
CBC; CBC being the stronger and more common one. We will also discuss the
padding oracle attack, which makes it possible to overcome some parts of AES
CBC if the designer makes an error and the overly informative error message
gives information to the attacker. Finally, we introduce RSA, the main public
key algorithm used today, which makes it possible to send secrets over an
insecure channel without having exchanged a gives private key. Following all
that, we will perform a challenge where, we will crack RSA in the case where it
is erroneously created with two similar prime numbers instead of two random prime numbers.

e-books shop
e-books shop
Purchase Now !
Just with Paypal

Book Details
 2.00 USD
 124 p
 File Size
 5,856 KB
 File Type
 PDF format
 2018 Packt Publishing 

About the Author
Sam Bowne has been teaching computer networking and security classes at City
College of San Francisco since 2000. He has given talks and hands-on training at
DEFCON, HOPE, B-Sides SF, B-Sides LV, BayThreat, LayerOne, Toorcon, and
many other schools and conferences. He has done his PhD and CISSP. He is a
DEF CON Black-Badge co-winner.

Cryptography has a long and important history in protecting critical systems and
sensitive information. This book will show you how to encrypt, evaluate,
compare, and attack data using Python. Overall, the book will help you deal with
the common errors in encryption and show you how to exploit them.

Who this book is for
This book is intended for security professionals who want to learn how to
encrypt data, evaluate and compare encryption methods, and how to attack them.

Table of Contents
Title Page
Copyright and Credits
Hands-On Cryptography with Python
Packt Upsell
Why subscribe?
About the author
Packt is searching for authors like you
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
1. Obfuscation
About cryptography
Installing and setting up Python
Using Python on Mac or Linux
Installing Python on Windows
Caesar cipher and ROT13
Implementing the Caesar cipher in Python
base64 encoding
ASCII data
Binary data
Challenge 1 – the Caesar cipher
Challenge 2 – base64
Challenge 3 – XOR
2. Hashing
MD5 and SHA hashes
What are hashes?
Windows password hashes
Getting hashes with Cain
MD4 and Unicode
Cracking hashes with Google
Cracking hashes with wordlists
Linux password hashes
Challenge 1 – cracking Windows hashes
Challenge 2 – cracking many-round hashes
Challenge 3 – cracking Linux hashes
3. Strong Encryption
Strong encryption with AES
ECB and CBC modes
Padding oracle attack
Strong encryption with RSA
Public key encryption
RSA algorithm
Implementation in Python
Challenge – cracking RSA with similar factors
Large integers in Python
What's next?
Cryptography within IoT
ZigBee cryptographic keys
Complexity of ZigBee key management
Bluetooth – LE
Other Books You May Enjoy
Leave a review - let other readers know what you think

e-books shop

To get the most out of this book
You do not need to have programming experience or any special computer. Any
computer that can run Python can do these projects, and you don't need much
math because we'll not be inventing new encryption techniques just to learn how
to use the pre-existing standard ones that don't require anything more than very
basic algebra.
DMCA.com Protection Status