Understand the Security of One Time Pad and how to Implement it in Python

What is a One Time Pad? A One Time Pad is a information-theoretical secure encryption function. But what does that mean? On a high level the One Time Pad is a simple XOR function that takes the input and xor’s that with a key-stream. Encryption and decryption are identical. Some requirements of the One Time … Read more

How Caesar Cipher Teaches us the Most Valuable Lesson – Learn Kerckhoff’s Principle in 5 Steps with Python Code

What will we cover? Understand the challenge to send a secret message Understand the Caesar Cipher How to create an implementation of that in Python How to break the Caesar Cipher Understand the importance of Kerckhoff’s Principle Step 1: Understand the challenge to send a secret message In cryptography you have three people involved in … Read more

What is a Substitution Cipher and is it Secure?

What will you learn? What is a Substitution Cipher Imagine you receive this message: IQL WPV WCVJQEV What does it mean? You were told it is a Substitution Cipher, but how will that help you? First of all, we need to understand what a Substitution Cipher is. Basically, it is just rearranging the characters. That … Read more