Implementing a Simple Data Encryption Algorithm Using Caesar Cipher in Python
This tutorial explains the fundamentals of data encryption, introduces the concept of differential privacy, and guides you through implementing and testing a simple Caesar Cipher encryption and decryption algorithm in Python, complete with code examples and execution instructions.
Goal : Understand the basic concepts of data encryption and implement a simple encryption algorithm.
Learning Content : Data encryption is the process of converting plaintext into ciphertext to prevent unauthorized access. Differential privacy is a technique that adds noise to data to protect individual privacy.
Practice : We will implement a Caesar Cipher, a basic symmetric substitution cipher, in Python. No external libraries are required.
Step 1 – Install Required Libraries : Ensure Python is installed; the implementation uses only the standard library.
Step 2 – Implement Caesar Cipher Encryption :
def caesar_cipher_encrypt(text, shift):
"""Encrypt text using Caesar Cipher.
Args:
text (str): plaintext to encrypt
shift (int): number of positions to shift each letter
Returns:
str: ciphertext
"""
encrypted_text = ""
for char in text:
if char.isalpha(): # letter
shift_amount = shift % 26 # only 26 letters
if char.islower():
new_char = chr(((ord(char) - ord('a') + shift_amount) % 26) + ord('a'))
else:
new_char = chr(((ord(char) - ord('A') + shift_amount) % 26) + ord('A'))
else:
new_char = char # non‑letter characters unchanged
encrypted_text += new_char
return encrypted_textStep 3 – Implement Caesar Cipher Decryption :
def caesar_cipher_decrypt(cipher_text, shift):
"""Decrypt Caesar Cipher ciphertext.
Args:
cipher_text (str): ciphertext to decrypt
shift (int): number of positions originally shifted
Returns:
str: original plaintext
"""
decrypted_text = ""
for char in cipher_text:
if char.isalpha():
shift_amount = shift % 26
if char.islower():
new_char = chr(((ord(char) - ord('a') - shift_amount) % 26) + ord('a'))
else:
new_char = chr(((ord(char) - ord('A') - shift_amount) % 26) + ord('A'))
else:
new_char = char
decrypted_text += new_char
return decrypted_textStep 4 – Full Example with Testing :
# Define both functions (see above)
plain_text = "你好,世界!Hello, World!"
shift = 3 # shift by 3 positions
# Encryption
encrypted_text = caesar_cipher_encrypt(plain_text, shift)
print(f"明文: {plain_text}")
print(f"密文: {encrypted_text}")
# Decryption
decrypted_text = caesar_cipher_decrypt(encrypted_text, shift)
print(f"密文: {encrypted_text}")
print(f"解密后的明文: {decrypted_text}")Step 5 – Run the Code : Save the script as caesar_cipher.py and execute python caesar_cipher.py from the command line. Expected output:
明文: 你好,世界!Hello, World!
密文: 你好,世界!Khoor, Zruog!
密文: 你好,世界!Khoor, Zruog!
解密后的明文: 你好,世界!Hello, World!Summary : After completing this practice you should understand how a simple symmetric encryption algorithm works. While Caesar Cipher is educational, real‑world applications use stronger algorithms such as AES for higher security.
Test Development Learning Exchange
Test Development Learning Exchange
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.